Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- backpropagation
- 역전파
- SQL
- project euler
- 수달
- Autoencoder
- Gram matrix
- 비샤몬당
- A Neural Algorithm of Artistic Style
- 딥러닝
- bayesian
- Convolutional Neural Network
- mnist
- Python
- 합성곱 신경망
- deep learning
- 전처리
- 냥코 센세
- 오일러 프로젝트
- 역전파법
- 신경망
- CNN
- 히토요시
- 소수
- 베이지안
- 자전거 여행
- neural network
- 오토인코더
- c#
- 소인수분해
Archives
- Today
- Total
통계, IT, AI
17. Number letter counts 본문
1. 개요
문제는 이곳에서 확인할 수 있다. 1부터 1000까지 영어로 세고 각 알파벳의 수를 더하면 된다. 몇가지 예외만 고려하면 쉽게 해결할 수 있다.
2. Ver 1.0
# -*- coding: utf-8 -*-
data = dict()
data[0] = ""
data[1] = "ONE"
data[2] = "TWO"
data[3] = "THREE"
data[4] = "FOUR"
data[5] = "FIVE"
data[6] = "SIX"
data[7] = "SEVEN"
data[8] = "EIGHT"
data[9] = "NINE"
data[10] = "TEN"
data[11] = "ELEVEN"
data[12] = "TWELVE"
data[13] = "THIRTEEN"
data[14] = "FOURTEEN"
data[15] = "FIFTEEN"
data[16] = "SIXTEEN"
data[17] = "SEVENTEEN"
data[18] = "EIGHTEEN"
data[19] = "NINETEEN"
data[20] = "TWENTY"
data[30] = "THIRTY"
data[40] = "FOURTY"
data[50] = "FIFTY"
data[60] = "SIXTY"
data[70] = "SEVENTY"
data[80] = "EIGHTY"
data[90] = "NINETY"
data[100] = "HUNDRED"
cnt = 0
for n in range(1,1000):
digit_1, digit_2 = divmod(n, 100)
digit_2, digit_3 = divmod(digit_2, 10)
str_1 = ""
str_2 = ""
# 100의 자리 처리
if digit_1 != 0:
str_1 = data[digit_1] + data[100]
# 10의 자리 및 1의 자리 처리
if digit_2 == 1:
str_2 = data[digit_2*10+digit_3]
else:
str_2 = data[digit_2*10] + data[digit_3]
# ex) 101 -> ONE HUNDRED AND ONE
if digit_1 != 0 and not (digit_2 == 0 and digit_3 == 0):
str_1 += "AND"
cnt += len(str_1 + str_2)
cnt += len("ONETHOUSAND")
print(cnt)
답은 21124이다.
'IT > PROJECT_EULER' 카테고리의 다른 글
| 19. Counting Sundays, 20. Factorial digit sum (0) | 2017.01.18 |
|---|---|
| 18. Maximum path sum I (0) | 2017.01.15 |
| 15. Lattice paths, 16. Power digit sum (0) | 2017.01.12 |
| 14. Longest Collatz sequence (0) | 2017.01.11 |
| 13. Large sum (0) | 2017.01.08 |
Comments