为啥甲级的简单题都会有几个让我很迷茫的卡点,,
首先是注意输入0时输出 Yes 0
然后就是不知道为什么会卡的点
正确代码写的确实很正确也很简单
但是按照我的来写,如果错应该也是超时的错啊,,为什么会是答案错误
两段代码的意思是一样的呀,,
还是要多多学习吧,,可能,,
#include <cstdio>
#include <iostream>
using namespace std;
int n, b;
int arr[1000];
int main(){
scanf("%d%d", &n, &b);
int l=0;
int key=1;
while(n!=0){
arr[l] = n % b;
n = n / b;
l++;
}
/*for(int i=0; i <l/2; i++){ //这样写会有一个点不过,,
if(arr[i]==arr[l-i-1]) key = 1;
else key = 0;
}
if(key == 1) printf("Yes\n");
if(key == 0) printf("No\n");
*/
for(int i=0; i<l/2; i++){
if(arr[i] != arr[l-i-1]) {
printf("No\n");
key = 0;
break;
}
}
if(key == 1) printf("Yes\n");
for(int i=l-1; i>=0; i--){
if(i == l-1) printf("%d",arr[i]);
else printf(" %d",arr[i]);
}
if(l==0) {
printf("0");
}
return 0;
}
偷懒三天了,,时间其实还挺紧的,,,
不行,,不行,,