问题标题: 酷町堂:暑假问答第十三天

0
0
已解决
包涵宇
包涵宇
中级天翼
中级天翼

啦啦啦!!!

我终于脱贫了!

好了,上问题:

 

5076   输出质因数2

TLE 50分

#include<bits/stdc++.h>
using namespace std;
int n,a[10005],l;
bool b[200000005];
int main(){
	cin>>n;
	b[1]=1;
	for(int i=2;i<=n;i++){
		if(!b[i]){
			for(int j=i*2;j<=n;j+=i){
				b[j]=1;
				if(j==n){
					a[l]=i;
					l++;
				}
			}
		}
	}
	if(b[n]==0)cout<<n;
	else{
		for(int i=0;i<l;i++)cout<<a[i]<<' ';
	}
    return 0;
}

请各位大神修改(我埃氏筛都用上了)

包涵宇在2020-07-23 13:40:45追加了内容

我的代码!

#include<bits/stdc++.h>
using namespace std;
long long n; 
bool p(long long x){
	for(long long i=2;i<=sqrt(x);i++)if(x%i==0)return 0;
	return 1;
}
int main(){
	cin>>n;
	for(long long i=2;i<=n;i++)
		if(n%i==0&&p(i))
			cout<<i<<" ";
    return 0;
}

 


0
已采纳
陈曦
陈曦
资深天翼
资深天翼

我的核心: 

  • for(int i=1;i<=n;i++){
    • if(n%i==0 && sz(i)){
    • cout<<i<<" ";
    • }
  • }
  •  

“sz”函数 就是判断 i 是否为质数

0
0
陈曦
陈曦
资深天翼
资深天翼

还有,你怎么会少豆呢?
我有个 210 豆的问题都采纳你了

0
我要回答