티스토리 뷰
떠돌아다니는 넥슨 입사시험문제를 보고 풀어봤다.
1번말고는 못건드리겠네-_-
1번
#include <iostream> using std::cout; using std::endl; int main() { const int MAX = 5000; if (MAX > 9999) { std::cerr << MAX << " is not supported by this program."<<std::endl; return 0; } int site4,site3,site2,site1; int tmp; int *Array1 = new int[MAX]; for (int i=1;i<MAX;i++) Array1[i] = 0; for (int i=1;i<MAX;i++){ tmp = -1; // ex: 2016 // site4 = 2016/1000 = 2 (정수) // site3 = 2016 - 2*1000 = 016 => 016/100 = 0 // site2 = 2016 - ( 2000 + 000) => 16/10 = 1 // site1 = 2016 - ( 2000 + 000 + 10) = 6 site4 = i/1000; site3 = (i - (site4*1000))/100; site2 = (i - (site4*1000 + site3*100))/10; site1 = (i - (site4*1000 + site3*100 + site2*10 ));
tmp = site4 + site3 + site2 + site1 +i;
//tmp is generator of i //self number : Array1[i] == 0 if ( tmp != -1 && tmp < MAX ) Array1[tmp] = 1; } int sum=0; for (int i=1; i < MAX;i++){ if ( Array1[i] == 0 ){ cout << "Self-Number : " << i <<endl; sum+=i; } } cout << endl << "Sum of Self-Number is "<< sum <<endl; return 0; } |
문제
1번 설명 어떤 자연수 n이 있을 때, d(n)을 n의 각 자릿수 숫자들과 n 자신을 더한 숫자라고 정의하자. 예를 들어 d(91) = 9 + 1 + 91 = 101 이 때, n을 d(n)의 제네레이터(generator)라고 한다. 위의 예에서 91은 101의 제네레이터이다. 어떤 숫자들은 하나 이상의 제네레이터를 가지고 있는데, 101의 제네레이터는 91 뿐 아니라 100도 있다. 그런데 반대로, 제네레이터가 없는 숫자들도 있으며, 이런 숫자를 인도의 수학자 Kaprekar가 셀프 넘버(self-number)라 이름 붙였다. 예를 들어 1,3,5,7,9,20,31 은 셀프 넘버 들이다. 1번 문제 1 이상이고 5000 보다 작은 모든 셀프 넘버들의 합을 구하라. 1번 답 : ________ |
'살아가는 이야기' 카테고리의 다른 글
<셜록곰즈와 괴도워니> - 골방환상곡 서비스컷 (0) | 2006.09.09 |
---|---|
[링크스크랩] ‘개구리야 정말 고마워~’ (0) | 2006.07.01 |
PC를 개조하자- (PC의 구입에서 업그레이드까지) (0) | 2006.06.21 |
재미있게 빠져드는 C++ 프로그래밍의 함정 (0) | 2006.06.21 |
버스와 라디오 (0) | 2006.04.03 |
- Total
- Today
- Yesterday
- GutsyGibbon
- Leap Year
- U123
- NEXUS S
- STOP_APP_SWITCH
- lockscreen
- 아일랜드
- apktool
- 레터스 투 줄리엣
- dex2jar
- 요리·레시피
- 5 sec rule
- setfsb
- ubuntu
- 2월 29일
- 락스크린
- 일상·생각
- Gutsy
- 5초 룰
- 더블린
- IT·컴퓨터
- Android
- 전화번호
- 문학·책
- Ubuntu7.10
- 하이픈
- 안드로이드
- 잠금화면
- 프로포즈 데이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |