
题目:
用python写一个程序,找出数组中差值为K的数共有几对
示例:
差值k=4 and 数组是[7, 6, 23,19,10,11, 9, 3, 15]
这样的结果是(7,11) (7,3) (6,10) (19,23) (15,19) (15,11) 共6对
代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
#!/usr/bin/env python3 # -*- coding: utf-8 -*- def diff_of_element_list(lst, k): newlst = [i + k for i in lst] print(lst) print(newlst) print(set(lst)&set(newlst)) return len(set(lst)&set(newlst)) if __name__ == '__main__': lst = [7, 6, 23, 19, 11] k = 4 print(diff_of_element_list(lst, k)) lst = [2, 4, 5, 1, 6, 8, 10, 11] k = 2 print(diff_of_element_list(lst, k))
|
运行结果:
1 2 3 4 5 6 7 8
|
[7, 6, 23, 19, 11] [11, 10, 27, 23, 15] {11, 23} 2 [2, 4, 5, 1, 6, 8, 10, 11] [4, 6, 7, 3, 8, 10, 12, 13] {8, 10, 4, 6} 4
|
转自:
http://www.oschina.net/code/snippet_1448389_53414
近期评论