λ¬Έμ
μ ν λλ²λ 1949λ μΈλ μνμ D.R. Kaprekarκ° μ΄λ¦ λΆμλ€. μμ μ μ nμ λν΄μ d(n)μ nκ³Ό nμ κ° μ리μλ₯Ό λνλ ν¨μλΌκ³ μ μνμ. μλ₯Ό λ€μ΄, d(75) = 75+7+5 = 87μ΄λ€.
μμ μ μ nμ΄ μ£Όμ΄μ‘μ λ, μ΄ μλ₯Ό μμν΄μ n, d(n), d(d(n)), d(d(d(n))), ...κ³Ό κ°μ 무ν μμ΄μ λ§λ€ μ μλ€.
μλ₯Ό λ€μ΄, 33μΌλ‘ μμνλ€λ©΄ λ€μ μλ 33 + 3 + 3 = 39μ΄κ³ , κ·Έ λ€μ μλ 39 + 3 + 9 = 51, λ€μ μλ 51 + 5 + 1 = 57μ΄λ€. μ΄λ°μμΌλ‘ λ€μκ³Ό κ°μ μμ΄μ λ§λ€ μ μλ€.
33, 39, 51, 57, 69, 84, 96, 111, 114, 120, 123, 129, 141, ...
nμ d(n)μ μμ±μλΌκ³ νλ€. μμ μμ΄μμ 33μ 39μ μμ±μμ΄κ³ , 39λ 51μ μμ±μ, 51μ 57μ μμ±μμ΄λ€. μμ±μκ° ν κ°λ³΄λ€ λ§μ κ²½μ°λ μλ€. μλ₯Ό λ€μ΄, 101μ μμ±μκ° 2κ°(91κ³Ό 100) μλ€.
μμ±μκ° μλ μ«μλ₯Ό μ ν λλ²λΌκ³ νλ€. 100λ³΄λ€ μμ μ ν λλ²λ μ΄ 13κ°κ° μλ€. 1, 3, 5, 7, 9, 20, 31, 42, 53, 64, 75, 86, 97
10000λ³΄λ€ μκ±°λ κ°μ μ ν λλ²λ₯Ό ν μ€μ νλμ© μΆλ ₯νλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
μ λ ₯μ μλ€.
μΆλ ₯
10,000λ³΄λ€ μκ±°λ κ°μ μ ν λλ²λ₯Ό ν μ€μ νλμ© μ¦κ°νλ μμλ‘ μΆλ ₯νλ€.
νμ΄
μ¬μ€ μ self number κ°λ μ΄ μ΄ν΄κ° μ μλΌμ λ¬Έμ νΈλλ° μκ°μ΄ μ’ κ±Έλ Έλ€.
01. self numberμ κ° μ리μ + self numberλ₯Ό κ³μ°
02. ν΄λΉ μκ° 10000λ³΄λ€ μμΌλ©΄ μμ±μκ° μ‘΄μ¬νλ€λ λ»μ΄λ―λ‘ trueλ‘ νμ
03. λμ€μ λ°°μ΄μ λλ©΄μ μμ±μκ° μλ μ ν λλ²(falseμΈ λΆλΆ)λ₯Ό 체ν¬νμ¬ μΆλ ₯
ν¨μ dλ₯Ό μ μν΄λ³΄λΌκ³ νμΌλ ν¨μ μ΄ λ²μ λ¨Όμ μ¬λ¦¬κ² λ€.
#include <iostream>
using namespace std;
bool self[10001];
int d(int num){
int res = num/1000 + (num%1000)/100+(num%100)/10+num%10+num;
return res;
}
int main(){
for (int num=1; num<10000; num++){
int res = d(num);
if (res <= 10000)
self[res]=true;
}
for (int i=1; i<=10000; i++){
if (!self[i])
cout << i << endl;
}
}
ν¨μ μ μ΄ λ²μ
#include <iostream>
using namespace std;
bool self[10001];
int main(){
for (int num=1; num<10000; num++){
int res = num/1000 + (num%1000)/100+(num%100)/10+num%10+num;
if (res <= 10000)
self[res]=true;
}
for (int i=1; i<=10000; i++){
if (!self[i])
cout << i << endl;
}
}
https://www.acmicpc.net/problem/4673
'β¨ Algorithm' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€/C++] 11654λ² : μμ€ν€ μ½λ (0) | 2021.07.12 |
---|---|
[λ°±μ€/C++] 11720 : μ«μμ ν© (0) | 2021.07.12 |
[λ°±μ€/C++] 15596λ² : μ μ Nκ°μ ν© (0) | 2021.07.08 |
[λ°±μ€/C++] 4344λ² : νκ· μ λκ² μ§ (0) | 2021.07.08 |
[λ°±μ€/C++] 8958λ² : OXν΄μ¦ (0) | 2021.07.07 |
λκΈ