Contents
내가 작성한 코드
내가 작성한 코드
public class Solution {
public static long solution(int k, int d) {
long answer = 0;
for (int x = 0; x <= d; x += k) {
// x^2 + y^2 <= d^2 == y^2 <= d^2 - x^2
long maxY = (long) d * d - (long) x * x; // 최대 y값
// 최대 y값 이하인 y 값 중 k 단위로 만들 수 있는 개수 >> (루트(maxY) / k) + 1
// + 1 >> 0 포함시키기
long yCount = (long) Math.sqrt(maxY) / k + 1;
answer += yCount;
}
return answer;
}
}
Share article