728x90
반응형

N개의 최소공배수 2

<프로그래머스> 24.02.21 복습

[예상 대진표 - 이전에 풀었던 방법] https://retry-thinksubox.tistory.com/5 이전에 풀 때는 최대 라운드를 sqrt를 가지고 정해놓고 그 안에서 다음 번호와 마치는 종료 조건을 구하는 식으로 했었다. 하지만 이렇게 할 필요가 없었다는 걸 오늘 알게 되었다. 왜냐하면 무조건 서로 붙게 된다는 조건 때문에 만나게 되어있기 때문이다. 여기서 가장 쉽게 해결하기 위해 필요한 아이디어는 현재 자리에서 +1을 하고 2로 나누면 다음 라운드에서의 자리라는 것과 붙게 되는 경우에 앞의 과정을 한 값이 서로 같다는 것이다. 간단하게 말하면 서로의 값이 같아질 때까지 +1를 하고 /2를 하는 걸 반복하다가 같아지면 탈출하고 걸린 횟수를 결과로 보내주는 것이다. 이전에 짰던 코드랑 비교를 해..

<프로그래머스> N개의 최소공배수(Lv.2)

https://github.com/heesoo-park/ForCodeKata/tree/main/N%EA%B0%9C%EC%9D%98%20%EC%B5%9C%EC%86%8C%EA%B3%B5%EB%B0%B0%EC%88%98 https://school.programmers.co.kr/learn/courses/30/lessons/12953?language=kotlin 매우 짧은 지문으로 인해 쉽게 생각하고 들어갔다. 최소공배수를 모르는 것도 아니고 배열의 크기도 생각보다 크지 않았기 때문이다. 하지만 생각보다 시간이 많이 걸렸다. 처음에 뻘짓을 했기 때문이다. 그 때 한 건 2부터 100을 가지고 배열을 순회하면서 배열 내의 모든 원소가 해당 숫자로 나머지 없이 나눠지면 모든 원소에 해당 숫자를 나눠 저장하는 방식..

반응형