由买买提看人间百态

topics

全部话题 - 话题: a1b2c3d4e5
(共0页)
r**o
发帖数: 4614
1
来自主题: JobHunting版 - 请教两道赛马题。
题A
等车的时候想了下,可能有错,就当抛砖引玉了
一共ABCDE5个组
假设排名是A1B2C3D4E5
然后选组内排名的A(2)A(3)B(1)B(2)C(1)跑
最坏情况排名是B(1)C(1)。。。。就是每次最少选出2名
下一次最差就选A(2)A(3)B(2)D(1)E(1)跑, 也是选出2名
最多3次
题B
其实是一样的,每次跑最快的组出(7-1)/2 = 3, 前3名
那就是A(2)A(3)A(4)B(1)B(2)B(3)C(1)跑, 每次最少选出2名
下一次最差就是A(2)A(3)A(4)B(2)B(3)D(1)E(1), 每次最少选出2名
。。。。
最多4次。
p*****y
发帖数: 1386
2
来自主题: JobHunting版 - 请教两道赛马题。
这个“假设排名是A1B2C3D4E5”是什么意思啊?每个组里5匹马,这个排名是组里第几
名的排名呢?
而且每个组各自赛一次就是5次了,我估摸着再怎么也得跑个8次吧,暂时还没有什么系
统一点的想法。。。
r**o
发帖数: 4614
3
来自主题: JobHunting版 - 请教两道赛马题。
写得太快了
详细点哈
先是每个组赛1场, 1共赛5场
然后赛1场每个组的第一名, 假设跑的最快的依次是ABCDE, 就这就是A1B2C3D4E5的意
思啊
前面写的就是从这里开是
我们先选前3名, 第一名已经知道了,是A(1), 那么有可能第2,3名的话就是A(2
)A(3)和B(1)B(2)C(1),然后他们赛一下, 就知道了前3名。
下面就是排列组合了
1. A(2)A(3)B(1)B(2)C(1), 这种情况我们下面就用A(4)A(5)B(2)B(
3)C(1)来赛。 B(2)是排除A组跑的最快的。
2. A(2)A(3)B(1)C(1)B(2), 下一次就是A(4)A(5)B(1)C(2)B(2)
3. A(2)B(1)A(3)B(2)C(1), 下一次就是A(3)A(4)B(2)B(3)C(1)
。。。
B(1)A(2)A(3)B(2)C(1), 这种情况下一次就是A(4)B(3)C(1)D(1)E(1)
...
可以都排出一下得出下一轮的排序
overall 6+1+1是8次。 3次是那开始5轮算好的次数, sorry
m**q
发帖数: 189
4
来自主题: JobHunting版 - 问个amazon面试题
这个貌似不是O(n)啊
只有在原数组中的数字是有规律的时候,才能保证O(n).
例如原数组为 abcde12345 需要变成a1b2c3d4e5
这时候可以简单的判断数组中的元素是否已经被换到了
它的最终位置。如果没有这个前提的话是这个方法无法保证O(n).
p**o
发帖数: 3409
5
来自主题: Programming版 - 看C码工写Python真是捉急
>>> from string import ascii_letters
>>> from operator import contains
>>> from functools import partial
>>> strip_nonascii = partial(filter,partial(contains,ascii_letters))
>>> strip_nonascii('a1b2c3d4e5')
'abcde'
这样写够"pythonic"不?lol
你管人家写成怎样,能work就行
(共0页)