소스 검색

Day 20.

master
Chris Smith 8 년 전
부모
커밋
500d7a1280
1개의 변경된 파일11개의 추가작업 그리고 0개의 파일을 삭제
  1. 11
    0
      20.py

+ 11
- 0
20.py 파일 보기

@@ -0,0 +1,11 @@
1
+from itertools import chain
2
+
3
+target = 34000000
4
+
5
+flatten = chain.from_iterable
6
+factors = lambda n: set(flatten((i, n//i) for i in range(1, int(n**0.5)+1) if n % i == 0))
7
+presents1 = lambda n: 10 * sum(x for x in factors(n))
8
+presents2 = lambda n: sum(11 * x for x in factors(n) if n // x <= 50)
9
+
10
+print(next(i for i in range(target) if presents1(i) > target))
11
+print(next(i for i in range(target) if presents2(i) > target))

Loading…
취소
저장