Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2419768
  • 博文数量: 392
  • 博客积分: 7040
  • 博客等级: 少将
  • 技术积分: 4138
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-17 13:03
个人简介

范德萨发而为

文章分类

全部博文(392)

文章存档

2017年(5)

2016年(19)

2015年(34)

2014年(14)

2013年(47)

2012年(40)

2011年(51)

2010年(137)

2009年(45)

分类:

2010-05-06 22:14:42

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");
    }
}


阅读(1064) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~