def sol(a):
return 0
빈 함수를 만들고
import unittest
class TestNotebook(unittest.TestCase):
def test_sol(self):
self.assertEqual(sol(13), 3)
unittest.main(argv=[''], verbosity=2, exit=False)
테스트 먼저 진행한다. 당연히 fail한다.
def sol(a):
x=1
cnt=1
while a>x:
x+=6*cnt
cnt+=1
return cnt
테스트 케이스를 이용해서 문제를 풀어 보았다. 벌집의 개수는 한 칸이 멀어질수록 6n을 1~n까지 더한 개수이다. 즉 처음 벌집까지 포함해야함으로 cnt를 1로 두고 1씩증가해가면서 6*cnt를 x라는 변수에 더해간다. x가 a보다 커질때 while문을 빠져나가며, 그때의 cnt가 답이된다.
unittest.main(argv=[''], verbosity=2, exit=False)
이렇게 테스트 케이스를 돌리면 성공
'백준 풀이' 카테고리의 다른 글
백준 10250번 python (0) | 2022.08.18 |
---|---|
백준 10926 파이썬 (0) | 2022.08.18 |
백준 2292번 파이썬 (0) | 2022.08.18 |
백준 1920 풀이(이분 탐색(binary search)) (0) | 2022.02.01 |
백준 2839 풀이 (0) | 2022.02.01 |