이전 시도는 68ms가 나왔는데 0ms로 줄인 것도, 코드가 훨씬 짧아진 것도 마음에 드는데, 이 문제 카테고리가 함수인만큼 함수로 풀었어야 했나 하는 생각이 듦
셀프 넘버 방식으로 생성이 된 숫자에 표시를 해가는 방식으로 풀이
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <malloc.h>
int main() {
char selfnumber[10001] = { 0, };
for (int j = 1; j <= 10000; j++) {
int generatedNumber = j + j / 1000 + j % 1000 / 100 + j % 100 / 10 + j % 10;
if (generatedNumber <= 10000) {
selfnumber[generatedNumber] = 1;
}
}
for (int i = 1; i <= 10000; i++) {
if (selfnumber[i] == 0) {
printf("%d\n", i);
}
}
for (int i = 0; i < 3; i++) {
getchar();
}
return 0;
}