Description
xiaoming最近失眠,因为他的心里总是想着某一位女生,所以他决定数羊,毕竟是搞算法出来的人,所以他数羊的方式也很特别:1号羊A,2号羊B.....,26号羊Z,27号羊AA,28号
羊AB....702号羊ZZ,703号羊AAA,
123136851羊JIKYBS。数着数着他就睡着了,但是在梦里,他看到了她所想念的那个女生,正当xiaoming沉浸在幸福中的时候,让人意外的
事情发生了,女孩说:你数了那么多羊,你到底记不记得第XX号羊叫什么?面对这一个考验,小明惊醒了,他要赶快解决这一个问题,然后再次进入梦乡。
Input
多组数据输入。
每一组数据只有一个正整数n(n<=10^9)
Output
对于n号羊,请输出它的命名。Sample Input
4
28
Sample Output
D
AB
注意从1开始计数 1-->A,这和0-->A有区别,在每次%26之前需要对被除数减一
#include <cstdio>
using namespace std;
int main(int argc, char *argv[])
{
int n, m, i;
char str[100];
while (EOF != scanf("%d", &n))
{
i = 0;
while (n != 0)
{
if (n < 26)
{
str[i++] = n + 'A' -1;
break;
}
/*注意这里要减一*/
n--;
m = n % 26;
str[i++] = m + 'A';
n = n / 26;
}
for (i-- ; i>=0 ; i--)
{
printf("%c", str[i]);
}
printf("\n");
}
}
|
阅读(1104) | 评论(0) | 转发(0) |