2193λ²: μ΄μΉμ
0κ³Ό 1λ‘λ§ μ΄λ£¨μ΄μ§ μλ₯Ό μ΄μ§μλΌ νλ€. μ΄λ¬ν μ΄μ§μ μ€ νΉλ³ν μ±μ§μ κ°λ κ²λ€μ΄ μλλ°, μ΄λ€μ μ΄μΉμ(pinary number)λΌ νλ€. μ΄μΉμλ λ€μμ μ±μ§μ λ§μ‘±νλ€. μ΄μΉμλ 0μΌλ‘ μμνμ§ μ
www.acmicpc.net
λ¬Έμ νμ΄
"μ΄μΉμ"μ μ‘°κ±΄μ΄ λλ €λ©΄ μλμ κ°λ€.
1. μ΄μ§μ μ€μ
2. 1λ‘ μμνλ μ
3. 1μ΄ λ λ² μ°μ μμΌλ©΄ μ λ¨
μ΄ μ‘°κ±΄μ λ§λ κ²½μ°λ₯Ό κ° μ리 λ³λ‘ μ°Ύμλ΄€μ λ μΌμ ν κ·μΉμ μ°Ύμ μ μμλ€. μ΄μ μ리 μμμ μ°Ύμ μ΄μΉμλ₯Ό κ·Έλλ‘ κ°μ Έμ μ΄μ©ν μ μλλ°, ν΄λΉ μμ λ μλ¦¬κ° 1
λ‘ λλλ©΄ μ°μμΌλ‘ 1
μ΄ μ¬ μ μμΌλ 0
λ§ λΆμΌ μ μλ€. λ°λλ‘ 0
μΌλ‘ λλλ μλ©΄ 0
κ³Ό 1
μ λͺ¨λ λΆμΌ μ μλ€. λ°λΌμ μλ¦Ώμκ° 4μΈ μ΄μΉμλ₯Ό ꡬνλ κ²½μ°μ μ리μκ° 3μΈ μ΄μΉμμμ 0μΌλ‘ λλλ 100
μ 0
κ³Ό 1
μ λΆμΈ 1000
κ³Ό 1001
μ λ§λ€ μ μκ³ , 101
μλ 0
λ§ λΆμ¬ 1010
μ λ§λ€ μ μλ€.
κ·Έλ κ² κ΅¬ν κ²½μ°μ μλ 1, 1, 2, 3, 5, 8, 13, ...
μ΄λ° μμΌλ‘ μ¦κ°νκΈ° λλ¬Έμ μ νμμ μλμ κ°μ΄ ꡬν μ μλ€.
dp[i] = dp[i-1] + dp[i-2]
μμ€μ½λ
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
if(N == 1 || N == 2){
System.out.println(1);
return;
}
long[] dp = new long[N+1];
dp[1] = 1;
dp[2] = 1;
for(int i = 3 ; i <= N ; i++){
dp[i] = dp[i-1] + dp[i-2];
}
System.out.println(dp[N]);
}
}
'π μ½ν μ°μ΅μ₯ > π DP' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Baekjoon] λ°±μ€ 16500_λ¬Έμμ΄ νλ³ (Java) (0) | 2023.07.15 |
---|---|
[Baekjoon] λ°±μ€ 9095_1,2,3 λνκΈ° (Java) (0) | 2023.07.08 |