专栏文章

题解:P1075 [NOIP2012 普及组] 质因数分解

P1075题解参与者 8已保存评论 8

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
8 条
当前快照
1 份
快照标识符
@miqjbxrp
此快照首次捕获于
2025/12/04 05:44
3 个月前
此快照最后确认于
2025/12/04 05:44
3 个月前
查看原文

题目思路

由于 nn 的范围很大,我们不能通过直接枚举找到答案,如何解决呢?
我们从小到大寻找第一个 nn 的因数,即 nn 的最小因数,此时输出 nn 除以这个数即为另一个较大的质数。

代码

注:本代码仅供参考。
CPP
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
	int n;
	scanf("%d",&n);
	for(int i=2;i<=n;i++){
		if(n%i==0){ //如果 n%i==0,说明找到了 n 的因数,直接输出 n/i,退出循环。 
			printf("%d",n/i); 
			return 0;
		}
	}
	return 0;
} 

后记

更多内容,请移步至 ryf2011\color{red}\texttt{ryf2011}

评论

8 条评论,欢迎与作者交流。

正在加载评论...