PS 부수기
Project Euler #17 : 1부터 1000까지 영어로 썼을 때 사용된 글자의 개수는? 본문
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
int main() {
VI a = { -1,3,3,5,4,4,3,5,5,4 }; // one ~ nine
VI b = { -1,3,6,6,8,8,7,7,9,8,8,6 }; // ten ~ twenty
VI c = { -1,3,6,6,5,5,5,7,6,6 }; // ten ~ ninety
int ans = 0; // 1-99
for(int i=1 ; i<=9 ; i++) ans += a[i];
for(int i=10 ; i<=20 ; i++) ans += b[i-9];
for(int i=21 ; i<=99 ; i++) {
ans += c[i / 10];
if (i % 10 != 0) ans += a[i % 10];
}
int ANS = ans;
for(int i=1 ; i<=9 ; i++) {
ANS += 100 * a[i] + 100 * 10 + ans;
ANS -= 3;
}
ANS += 11;
cout << ANS;
}
|
cs |
Forty 스펠 fourty인줄알고 개뻘짓함.
'Project Euler' 카테고리의 다른 글
Project Euler #19 : 20세기에서, 매월 1일이 일요일인 경우는 몇 번? (0) | 2020.08.07 |
---|---|
Project Euler #18 : 삼각형을 따라 내려가면서 합이 최대가 되는 경로 찾기 (0) | 2020.08.07 |
Project Euler #16 : 2^1000의 각 자릿수를 모두 더하면? (0) | 2020.08.07 |
Project Euler #15 : 20×20 격자의 좌상단에서 우하단으로 가는 경로의 수 (0) | 2020.08.07 |
Project Euler #14 : 백만 이하로 시작하는 우박수 중 가장 긴 과정을 거치는 것은? (0) | 2020.08.07 |
Comments