From fe04a81a189ff65f56fd00ffa385847de95e7636 Mon Sep 17 00:00:00 2001 From: Donew <47556347+03do-new30@users.noreply.github.com> Date: Wed, 5 Mar 2025 21:38:38 +0900 Subject: [PATCH] =?UTF-8?q?[20250305]=20BOJ=20/=20G3=20/=20K=EC=A7=84=20?= =?UTF-8?q?=ED=8A=B8=EB=A6=AC=20/=20=EC=8B=A0=EB=8F=99=EC=9C=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...64\354\247\204\355\212\270\353\246\254.md" | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 "03do-new30/202503/05 BOJ G3 \354\235\264\354\247\204\355\212\270\353\246\254.md" diff --git "a/03do-new30/202503/05 BOJ G3 \354\235\264\354\247\204\355\212\270\353\246\254.md" "b/03do-new30/202503/05 BOJ G3 \354\235\264\354\247\204\355\212\270\353\246\254.md" new file mode 100644 index 00000000..c80faead --- /dev/null +++ "b/03do-new30/202503/05 BOJ G3 \354\235\264\354\247\204\355\212\270\353\246\254.md" @@ -0,0 +1,33 @@ +```java +import java.util.*; + +public class Main { + static int K; + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + long N = sc.nextLong(); + K = sc.nextInt(); + int Q = sc.nextInt(); + for (int i = 0; i < Q; i++) { + long x = sc.nextLong() - 1; + long y = sc.nextLong() - 1; + if (K == 1) { + System.out.println(Math.abs(x - y)); + } else { + int dist = 0; + while (x != y) { + if (x < y) { + y = (y - 1) / K; // y = y의 부모 노드 + } else { + x = (x - 1) / K; // x = x의 부모 노드 + } + dist++; + } + System.out.println(dist); + } + } + sc.close(); + } +} + +```