[프로그래머스] Lv2. 점 찍기- JavaScript

이상돈·2023년 7월 7일
0
post-thumbnail

문제분류 : 코팅테스트 연습

난이도 : Level 2

출처 : 프로그래머스 - 점 찍기

문제

제한사항

📌 내가 생각한 풀이

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
 
}

📌 느낀점

처음엔 원안의 점의 개수, 정사각형으로 풀려고했는데, 그냥 제일 정석인 원점과 점사이의 거리를 만족할때까지 최대의 좌표를 구하여서 풀었다. 매우 수학적인 문제였지만 흥미로운 문제였다.

profile
사람들의 더 나은 삶을 위한 개발자

0개의 댓글