https://www.acmicpc.net/problem/1057
1057๋ฒ: ํ ๋๋จผํธ
๊น์ง๋ฏผ์ N๋ช ์ด ์ฐธ๊ฐํ๋ ์คํ ํ ๋๋จผํธ์ ์ง์ถํ๋ค. ํ ๋๋จผํธ๋ ๋ค์๊ณผ ๊ฐ์ด ์งํ๋๋ค. ์ผ๋จ N๋ช ์ ์ฐธ๊ฐ์๋ ๋ฒํธ๊ฐ 1๋ฒ๋ถํฐ N๋ฒ๊น์ง ๋ฐฐ์ ๋ฐ๋๋ค. ๊ทธ๋ฌ๊ณ ๋ ํ์ ์๋ก ์ธ์ ํ ๋ฒํธ๋ผ๋ฆฌ ์คํ๋ฅผ ํ๋ค. ์ด๊ธด ์ฌ๋์ ๋ค์ ๋ผ์ด๋์ ์ง์ถํ๊ณ , ์ง ์ฌ๋์ ๊ทธ ๋ผ์ด๋์์ ๋จ์ด์ง๋ค. ๋ง์ฝ ๊ทธ ๋ผ์ด๋์ ์ฐธ๊ฐ์๊ฐ ํ์๋ช ์ด๋ผ๋ฉด, ๋ง์ง๋ง ๋ฒํธ๋ฅผ ๊ฐ์ง ์ฐธ๊ฐ์๋ ๋ค์ ๋ผ์ด๋๋ก ์๋ ์ง์ถํ๋ค. ๋ค์ ๋ผ์ด๋์์ ๋ค์ ์ฐธ๊ฐ์์ ๋ฒํธ๋ฅผ 1๋ฒ๋ถํฐ ๋งค๊ธด๋ค. ์ด๋, ๋ฒํธ๋ฅผ ๋งค๊ธฐ๋ ์์๋ ์ฒ์
www.acmicpc.net
์ฝ๋
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int N = scan.nextInt(); // ์ฐธ๊ฐ์ ์
int Kim = scan.nextInt(); // ๊น์ง๋ฏผ ๋ฒํธ
int Lim = scan.nextInt(); // ์ํ์ ๋ฒํธ
int count = 0;
while(Kim != Lim) {
Kim = (Kim + 1) / 2;
Lim = (Lim + 1) / 2;
count ++;
}
System.out.println(count);
scan.close();
}
}
ํ์ด
๊ฐํผ๋ฅผ ๋ชป์ก๊ฒ ์ด์ ํ ๋ธ๋ก๊ทธ๋ค์ ์ฐธ๊ณ ํ๋ค.
๋ฌธ์ ์ ์ ๋ถ๋ถ์ด ํต์ฌ์ธ ๊ฒ ๊ฐ๋ค. ๊น์ง๋ฏผ๊ณผ ์ํ์๋ ํญ์ ์ด๊ธฐ๊ณ , ์ฐธ๊ฐ์์ ๋ฒํธ๋ฅผ ๋ฐ์ฉ ์ค์ฌ๋๊ฐ๋๋ฐ ๋ง๋ ๋๊น์ง ํ ๋๋จผํธ๋ฅผ ์งํํ๊ณ , ๋ง๋ ๋ ๊ฒฝ๊ธฐ๋ฅผ ์น๋ฃฌ ํ์๋ฅผ ๊ตฌํด์ผ ํ๋ค.
๋ง๋๋ ๊ฒฝ์ฐ๋ ์ ๊ทธ๋ฆผ์ฒ๋ผ, ๋ ์ ์์ ๋ฒํธ๊ฐ ๊ฐ์์ง๋ ์ด๋ค.
๋ ์ ์์ ๋ฒํธ์ 1์ ๋ํด์ฃผ๋ ๊ฒฝ์ฐ๋ ํ์์ ๊ฒฝ์ฐ๋ ์๊ฐํด์์ด๋ค.
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค[Java] - (Level2)๋ค์ ํฐ ์ซ์ (0) | 2020.03.13 |
---|---|
[Codeforces] 721A: One-dimensional Japanese Crossword (0) | 2020.03.13 |
[๋ฐฑ์ค] 2979๋ฒ: ํธ๋ญ ์ฃผ์ฐจ(๊ตฌํ, ์๋ฎฌ๋ ์ด์ ) (0) | 2020.03.12 |
[๋ฐฑ์ค] 1911๋ฒ: ํ๊ธธ ๋ณด์ํ๊ธฐ(๊ทธ๋ฆฌ๋) (1) | 2020.03.12 |
[Codeforces] 1311A: Add Odd or Subtract Even (0) | 2020.03.12 |
๋๊ธ