PS 부수기
Project Euler #24 : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9로 만들 수 있는 1,000,000번째 사전식 순열은? 본문
Project Euler
Project Euler #24 : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9로 만들 수 있는 1,000,000번째 사전식 순열은?
jyheo98 2020. 8. 7. 14:15
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
32
33
|
int main() {
VI fact;
fact.push_back(1);
llong mul = 1;
for (int i = 1; i <= 10; i++) {
mul *= i;
fact.push_back(mul);
}
int NUM = 1000000;
vector<bool> vis(10);
int curFact = 9;
while (1) {
int cnt = 0;
while (1) {
if (NUM > fact[curFact]) {
NUM -= fact[curFact];
cnt++;
}
else {
break;
}
}
rep(i, 0, 10) {
if (vis[i] == 0 && cnt == 0) {
cout << i;
vis[i] = 1;
break;
}
else if (vis[i] == 0) cnt--;
}
curFact--;
}
}
|
cs |
이런 문제 어려워
'Project Euler' 카테고리의 다른 글
Project Euler #26 Reciprocal cycles (0) | 2020.08.08 |
---|---|
Project Euler #25 : 피보나치 수열에서 처음으로 1000자리가 되는 항은 몇 번째? (0) | 2020.08.07 |
Project Euler #23 : 두 초과수의 합으로 나타낼 수 없는 모든 양의 정수의 합은? (0) | 2020.08.07 |
Project Euler #22 : 영문 이름 점수 합계 구하기 (0) | 2020.08.07 |
Project Euler #21 : 10000 이하 모든 친화수(우애수)의 합은? (0) | 2020.08.07 |
Comments