這題就是單純的16進制轉換題,如果同樣的題目,是十進制出題,那是絕對的送分題,以十進制來看,假設收到三個char(a,b,c)需要我們將它組成一個百位數數字,那麼程式作法拆解下來就是total = a - char(0) ,再來是total = total * 10 + b - char(0) ,最後是total = total * 10 + c - char(0) ,數學式子去理解就是total = a * 100 + b * 10 + c,那麼將同樣概念運用在這題就沒問題了。
以下附上完整程式:
d = input().split()
ft,st = 0,0
f,s = d
for i in range(len(f)):
ft = ft * 26 + (ord(f[i]) - ord('A')+1)
for i in range(len(s)):
st = st * 26 + (ord(s[i]) - ord('A')+1)
print(st - ft + 1)
沒有留言:
張貼留言