1 条题解
-
0
C :
#include<stdio.h> #include<math.h> int main() { int n,i,j,a; double k; while(~scanf("%d",&n)) { a=0; for(i=2;i<=n;i++) { k=sqrt(i); for(j=2;j<=k;j++) { if(i%j==0) { break; } } if(j>k) { printf("%d",i); a++; if(a%5==0) printf("\n"); else printf(" "); } } printf("\n"); } return 0; }
C++ :
// // main.cpp // 上机练习 // // Created by 朱世起 朱 on 2017/2/20. // Copyright © 2017年 朱世起 朱. All rights reserved. // #include <iostream> #include <stdio.h> #include <string> using namespace std; int main(){ long n,temp; cin>>n; bool *a=new bool[n+1]; for (long i=2; i<=n; ++i) { a[i]=true; } for (long i=2; i<=n+1; ++i) { for (long k=2; k<=i; ++k) { temp=i*k; if(temp<=n)a[temp]=false; else break; } } //输出 long set=1; for (long j=2 ;j<=n; ++j) { if (set==6){cout<<endl;set=1;} if (set==1 && a[j]==true){cout<<j;++set;} else if(a[j]==true){cout<<" "<<j;++set;} } return 0; }
Python :
# coding=utf-8 import sys def main(): a = list() k = 0 n = int(sys.stdin.readline().strip()) for i in range(2, n+1): j =2 for j in range(2, int(i ** 0.5)+1):#**代表乘方 if (i % j == 0): break else: a.append(i) for index,num in enumerate(a): if(index+1)%5 == 0: print(num) else: print(num,end='\t') if __name__ == '__main__': main()
- 1
信息
- ID
- 2662
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者