|
@@ -0,0 +1,42 @@
|
|
|
+#!/usr/bin/env python
|
|
|
+# -*- coding:utf-8 -*-
|
|
|
+
|
|
|
+
|
|
|
+def find_num(alist, T):
|
|
|
+ mark = {}
|
|
|
+ for v in alist:
|
|
|
+ mark[v] = True
|
|
|
+
|
|
|
+ result = []
|
|
|
+ for v in alist:
|
|
|
+ if not mark[v]:
|
|
|
+ continue
|
|
|
+ if v == T:
|
|
|
+ result.append([v])
|
|
|
+ mark[v] = False
|
|
|
+ continue
|
|
|
+
|
|
|
+ if mark.__contains__(T-v) and mark[T - v]:
|
|
|
+ result.append([v, T - v])
|
|
|
+ mark[v] = False
|
|
|
+ mark[T - v] = False
|
|
|
+
|
|
|
+ return result
|
|
|
+
|
|
|
+
|
|
|
+if __name__ == '__main__':
|
|
|
+ n = 0
|
|
|
+ T = 0
|
|
|
+ while True:
|
|
|
+ print("input T:")
|
|
|
+ T = int(input())
|
|
|
+ print('input data length:')
|
|
|
+ n = int(input())
|
|
|
+ print('input digits: ')
|
|
|
+ alist = []
|
|
|
+ for i in range(0, n):
|
|
|
+ digit = int(input())
|
|
|
+ alist.append(digit)
|
|
|
+
|
|
|
+ result = find_num(alist, T)
|
|
|
+ print(result)
|