일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- heap
- Statistics
- Laminar
- python3
- 파이썬
- 통계학
- Blasius
- 회귀
- Compressible Flow
- regression
- Heat Equation
- Turbulent
- Boundary Layers
- Python
- Fluid Dynamics
- 디스크 컨트롤러
- 우선순위큐
- 예제
- Crank-Nicolson
- 프로그래머스
- Navier-Stokes
- FTCS
- 이중우선순위큐
- Fluids
- Finite Difference Method
- 프로젝트오일러
- programmers
- projecteuler
- 유체역학
- 힙
- Today
- Total
Sudal's Garage
Project Euler 29 본문
Question:
Consider all integer combinations of ab for 2 ≤ a ≤ 5 and 2 ≤ b ≤ 5:
22=4, 23=8, 24=16, 25=32
32=9, 33=27, 34=81, 35=243
42=16, 43=64, 44=256, 45=1024
52=25, 53=125, 54=625, 55=3125If they are then placed in numerical order, with any repeats removed, we get the following sequence of 15 distinct terms:
4, 8, 9, 16, 25, 27, 32, 64, 81, 125, 243, 256, 625, 1024, 3125
How many distinct terms are in the sequence generated by ab for 2 ≤ a ≤ 100 and 2 ≤ b ≤ 100?
문제:
2 ≤ a ≤ 5 이고 2 ≤ b ≤ 5 인 a, b에 대하여 ab 의 가능한 모든 조합을 생각해보자.
22=4, 23=8, 24=16, 25=32
32=9, 33=27, 34=81, 35=243
42=16, 43=64, 44=256, 45=1024
52=25, 53=125, 54=625, 55=3125위 모든 수들을 중복을 제거하고 순서대로 나열하면 다음과 같이 서로 다른 15개의 수열이 된다.
4, 8, 9, 16, 25, 27, 32, 64, 81, 125, 243, 256, 625, 1024, 3125
2 ≤ a ≤ 100, 2 ≤ b ≤ 100 인 a, b에 대하여 위와 같이 가능한 ab를 나열한다면 서로 다른 수는 몇 개일까?
Solution:
import time terms = set() start = time.time() for a in range(2,101): for b in range(2,101): terms.add(a**b) print('length = {0}\nFound in ...{1:.5f}s'.format(len(terms),time.time()-start))
set 은 중복을 제거한다.
0.012 초 걸렸다.
'Programming > Project Euler - python' 카테고리의 다른 글
Project Euler 31 (0) | 2019.03.24 |
---|---|
Project Euler 30 (0) | 2019.03.18 |
Project Euler 28 (0) | 2019.03.16 |
Project Euler 26 (0) | 2019.03.16 |
Project Euler 27 (0) | 2019.03.15 |