for 2 count
2015. 10. 13. 21:27ㆍSecurity ★ Development/알고리즘
반응형
문제는 더블릿 3 for에 있는 count입니다.
문제 사이트 주소입니다.
http://59.23.113.171/30stair/count/count.php?pname=count
ip주소가 바뀌었네요.
for문을 통해 숫자가 커지는 방향을 결정하고 숫자를 늘리고 줄이다보면 시간초과가 납니다.
숫자를 하나씩 거쳐가기보다 수가 주어졌을 때 그 주변의 수를 찾을 수 있어야합니다.
첫번째 항이 있는 라인을 1, 두번째 항에서 대각선으로 있는 항들을 2, 네번째 항의 대각선라인을 3으로 보면 이는 각 대각선 라인의 숫자들의 개수이며 분모 혹은 분자의 최대값이 됩니다.
1 2 3 4 5
2 3 4 5
3 4 5
4 5
5
이런식으로 말이죠.
그럼 찾으려는 항이 주어지면 for를 통해 1부터 ?까지의 합이 찾으려는 항보다 큰지를 정합니다.
?를 찾았으면 1~?까지의 합과 찾으려는 항의 차이를 이용해 찾으려는 항의 분모, 분자를 구할 수 있습니다.
단, 항은 위에서 아래, 아래에서 위로 지그재그 형태의 카운팅을 하고 있으므로 이를 고려해야합니다.
'Security ★ Development > 알고리즘' 카테고리의 다른 글
koi4u 2011년 8 월 모의고사 1 번 koi4u_vega (0) | 2015.02.12 |
---|---|
다중 반복문 2 climbing (0) | 2015.02.12 |
제31회 한국정보올림피아드 시/도 지역 본선 (2014.5.24) 초등부 문제 3,중등 2 koi_ant (0) | 2015.02.11 |
다차원배열 4 plibrary (0) | 2015.02.10 |
dynamic programming 7 subset (0) | 2015.02.03 |