μκ°μ ν
1μ΄
λ¬Έμ
μ΄λ ν μ Nμ΄ 1μ΄ λ λκΉμ§ λ€μμ λ κ³Όμ μ€ νλλ₯Ό λ°λ³΅μ μΌλ‘ μ ννμ¬ μννλ €κ³ νλ€.
λ¨, λ λ²μ§Έ μ°μ°μ Nμ΄ Kλ‘ λλμ΄ λ¨μ΄μ§ λλ§ μ νν μ μλ€.
1. Nμμ 1μ λΊλ€.
2. Nμ Kλ‘ λλλ€.
μλ₯Ό λ€μ΄ Nμ΄ 17, Kκ° 4λΌκ³ κ°μ νμ. μ΄λ 1λ²μ κ³Όμ μ ν λ² μννλ©΄ Nμ 16μ΄ λλ€.
μ΄νμ 2λ²μ κ³Όμ μ λ λ² μννλ©΄ Nμ 1μ΄ λλ€.
κ²°κ³Όμ μΌλ‘ μ΄ κ²½μ° μ 체 κ³Όμ μ μ€νν νμλ 3μ΄ λλ€. μ΄λ Nμ 1λ‘ λ§λλ μ΅μ νμμ΄λ€.
Nκ³Ό Kκ° μ£Όμ΄μ§ λ Nμ΄ 1μ΄ λ λκΉμ§ 1λ² νΉμ 2λ²μ κ³Όμ μ μνν΄μΌ νλ μ΅μ νμλ₯Ό ꡬνλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫째 μ€μ N(2 <= N <= 100.000)κ³Ό K(2 <= K <= 100.000)κ° κ³΅λ°±μΌλ‘ ꡬλΆλλ©° κ°κ° μμ°μλ‘ μ£Όμ΄μ§λ€.
μ΄λ μ λ ₯μΌλ‘ μ£Όμ΄μ§λ Nμ νμ Kλ³΄λ€ ν¬κ±°λ κ°λ€.
μ λ ₯ μμ
25 5
μΆλ ₯
첫째 μ€μ Nμ΄ 1 μ΄ λ λκΉμ§ 1λ² νΉμ 2λ²μ κ³Όμ μ μνν΄μΌ νλ νμμ μ΅μκ°μ μΆλ ₯νλ€.
μΆλ ₯ μμ
2
λ¬Έμ νμ΄ κ³Όμ
λ¨Όμ 2κ°μ§ μ νμ§λ₯Ό νμΈνλ€.
1. Nμμ 1μ λΊλ€.
2. Nμ Kλ‘ λλλ€.
Kμ λ²μλ 2μ΄μμ΄λ―λ‘ 2κ° κ°λ₯ν κ²½μ°λΌλ©΄ λ°λμ 2λ₯Ό μ νν΄μΌ λ μ μ νμλ‘ Nμ 1λ‘ λ§λ€ μ μλ€λ κ²μ μ μ μλ€.
νμ§λ§ λͺ μ¬ν΄μΌ ν μ‘°κ±΄μ΄ μλ€.
λ¨, λ λ²μ§Έ μ°μ°μ Nμ΄ Kλ‘ λλμ΄ λ¨μ΄μ§ λλ§ μ νν μ μλ€.
Nμ΄ Kλ‘ λλμ΄ λ¨μ΄μ§μ§ μλ κ²½μ°λ 1μ λ°λ³΅μ μΌλ‘ μννμ¬ Nμ΄ Kλ‘ λλμ΄λ¨μ΄μ§ μ μλλ‘ ν΄μΌ νλ€.
1. Nμ΄ Kμ λ°°μκ° λ λκΉμ§ 1μ λΊλ€.
2. Nμ Kλ‘ λλλ€.
λ¬Όλ‘ Nμ΄ Kμ λ°°μκ° λ λκΉμ§ λ°λ³΅ν΄μ 1μ λΉΌλλ‘ κ΅¬νν μ μμ§λ§ ν¨μ¨μ μ΄μ§ μλ€.
ν λ²μ Nμ Kμ λ°°μλ‘ λ§λ€ λ§νΌ λΉΌκΈ°
μμλ₯Ό λ€μ΄μ μ‘°κΈ λ μμΈν μ΄ν΄λ³΄μ.
μ λ ₯ κ°μ΄ 26 3μΈ κ²½μ°
1. 26κ³Ό κ°μ₯ κ°κΉμ΄ 3μ λ°°μλ 24
2. 24λ‘ λ§λ€κΈ° μν΄μλ 26μμ 2(26-24)λ₯Ό λΉΌμΌ νλ€.
λ¨Όμ Nκ³Ό κ°μ₯ κ°κΉμ΄ Kμ λ°°μλ₯Ό ꡬν΄μΌ νλ€.
target = (N / K) * K;
κ·Έ ν N - targetλ§νΌ μν νμμ λνλ€.
count += (N - target);
N = target;
μ΄μ 2λ₯Ό μνν μ μλ 쑰건μ λ§μ‘±νλ€.
Nμ Kλ‘ λλλ€.
N /= K;
count += 1;
Nμ Kλ‘ λλ ν μν νμλ₯Ό 1 λνλ€.
λ°λ³΅μ μΌλ‘ 1κ³Ό 2λ₯Ό μννλ©΄μ Nμ΄ Kλ³΄λ€ μμμ§λ κ²½μ°μλ μ΄λ»κ² ν΄μΌ ν κΉ?
while (N >= K) {
...
}
count += (N - 1);
Nμ΄ Kλ³΄λ€ μμμ§ κ²½μ° Nμ Kλ‘ λλ μ μμΌλ―λ‘ N - 1λ§νΌ μν νμλ₯Ό λνλ€.
μ²μ μ½λ
public class TC_3_3 {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int K = sc.nextInt();
int count = 0;
while (N != 1) {
if (N % K == 0) {
N /= K;
} else {
N -= 1;
}
count++;
}
System.out.println(count);
}
}
λ§€λ² λ°λ³΅λΆμ λλ©° Nμ΄ Kμ λ°°μκ° λ λκΉμ§ 1μ λΉΌλ κ³Όμ μ΄ ν¨μ¨μ μ΄μ§ μλ€λ κ²μ κΉ¨λ«κ³ μμ νλ€.
μμ ν μ½λ
public class TC_3_3 {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int K = sc.nextInt();
int count = 0;
while (N >= K) {
int target = (N / K) * K;
count += (N - target);
N = target;
N /= K;
count += 1;
}
count += (N - 1);
System.out.println(count);
}
}
Reference
μ΄κ²μ΄ μ·¨μ μ μν μ½λ©ν μ€νΈλ€ - λλλΉ
'π―PS - Baekjoon, etc > 그리λ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
π₯[λ°±μ€, 2878] μΊλμΊλ (Java) (0) | 2023.04.03 |
---|---|
[μ΄κ²μ΄ μ½λ© ν μ€νΈλ€] μ«μ μΉ΄λ κ²μ (Java) (0) | 2023.02.26 |
[μ΄κ²μ΄ μ½λ© ν μ€νΈλ€] ν° μμ λ²μΉ (Java) (2) | 2023.02.03 |
λκΈ