728x90
https://school.programmers.co.kr/learn/courses/30/lessons/140107
분석
- 원점 (0,0)으로부터 반원에 들어가는 점
- 1 ≤ k ≤ 1,000,000이므로 완전 탐색하면 시간 초과
- x축을 기준으로 y값 구하기 d² + x² = y²
풀이
import math
def solution(k, d):
answer = 0
for x in range(0, d+1, k):
y= math.sqrt(d*d - x*x) # 피타고라스
answer += y//k + 1
return answer
728x90