哎,做完了习题之后感觉:简直不能再惨烈了,今晚是一个复杂的晚上,阿里的题目堪称变态的,说实在我连读都读不懂,更不要说做出来了,第一题是信号灯问题,读了以后感觉没有思路,时间只剩下了30分钟,我只好看第二道题目了,第二道题目是菜鸟仓库的货架格子编号问题,这个读完之后感觉还是有思路的试着做一下,居然结果自己设置的样例都通过了,由于时间不够没有来得及提交最终的结果也就不知道到底对不对了,这里简单贴一下自己的实现思路,很简单,没有什么技巧可言,如果有AC的朋友还希望能够指点一下,哎,今晚算是跪了,还有,京东和阿里同一个时间段在考试,我这真是左右为难,眼睛都快废了,好了不说这些了,下面是我的暴力解法,莫笑...
#!usr/bin/env python
#encoding:utf-8
'''
__Author__:沂水寒城
功能:阿里笔试题目2
'''
import math
def test():
'''
主函数
'''
k=int(raw_input())
n=10000
matrix=[]
for i in range(1,n):
one_list=range(1,i+1)
need=n-len(one_list)
one_list+=[0]*need
matrix.append(one_list)
tmp=int(math.sqrt(2*k)-1)
res=math.trunc(tmp)
total=res*(res+1)/2
num=k-total
row=int(tmp+1)
col=int(num-1)
print matrix[row][col]
if __name__ == '__main__':
test()
结果如下:
14
4
21
6
13
3