def solution(x: str, y: str) -> str:
#ascii a-z:97-122 A-Z:65-90
"""
遍历字符串中的字符
判断字符是否大写
大写64-ord(i)
小写96-ord(i)
求和,比较
"""
xa,ya = 0,0
for i in x:
if i.isupper():
xa += 64 - ord(i)
else:
xa += (96 - ord(i))/2
for i in y:
if i.isupper():
ya += 64 - ord(i)
else:
ya += (96 - ord(i)) / 2
return y if xa > ya else (x if xa < ya else "Tie!")
assert solution("One", "Two") == "Two"
assert solution("One", "Neo") == "One"
assert solution("ONE", "NEO") == "Tie!"
def solution(x: str, y: str) -> str:
dic = {chr(i + 65): i + 1 for i in range(26)}
for i in range(26):
dic[chr(i + 97)] = (i + 1) / 2
sum_x = sum([dic[x[i]] for i in range(len(x))])
sum_y = sum([dic[y[i]] for i in range(len(y))])
if sum_x > sum_y:
return x
elif sum_x < sum_y:
return y
else:
return "Tie!"
assert solution("One", "Two") == "Two"
assert solution("One", "Neo") == "One"
assert solution("ONE", "NEO") == "Tie!"