About ê¸ˆê³ ¶
N층 빌딩ì�´ 있다. ì�´ 빌딩ì�˜ F층ì�€ ê¸ˆê³ ë¥¼ ë–¨ì–´ëœ¨ë ¸ì�„때ì—� 부서지는 최소층ì�´ë‹¤. 다시 ë§�하면, F층ì�„ í�¬í•¨í•˜ì—¬ 그위ì�˜ 층ì—�서 ê¸ˆê³ ë¥¼ 떨어뜨리면 무조건 부서지며, F층ì�˜ 아래층ì—�서 ê¸ˆê³ ë¥¼ 떨어뜨릴 ë–„ì—�는 ê¸ˆê³ ëŠ” ì ˆëŒ€ 부서지지 않는다.(N층ì—�서ë�„ 부서지지 않으며, 1층ì—�서ë�„ 부서질수ë�„ 있다.)
새로 개발한 ê¸ˆê³ ì�˜ ê²¬ê³ í•¨ì�„ ì¸¡ì •í•´ì„œ ê´‘ê³ í•˜ë ¤ê³ í•˜ëŠ”ë�°, ê¸ˆê³ K개를 ê°€ì§€ê³ ì�´ 빌딩ì�˜ F층ì�´ 몇 층ì�¸ì§€ë¥¼ ì•Œê³ ì‹¶ë‹¤. 가능한 방법ì�€ ìž„ì�˜ì�˜ 층ì—�서 ì§�ì ‘ ê¸ˆê³ ë¥¼ ë–¨ì–´ëœ¨ë¦¬ê³ ê·¸ 결과를 확ì�¸ 하는 것 ë¿�ì�´ë‹¤. ë¬¼ë¡ , 부서진 ê¸ˆê³ ëŠ” 다시 ì‚¬ìš©í• ìˆ˜ 없으며 부서지지 않았다면 다시 ì‚¬ìš©í• ìˆ˜ 있다.
ì�´ëŸ°ìƒ�황ì—�서 Kê°œì�˜ ê¸ˆê³ ë¥¼ ê°€ì§€ê³ F층ì�´ 몇층ì�´ë�˜ ê°„ì—� F층ì�„ 알아낼수 있는 최소한ì�˜ ê¸ˆê³ ë‚™í•˜ íš�수를 E(N,K)ì�´ë�¼ 하ìž�. 예를 들어 K = 1ì�´ë�¼ë©´ F를 알아내기 ì „ì—� ê¸ˆê³ ê°€ 부서지면 안ë�˜ê¸° 때문ì—� 1층부터 차례대로 올ë�¼ê°€ë©´ì„œ ê¸ˆê³ ë¥¼ 낙하해야 하며 많아야 N번ì�´ë©´ F층ì�„ 알아 낼수 있다. ë”°ë�¼ì„œ E(N, 1) = Nì�´ë‹¤. 건물ì�˜ 층수를 나타내는 ì •ìˆ˜ Nê³¼ ê¸ˆê³ ì�˜ 개수를 나타내는 ì •ìˆ˜ kê°€ 주어 졌ì�„때, E(N,K)를 계산하는 프로그램ì�„ 작성하시오.
ìž…ë ¥ ¶
ìž…ë ¥ì�€ 표준 ìž…ë ¥(standard input)ì�„ 통해 받아들ì�¸ë‹¤. ìž…ë ¥ì�˜ 첫줄ì—�는 테스트 ì¼€ì�´ìФì�˜ 개수 T(1 <= T <= 10)ê°€ 주어진다. ê°� 테스트 ì¼€ì�´ìŠ¤ëŠ” 한줄ì—� 빌딩 ì „ì²´ 층수와 ê¸ˆê³ ì�˜ 개수를 ì�˜ë¯¸í•˜ëŠ” ë‘�ê°œì�˜ ì •ìˆ˜ Nê³¼ K(1 <= K <= N <= 500)ê°€ 순서대로 주어진다.
ì¶œë ¥ ¶
ì¶œë ¥ì�€ í‘œì¤€ì¶œë ¥(standard output)ì�„ 통하여 ì¶œë ¥í•œë‹¤. ê°� 테스트 ì¼€ì�´ìФì—� 대해서 E(N, K)를 한줄ì—� 하나씩 ì¶œë ¥í•˜ì‹œì˜¤.
Sample Input ¶
3 5 1 4 2 8 3
Sample Output ¶
5 3 4
Extra Test Input ¶
10 4 2 382 5 500 1 500 3 496 2 500 500 481 4 255 7 255 8 256 9
Extra Test Output ¶
3 10 500 15 31 9 11 9 8 9
í’€ì�´ ¶
| 작성� | 사용언어 | 개발시간 | 코드 |
| ê¹€ìƒ�ì„ | C++ | ë§Žì�´..ã…¡ã…œ | ê¸ˆê³ /ê¹€ìƒ�ì„ |
| 하기웅 | C++ | 10ë¶„ã…¡ã…¡; | ê¸ˆê³ /하기웅 |
| 조현태 | C++ | ? | ê¸ˆê³ /조현태 |
| 문보창 | C++ | ë§Žì�´..ã…¡ã…œ | ê¸ˆê³ /문보창 |









