1 条题解
-
0
C :
#include<stdio.h> #include<ctype.h> int main() { char str[128]; int N,r,i,j; for(scanf("%d",&N);N--;) { scanf("%s",str); for(i=r=0;str[i];i++) if (isdigit(str[i])) r=r*10+str[i]-'0'; if (!r) j=0; else if (r==1) j=1; else { for(i=2;(long)i*i<=r;i++) if (r%i==0) { j=i; while(r%i==0) r/=i; } if (r>1) j=r; } printf("%d\n",j); } return 0; }C++ :
#include<stdio.h> #include<ctype.h> int main() { char str[128]; int N,r,i,j; for(scanf("%d",&N);N--;) { scanf("%s",str); for(i=r=0;str[i];i++) if (isdigit(str[i])) r=r*10+str[i]-'0'; if (!r) j=0; else if (r==1) j=1; else { for(i=2;(long long)i*i<=r;i++) if (r%i==0) { j=i; while(r%i==0) r/=i; } if (r>1) j=r; } printf("%d\n",j); } return 0; }
- 1
信息
- ID
- 550
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者