백준알고리즘
백준 4673 C++
컨트롤디
2021. 6. 28. 16:29
#include <iostream>
#include <cstdio>
#define max 10001
using namespace std;
bool arr[max];
int self(int n){
int sum = n;
while(1){
if(n == 0) break;
sum += n%10; //한자리씩 더해줌
n = n/10; //한자리씩 없애줌
}
return sum;
}
int main(){
for(int i=1; i<max; i++){
int ind = self(i); // ind = 셀프넘버
if(ind <= max){
arr[ind] = true; // ind 가 arr의 인덱스로 들어가고 셀프넘버가 아니므로 true로 변경
}
}
for(int i=1; i<max; i++){
if(!arr[i]) cout << i << endl;
}
return 0;
}