codeforces-1B Spreadsheets

题意:有两种电子表格计数系统:
              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;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容