PAT1019
#include <cstdio>
#include <algorithm>
#include <iostream>
#include <string>
using namespace std;
int main()
{
int val;
int base;
cin >> val >> base;
int index = 1;
int arr[100];
while (val != 0)
{
arr[index++] = val%base;
val /= base;
}
int flag = 0;
for (int i = 1; i <= index / 2; i++)
{
if (arr[i] != arr[index - i])
{
cout << "No" << endl;
flag = 1;
break;
}
}
if (flag == 0)
{
cout << "Yes" << endl;
}
for (int i = index - 1; i >= 1; i--)
{
cout << arr[i];
if (i != 1)
cout << " ";
}
if (index == 1)
cout << 0;
return 0;
}
总结:
- while(a!=0) 除余判定条件到0,index比实际多1位,即 12345 index为6
- 当只有1位时输出0(题目没说)