题解分享
题解分享简介
质数判断 - 题解
```
#include
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
ll n;
ll flag;
ll c;
cin>>n;
if(n==1)
cout<<1;
if(n==3)//n=3时循环读取不到,因为i从2开始,n至少为4,所以进行特判
cout<<"YES";
for(ll i=2;i<=sqrt(n);i++)
{
if(n%i==0)
{
flag=0;
c=i;
break;
}
else
flag=1;
}
if(flag==1)
cout<<"YES";
if(flag==0)
cout<<n/c;
return 0;
}
```
查看全文
0
0
1
2
质数判断 - 题解
```cpp
// https://dashoj.com/p/98
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n, ans = -1;
int main() {
cin >> n;
for (ll i = 2; i * i <= n; i++) if (n % i == 0) ans = max(ans, max(i, n / i));
if (ans == -1) cout << "YES" << endl;
else cout << ans << endl;
return 0;
}
```
查看全文
0
0
0
2
质数判断 - 题解
```
/*
思路:
思路一:1. 判断是否是质数
*/
#include <bits/stdc++.h>
using namespace std;
int function_find(int n) {
if ( n == 1 ) {
cout << 1 << endl;
return 1;
}
for ( int i = 2; i <= sqrt(n)+1; i++ )//循环判断是否是质数 (1 >> 根号n)
if ( n % i == 0 ) {
cout << (n/i) << endl;
return 1;
}
cout << "YES" << endl;
return 1;
}
int main()
{
int n;
cin >> n;
function_find(n);
return 0;
}
```
查看全文
0
0
0
1
质数判断 - 题解
include
include
bool isPrime(int n) {
if (n
factor) {
factor = n / i;
}
}
return factor;
}
int main() {
int n;
std::cin >> n;
```
if (isPrime(n)) {
std::cout << "YES" << std::endl;
} else {
int secondLargest = secondLargestFactor(n);
std::cout << secondLargest << std::endl;
}
return 0;
```
}
查看全文
0
0
0
1



