@[Yemengying](/user/1028452) 您这 $O(n^2)$ 做法肯定是过不了的。
by ljlbj_fengyuwuzu @ 2023-07-19 13:40:27
@[Yemengying](/user/1028452) 这题不需要判断是否是质数,也不需要开long long,直接for循环找到一个因数再通过除法得到另一个因数就行了
by _LX_ @ 2023-07-19 13:40:57
addd
by ljlbj_fengyuwuzu @ 2023-07-19 13:41:24
注意原题里的这一句话:
已知正整数 $n$ 是两个不同的质数的乘积
by ljlbj_fengyuwuzu @ 2023-07-19 13:42:19
@[_LX_](/user/590386) 我在判断质数那整了个sqrt过了()
by Yemengying @ 2023-07-19 13:42:29
@[Yemengying](/user/1028452)
不用再判断这两个数是否是质数,因为由题目可证两个数一定都是质数,代码就这么短
```cpp
#include<bits/stdc++.h>
using namespace std;
int n;
int main()
{
cin>>n;int a=sqrt(n)+1;
for(int i=2;i<a;i++)
if(n%i==0)return cout<<n/i,0;
}
```
by wangchuanle @ 2023-07-19 13:42:41
@[ljlbj_fengyuwuzu](/user/921114) 但是题目没说只为两个质数的乘积吧(可能是我想多了)
by Yemengying @ 2023-07-19 13:42:59
@[Yemengying](/user/1028452) 还是数据水,不然过不了的
by ljlbj_fengyuwuzu @ 2023-07-19 13:44:21
@[Yemengying](/user/1028452) 是说了的
>是两个不同的质数的乘积
by _LX_ @ 2023-07-19 13:45:58
@[wangchuanle](/user/999799) 非常感谢你
by H_com_2012 @ 2023-07-19 17:44:56