自学内容网 自学内容网

OD 算法题 B卷【正整数到Excel编号之间的转换】

正整数到Excel编号之间的转换

  • excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;
  • 编写一个函数,完成从一个正整数到这种字符串之间的转换;

输入描述:
输入一个正整数
输出描述:
excel的编号字符串

示例1
输入:
1
输出:
a

示例2
输入:
26
输出:
z

示例3
输入:
27
输出:
aa

python实现:

  • 类似于二进制的转换,这里当做是26进制;
  • m每次减1,再对26求模;

m = int(input().strip())
if m > 0:
    result = ""
    while m > 0:
        m -= 1
        result += chr((m % 26) + ord('a'))
        m //= 26

    print(result[::-1])
    

原文地址:https://blog.csdn.net/weixin_45228198/article/details/148513349

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!