作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
想象一个单词的字母表。
例子:
a ==> 1
b ==> 2
c ==> 3
z ==> 26
ab ==> 27
ac ==> 28
az ==> 51
bc ==> 52
and so on.
Input Output
ab 27
ba 0
aez 441
最佳答案
def comb(n,k): #returns combinations
p = 1 #product
for i in range(k):
p *= (n-i)/(i+1)
return p
def solve(string):
x = []
for letter in string:
x.append(ord(letter)-96) #convert string to list of integers
x = list(reversed(x)) #reverse the order of string
#Next, the magic formula
return x[0]+sum(comb(26,i)-comb(26-x[i-1]+1,i)*(1-i/(26-x[i-1]+1)) for i in range(2,len(x)+1))
solve('bhp')
764.0
>>> solve('afkp')
3996.0
>>> solve('abcdefghijklmnopqrstuvwxyz')
67108863.0
>>> solve('hpz')
2090.0
>>> solve('aez')
441.0
>>> if 1:
s = ''
for a in range(97,97+26):
s += chr(a)
t = time.time()
for v in range(1000):
temp = solve(s)
print (time.time()-t)
0.1650087833404541
1
2
3
4
5
6
12 13 14 15 16
23 24 25 26
34 35 36
45 46
56
123 124 125 126
134 135 136
145 146
156
234 235 236
245 246
256
345 346
356
456
234 235 236
245 246
256
12 13 14
23 24
34
关于algorithm - 给定一个单词,打印其索引,单词可以相应增加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17495167/
我在 Java 中遇到异常处理问题,这是我的代码。当我尝试运行此行时出现编译器错误:throw new MojException("Bledne dane");。错误是: exception MojE
我刚刚开始学习asp.net。在你们的支持下,我希望我能从这个论坛学到更多东西。 我的问题是, 我在 asp.net 页面中有一个 TabContainer1,因为每个选项卡面板中有多个类似 (60)
我是一名优秀的程序员,十分优秀!