6 条题解
-
1
#include<stdio.h> void convert(int x,int n){ if(x==0) return; convert(x/n,n); printf("%d",x%n); } int main(){ int x,n; scanf("%d%d",&x,&n); if(x==0) printf("0"); else convert(x, n); printf("\n"); while(x>1&&x%n==0){ x /= n; } if(x == 1) printf("yes"); else printf("no"); return 0; }
-
0
#include <stdio.h> void fun1(int n,int m,int a[32],int i); void fun2(int n,int m); int main() { int n,m,a[32],i=0; scanf("%d%d", &n,&m); fun1(n,m,a,i); fun2(n,m); return 0; }
void fun1(int n,int m,int a[32],int i) { while (n > 0) { a[i] = n % m; n = n / m; i++; } for (int j = i - 1; j >= 0; j--) { printf("%d", a[j]); }
}
void fun2(int n,int m) { printf("\n"); int x=n; while(x!=1) { if(x%m!=0) break; x=x/m; } if(x==1) printf("yes"); else printf("no");
}
-
0
//升级版。能转化成任意进制,只要在a里添加映射的元素即可 #include <stdio.h> char a[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; void convert(int x,int n){ if(x==0) return; convert(x/n,n); printf("%c",a[x%n]); } int main(){ int x,n; scanf("%d%d",&x,&n); if(x==0) printf("0"); else convert(x, n); printf("\n"); while(x>1&&x%n==0){ x /= n; } if(x == 1) printf("yes"); else printf("no"); return 0; }
-
0
/站在巨人肩膀上的最优代码/ #include<stdio.h> void convert(int x,int n) { if(x0) return; convert(x/n,n); printf("%d",x%n); } int main() { int x,n; scanf("%d%d",&x,&n); if(x0) printf("0"); else convert(x, n); printf("\n"); while(x>1&&x%n==0) { x /= n; } if(x == 1) printf("yes"); else printf("no"); return 0; }
-
0
#include<stdio.h> int main() { int x,n,m=0,sum=0,num=0; int a[10000]; scanf("%d%d",&x,&n); num=x; for(int i=0;x>0;i++) { m=x%n; x=x/n; a[i]=m; sum++; } for(int j=sum-1;j>=0;j--) { printf("%d",a[j]); } printf("\n"); int z=0,v=0; while(num>n) { z=num%n; num=num/n; v+=z; } if(v==0) printf("yes\n"); else printf("no"); return 0; }
-
0
#include <stdio.h> // 将十进制整数 x 转换为 n 进制 void convertToBase(int x, int n) { int xBase[100], i = 0; while (x > 0) { xBase[i] = x % n; x /= n; i++; } for (int j = i - 1; j >= 0; j--) { printf("%d", xBase[j]); } printf("\n"); } // 判断 x 是否为 n 的幂次方 void isPowerOfN(int x, int n) { if (x == 1) { printf("yes\n"); return; } for (int i = 2; i * i <= x; i++) { int power = i; while (power <= x) { power *= i; if (power == x) { printf("yes\n"); return; } } } printf("no\n"); } int main() { int x, n; scanf("%d %d", &x, &n); // 转换为 n 进制 convertToBase(x, n); // 判断是否为 n 的幂次方 isPowerOfN(x, n); return 0; }
- 1
信息
- ID
- 960
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 5
- 标签
- 递交数
- 145
- 已通过
- 53
- 上传者