14178. 1차원 정원

홍범선·2023년 4월 19일
0

SW Expert Academy

목록 보기
9/18

14178. 1차원 정원

문제

풀이

d = 1일 때 물을 받을 수 있는 범위는 -1, 0, 1 => 3이다.
d = 2일 때 물을 받을 수 있는 범위는 -2, -1, 0, 1, 2 => 5이다.
d = 3일 때 물을 받을 수 있는 범위는 -3, -2, -1, 0, 1, 2, 3 => 7이다.
즉 d에 따른 범위를 식으로 표현하면 range = dx2 + 1이다.

이제 N을 d로 나누면 정답을 알 수 있다.
N = 5일 때 5 / 3 => 1,xxx이다. 즉 2개가 필요하다.
N = 5일 때 5 / 5 => 1이다. 즉 1개가 필요하다.
N = 100일 때 100 / 7 => 14.xxx이다. 즉 15개가 필요하다.

이것을 코드로 나타내면 다음과 같다.

for test_case in range(1, T + 1):
    tmp = input().split(" ")
    n, d = int(tmp[0]), int(tmp[1])
    gap = d*2 + 1
    print("#" + str(test_case) + " " + str(math.ceil(n / gap)))
profile
날마다 성장하는 개발자

0개의 댓글