首页 > 其他 > 详细

NYOJ303 序号互换

时间:2014-02-19 15:41:30      阅读:337      评论:0      收藏:0      [点我收藏+]

原题链接


附ac代码:

#include <stdio.h>
#include <ctype.h>
#include <string.h>

int main(){
	char s[15];
	int t, len, i, sum;
	scanf("%d", &t);
	while(t-- && scanf("%s", s)){		
		if(isalpha(s[0])){
			len = strlen(s);
			for(i = sum = 0; i != len; ++i)
				sum = sum * 26 + (s[i] - ‘A‘ + 1);
			printf("%d\n", sum);
		}else{
			sscanf(s, "%d", &sum);
			for(i = 0; sum; ++i){
				s[i] = (sum - 1) % 26 + ‘A‘;
				sum = (sum  - 1) / 26; //关键
			}
			for(--i; i >= 0; --i)
				putchar(s[i]);
			putchar(‘\n‘);
		}
	}
	return 0;
}


NYOJ303 序号互换

原文:http://blog.csdn.net/chang_mu/article/details/19421625

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!