More actions
imported>Unknown No edit summary |
(Repair batch-0003 pages from live compare) |
||
| Line 17: | Line 17: | ||
for (register int i = 1; nowNumber < pointNumber; ++i) | for (register int i = 1; nowNumber < pointNumber; ++i) | ||
{ | { | ||
numbers | numbers[nowNumber] = i; | ||
for(suchNumber = i; numbers.end() == numbers.find(suchNumber); --suchNumber); | for(suchNumber = i; numbers.end() == numbers.find(suchNumber); --suchNumber); | ||
nowNumber += numbers | nowNumber += numbers[suchNumber]; | ||
} | } | ||
for(suchNumber = pointNumber; numbers.end() == numbers.find(suchNumber); --suchNumber); | for(suchNumber = pointNumber; numbers.end() == numbers.find(suchNumber); --suchNumber); | ||
return numbers | return numbers[suchNumber]; | ||
} | } | ||
Latest revision as of 00:29, 27 March 2026
== Self-describingSequence/조현태 == === 느낀점 및 설명 === 배도 고픈데 왜 아무도 안오는겨..ㅠ.ㅜ 이제 그만짤랭~! 씽..위키나 짜야지.. === 소스 === #include <iostream> #include <Windows.h> #include <map> using namespace std; int GetSolomonGolombNumber(int pointNumber) { map<int, int> numbers; int nowNumber = 1; register int suchNumber; for (register int i = 1; nowNumber < pointNumber; ++i) { numbers[nowNumber] = i; for(suchNumber = i; numbers.end() == numbers.find(suchNumber); --suchNumber); nowNumber += numbers[suchNumber]; } for(suchNumber = pointNumber; numbers.end() == numbers.find(suchNumber); --suchNumber); return numbers[suchNumber]; } void main() { int calculateNumber = 0; while(1) { cin >> calculateNumber; if (0 == calculateNumber) break; cout << GetSolomonGolombNumber(calculateNumber) << endl; } }