
https://www.luogu.com.cn/problem/P1075
看题目是两个质数的乘积
如果从 n-1 枚举到 2会超时。 因为是成对出现的所以找到小的 n/小的 就找到了
#include<cstring>
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<set>
#include<cmath>
using namespace std;
int main(void)
{
long long int n; cin>>n;
long long int i;
for(i=2;i<n;i++)
{
if(n%i==0)
{
break;
}
}
cout<<n/i<<endl;
return 0;
}
该程序旨在解决一个数学问题,即找出给定正整数n的最小质因数。代码通过从2开始遍历到n-1,判断每个数是否能整除n,一旦找到即为最小质因数。为了避免超时,采用了从2开始的顺序检查,因为质数成对出现的特性,找到小的那个就意味着找到了这对质数的乘积的一个因子。
1157

被折叠的 条评论
为什么被折叠?



