https://school.programmers.co.kr/learn/courses/30/lessons/12953
λ¬Έμ μ€λͺ
λ μμ μ΅μ곡배μ(Least Common Multiple)λ μ λ ₯λ λ μμ λ°°μ μ€ κ³΅ν΅μ΄ λλ κ°μ₯ μμ μ«μλ₯Ό μλ―Έν©λλ€. μλ₯Ό λ€μ΄ 2μ 7μ μ΅μ곡배μλ 14κ° λ©λλ€. μ μλ₯Ό νμ₯ν΄μ, nκ°μ μμ μ΅μ곡배μλ n κ°μ μλ€μ λ°°μ μ€ κ³΅ν΅μ΄ λλ κ°μ₯ μμ μ«μκ° λ©λλ€. nκ°μ μ«μλ₯Ό λ΄μ λ°°μ΄ arrμ΄ μ λ ₯λμμ λ μ΄ μλ€μ μ΅μ곡배μλ₯Ό λ°ννλ ν¨μ, solutionμ μμ±ν΄ μ£ΌμΈμ.
μ ν μ¬ν
- arrμ κΈΈμ΄ 1μ΄μ, 15μ΄νμΈ λ°°μ΄μ λλ€.
- arrμ μμλ 100 μ΄νμΈ μμ°μμ λλ€.
μ μΆλ ₯ μ
arr | result |
[2,6,8,14] | 168 |
[1,2,3] | 6 |
λ΄ νμ΄
μ΅μ곡배μ ⇒ A * B / μ΅λ곡μ½μ
μ΅λ곡μ½μ ⇒ ν° μ Aλ₯Ό μμ μ Bλ‘ λλμ΄ λ¨μ΄μ§λ©΄, A, Bμ μ΅λ곡μ½μλ B, Aλ₯Ό Bλ‘ λλμμ λ λλ¨Έμ§κ° Rμ΄λ©΄, A, Bμ μ΅λ곡μ½μλ Rκ³Ό Bμ μ΅λ곡μ½μμ κ°λ€.
μ¬λ¬ μμ μ΅μ 곡배μλ₯Ό ꡬνλ €λ©΄ 2κ°λ₯Ό λ¬Άμ΄ μ΅μ 곡배μλ₯Ό ꡬνκ³ κ·Έ μ΅μ 곡배μμ λ€μ μμ μ΅μ 곡배μλ₯Ό ꡬνλ μμΌλ‘ μ§ννλ©΄ λλ€.
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int GCD(int a, int b)
{
int imax = max(a,b);
int imin = min(a,b);
int r = imax % imin;
if( r == 0)
return imin;
else
return GCD(imin, r);
}
int solution(vector<int> arr) {
int answer = arr[0];
for(int i = 1; i < arr.size(); i++)
{
int gcd = GCD(answer, arr[i]);
int lcm = answer * arr[i] / gcd;
answer = lcm;
}
return answer;
}
'π₯οΈ Study Note > Coding Test' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[νλ‘κ·Έλλ¨Έμ€]level.2 - λ°°λ¬(C++) (0) | 2023.07.10 |
---|---|
[νλ‘κ·Έλλ¨Έμ€]level.2 - λ ν ν© κ°κ² λ§λ€κΈ°(C++) (0) | 2023.07.04 |
[νλ‘κ·Έλλ¨Έμ€]level.2 - μ νμ μκ° μ΄λ(C++) (0) | 2023.06.30 |
[νλ‘κ·Έλλ¨Έμ€]level.2 - κ³Όμ μ§ννκΈ°(C++) (0) | 2023.06.29 |
[νλ‘κ·Έλλ¨Έμ€]level.2 - μμ λμ§ν(C++) (0) | 2023.06.28 |