From 50fbe13bccee0703fb12b0066ad2847c643af5a3 Mon Sep 17 00:00:00 2001 From: jiminnimij <124450012+jiminnimij@users.noreply.github.com> Date: Wed, 4 Feb 2026 16:11:11 +0900 Subject: [PATCH] =?UTF-8?q?[0204]=201003=EB=B2=88=20-=20=ED=94=BC=EB=B3=B4?= =?UTF-8?q?=EB=82=98=EC=B9=98=20=ED=95=A8=EC=88=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Problem1003.java | 54 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 src/Problem1003.java diff --git a/src/Problem1003.java b/src/Problem1003.java new file mode 100644 index 0000000..33a47de --- /dev/null +++ b/src/Problem1003.java @@ -0,0 +1,54 @@ +import java.io.IOException; +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.lang.StringBuilder; +import java.util.HashMap; + +public class Problem1003 { + static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + static BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + static StringBuilder sb = new StringBuilder(); + static final int MAX_NUMBER = 40; + + static HashMap dp0 = new HashMap<>(); + static HashMap dp1 = new HashMap<>(); + + public static void main(String[] args) throws IOException{ + int test = Integer.parseInt(br.readLine()); + int number; + + fibonacci(); + + for (int i = 0 ; i < test; i++){ + number = Integer.parseInt(br.readLine()); + sb.append(dp0.get(number)); + sb.append(" "); + sb.append(dp1.get(number)); + sb.append("\n"); + } + + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + + public static void fibonacci(){ + for (int i = 0; i <= MAX_NUMBER; i++){ + if (i == 0) { + dp0.put(i, 1); + dp1.put(i, 0); + } + else if (i == 1){ + dp0.put(i, 0); + dp1.put(i, 1); + } + else { + dp0.put(i, dp0.get(i - 1) + dp0.get(i - 2)); + dp1.put(i, dp1.get(i - 1) + dp1.get(i - 2)); + } + + } + } +} \ No newline at end of file