题意
思路
直接暴力即可。
- 先从小到大找到最小的质因子,记为ans。(只用循环到 n \sqrt{n} n,因为较小的那个质数的范围是 [ 2 , n ] [2,\sqrt{n}] [2,n])
- 之后n/ans就是较大的质因子了。
AC
# include <iostream>
# include <cstdio>
using namespace std;
int main(){
int n;
scanf("%d", &n);
int ans =0;
for(int i = 2; i <=n/i; i++ ){
if(n%i==0){
ans = i;
break;
}
}
printf("%d\n", n/ans);
}