网址如下:
P1017 [NOIP2000 提高组] 进制转换 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
骚,太骚啦!
搞一个负进制,这就是数学的范围了
依照普通的进制转换求法,找规律便是
代码如下:
#include<stdio.h>
#include<math.h>
const char str[21] = "0123456789ABCDEFGHIJ";
int n, R, len, m[20];
int main(void)
{
scanf("%d%d", &n, &R);
printf("%d=", n);
while(n)
{
m[len++] = (n % R < 0) ? n % R - R : n % R;
if(n % R && n < 0)
n = n / R + 1;
else
n /= R;
}
for(int i = len - 1; i >= 0; i--)
printf("%c", str[m[i]]);
printf("(base%d)", R);
return 0;
}
进制转换的知识又多了一个