앞에는 뭔 갈 심각하게 잘 못 생각한 것 같았다...
일단 반복문이 너무 자주 나왔다. 반복문 중첩에... 거기에다 조건문에 거의 써본 적이 없는 while문을 남발하고 제일 중요한거 짜놓은 나도 읽기가 힘들었다는 점이다 몇 줄 안되는데...
그래서 좀 심플하게 가보자라는 생각으로...
- 처음 제너레이터 결과 값을 구하는 부분을 좀 단순화 하자...
- 판단하는 부분을 좀 단순하게 하자...
그래서...
objective-C
#import <Cocoa/Cocoa.h>
int main(int argc, const char * argv[]) {
int n, generator, result, sum_of_selfnumber, d[5001] = {};
sum_of_selfnumber = 0;
for (generator = 1; result < 4999; generator = generator + 1) {
result = (generator/1000%10) + (generator/100%10) + (generator/10%10) + (generator%10) + generator;
d[result] = result;
}
for (n = 1; n < 5000; n = n + 1) {
if (d[n] == 0) {
sum_of_selfnumber = sum_of_selfnumber + n;
}
}
printf("\n%d", sum_of_selfnumber);
return NSApplicationMain(argc, argv);
}
결과값은 1227365