美文网首页
codeforces-1B Spreadsheets

codeforces-1B Spreadsheets

作者: Infinite_eyes | 来源:发表于2017-02-09 16:24 被阅读14次
    题意:有两种电子表格计数系统:
                  1、列为A-Z字母计数,行为数字计数。
                  2、RXCY 形式
            判断输入格式,并进行相互转化
    难点:输入计数系统的判断
    思路:通过sscanf函数限定输入格式,我们可以快速判别输入计数系统,进行相应转化
    
    #include "stdio.h"
    void PrintColumn(int y){
        //列数为0,除尽
        if(y){
            //递归打印  
            PrintColumn((y-1)/26);
            putchar(65+(y-1)%26);
        }
    }
    
    int main()
    {
        /* code */
        int n,x,y;
        char s[64],*p;
        scanf("%d ",&n);
        while(n--){
            gets(s);
            if(sscanf(s,"%*c%d%*c%d",&x,&y)==2)
            {
                    //为RXCY计数系统
                    //打印字母列
                    PrintColumn(y);
                    //打印数字行
                    printf("%d\n",x);
            }
            else{
                    //  C    R
                    // 字母  数字 计数系统
                    for(x=0,p=s;*p>64;++p)
                        //列字母转化成数字
                        x=x*26 + *p - 64;
                    
                    printf("R%sC%d\n",p,x);
                }   
        }
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:codeforces-1B Spreadsheets

          本文链接:https://www.haomeiwen.com/subject/hwdemttx.html