hjb13357896690 @ 2024-09-04 21:16:04
#include <bits/stdc++.h>
#define ll long long
using namespace std;
bool pss(int n)
{
//特判可不写
for(int i=2;i<=sqrt(n);i++)
{
if(n%i==0)
{
return 0;
}
}
return 1;
}
int fj(int n)//分解,看看是不是质因数,如果是,则算出另一个,再打擂
{
for(int i=2;i<=;i++)//咋写
{
}
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
int n;
cin>>n;
return 0;
}
by _Supernova @ 2024-09-04 21:18:58
没必要这么麻烦,找一下性质。
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int n;
int main(void) {
cin >> n;
for (int i = 2; i <= n; ++i) {
if (n % i == 0) {
printf("%d", n / i);
return 0;
}
}
return 0;
}
by _Supernova @ 2024-09-04 21:20:11
看似
by yxj725 @ 2024-09-04 21:27:01
#include<bits/stdc++.h>
using namespace std;
int main (){
int a,ans;
cin>>a;
for (int i=2;i<a;i++) {
if (a%i==0) {
ans=a/i;
cout<<ans<<endl;
break;
}
}
return 0;
}
其实很简单。首先你需要知道一个叫处一之外n的最小因数都是质数的东东,然后整个题就 so easy 了
by yxj725 @ 2024-09-04 21:27:28
@hjb13357896690 求关QWQ
by yxj725 @ 2024-09-04 21:30:19
#include<bits/stdc++.h>
using namespace std;
int main (){
int a,ans;
cin>>a;
for (int i=2;i<=sqrt(a);i++) {
if (a%i==0) {
ans=a/i;
cout<<ans<<endl;
return 0;
}
}
return 0;
}
这样也可,感觉会更快QWQ
by huangzicheng114514 @ 2024-09-04 21:39:37
@hjb13357896690 没那么复杂。 算出较小因数(蛮力枚举就行,能过),再用n除以它;
while(1){
if(a%b==0){cout<<a/b;
break;}
else b++;//TODO
}//
a=n,b是循环判断用的。
by huangzicheng114514 @ 2024-09-04 21:40:24
@hjb13357896690 没那么复杂。 算出较小因数(蛮力枚举就行,能过),再用n除以它; while(1){
if(a%b==0){cout<<a/b;
break;}
else b++;//TODO
}// a=n,b是循环判断用的。
by huangzicheng114514 @ 2024-09-04 21:40:58
求关QWQ
by huangzicheng114514 @ 2024-09-04 21:43:19
@hjb13357896690 其实有两道一样的题; 另一道: https://www.luogu.com.cn/problem/P1075
by hjb13357896690 @ 2024-09-05 18:13:03
@yxj725 已关,再求关