0부터 limit까지 최대로 갈 수 있는 좌표를 구해서 개수를 더해주자.
function solution(k, d) {
var answer = 0;
let max = Math.floor(d/k) * k; // 최대로 갈 수 있는 좌표
for(var i =0; i<=d; i+=k){
// 거리가 d보다 작거나 같아 질 때까지 최대로 갈 수 있는 좌표에서 k만큼 빼주자.
while(Math.sqrt((Math.pow(i, 2) + Math.pow(max,2))) > d){
max-=k
}
answer += (max/k)+1;
}
return answer
}
처음엔 원안의 점의 개수, 정사각형으로 풀려고했는데, 그냥 제일 정석인 원점과 점사이의 거리를 만족할때까지 최대의 좌표를 구하여서 풀었다. 매우 수학적인 문제였지만 흥미로운 문제였다.