题目大意描述
输入一个十进制的数,转化成x进制下的17,输出x
解题思路
设输入的值是n,x是n=17时的进制数,则n=1*x+7,但这里有一个点容易忽略,就是x的取值范围,也就是在x进制下可以存在7,如二进制就不可能在第一位是7,故这里x一定要大于7,由于n=1*x+7
所以n>14
AC代码
#include <iostream>
using namespace std;
int main()
{
int n, x, t;
scanf("%d", &t);
while (t--)
{
scanf("%d", &n);
if (n <= 14)
printf("-1\n");
else
{
printf("%d\n", n - 7);
}
}
return 0;
}
这题看起来有一点难,实则不难,多多积累,一眼就会