1 条题解
-
0
C :
#include<stdio.h> #include<math.h> int main() { int i,m,n,a,k,fj,sj,js=0,j; scanf("%d%d",&m,&n); for(i=m;i<=n;i++) { a=i;k=2; while(a!=1) { fj=0; if(a%(k*k)==0) while(a%k==0) a=a/k; else k++; if(k>sqrt(a)&&a!=1) {fj=1;break;} } a=i+1;k=2; if(fj==0) { while(a!=1) { sj=0; if(a%(k*k)==0) while(a%k==0) a=a/k; else k++; if(k>sqrt(a)&&a!=1) {sj=1;break;} } } if(sj==0) { printf("%d %d\n",i,i+1);js++; } } if(js==0) printf("no find"); return 0; }C++ :
#include <iostream> #include <cstdio> using namespace std; bool f(int x) { while (x != 1) { int t = x; for (int i = 2; i <= x/i; i ++) { int cnt = 0; while (x%i==0) { x /= i; cnt ++; } if (cnt == 1) return false; if (cnt > 1) break; } if (x == t) return false; } return true; } int main() { int m, n; cin >> m >> n; bool flag = true; for (int i = m; i < n; i ++) { if (f(i) && f(i+1)) { cout << i << ' ' << i + 1 << endl; flag = false; } } if (flag) cout << "no find" << endl; return 0; }
- 1
信息
- ID
- 1184
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者