๐ ๋ฌธ์ ๋งํฌ
๐ ํ์ด ๊ณผ์
- ์ฌ๊ท๋ฅผ ์ด์ฉํ ๊ตฌํ ๋ฌธ์ ์
๋๋ค.
- ์ฌ๊ท๋ฅผ ์ด์ฉํ์ง ์๋๋ผ๋ ๋จ์ ๋ฐ๋ณต๋ฌธ์ผ๋ก๋ ํ ์ ์์ต๋๋ค.
- A -> B๋ก ๊ฐ๋ ๋๋ฉฐ, B -> A๋ก ์ซ์๊ฐ ์ค์ด๋ค๋ฉด์ ์งํํด๋ ๋ฉ๋๋ค.
- ์ ๋ A -> B์ ๋ฐฉํฅ์ผ๋ก ๊ตฌํํ์ต๋๋ค.
- ์ฐ์ฐ์ ๋๊ฐ์ง ์
๋๋ค.
- 2๋ฅผ ๊ณฑํ๋ ๊ฒฝ์ฐ
- ์ซ์์ ๋ง์ง๋ง์ ๋ฌธ์ 1์ ๋ถ์ด๋ ๊ฒฝ์ฐ
- ๋๊ฐ์ง ๊ณผ์ ์ ๋ํ ์ฌ๊ท ๋ฉ์๋๋ฅผ ๊ตฌํํ ํ, A๊ฐ B๋ณด๋ค ์ปค์ง๋ ๊ฒฝ์ฐ์๋ ๋ฉ์๋ ์ข
๋ฃ๋ฅผ, A == B์ธ ๊ฒฝ์ฐ์๋ ๊ทธ๋๊น์ง์ count ๊ฐ์ ๋ด์ตใด๋ใ
.
- ๋ฌธ์ ์์ ๋ต์ ๋ฐํํ ๋ 1์ ๋ํ ๊ฐ์ ๋ฐํํ๋ผ๊ณ ์ ์๋์ด์๊ธฐ ๋๋ฌธ์ ์ ๋ count ๋ณ์๋ฅผ 1๋ก ์ด๊ธฐํํ์ต๋๋ค.
- ์ฌ๊ธฐ์ ์ฃผ์ํ ์ ์ A,B์ ํ์
์
๋๋ค.
- ์ ๋ ์ฌ๊ธฐ์ 4,5๋ฒ ํ๋ ธ์ต๋๋ค. ์ ์ ๊ฐ์ ์๋ชป์ ํ ๋ถ์ด ๊ณ์ค ์๋ ์๋ค๊ณ ์๊ฐํด์ ์ถ๊ฐํฉ๋๋ค.
- ์ซ์์ ๋ฒ์๋ 1 ์ด์, 10์ 9์น ์ดํ์
๋๋ค.
- ์ฆ, int ๋ฒ์๋ฅผ ๋์ด ๋ฌธ์์ด 1์ ๋ถ์์ ๋ intํ์ผ๋ก ๋ณํํ๋ฉด์ NumberFormatException์ด ๋ฐ์ํ ์ ์์ต๋๋ค.
- ๋ฌผ๋ก , ์ด ๋ถ๋ถ์ ๋ํ ์์ธ ์ฒ๋ฆฌ ์ฝ๋๊ฐ ์์ ๊ฒฝ์ฐ์๋ intํ์ ๋ฒ์๋ฅผ ๋ฒ์ด๋์ง ์๊ฒ๋์ด long ํ์
์ ์ ๊ฒฝ์์จ๋ ๋ ๊ฒ ๊ฐ์ต๋๋ค.
- ์ ๋ ์ ๋ถ๋ถ์ ๋ํ ์์ธ์ฒ๋ฆฌ ์ฝ๋๋ฅผ ์์ฑํ์ง ์์๊ธฐ์ ํ์
์ long์ผ๋ก ์์ ํ ํ์์ต๋๋ค.
๐ป ์ฝ๋
import java.io.*;
import java.util.StringTokenizer;
public class Main {
static int answer;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
long a = Long.parseLong(st.nextToken());
long b = Long.parseLong(st.nextToken());
int count = 1;
answer = 0;
solve(a, b, count);
if (answer == 0) {
answer = -1;
}
bw.write(String.valueOf(answer));
bw.flush();
bw.close();
br.close();
}
private static void solve(long a, long b, int count) {
if (a == b) {
answer = count;
return;
} else if (a > b) {
return;
}
solve(a * 2, b, count + 1);
String str = a + "1";
solve(Long.parseLong(str), b, count + 1);
}
}
'Algorithm > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค 2110๋ฒ : ๊ณต์ ๊ธฐ ์ค์น (Java) (0) | 2022.03.22 |
---|---|
๋ฐฑ์ค 15686๋ฒ : ์นํจ ๋ฐฐ๋ฌ (Java) (0) | 2022.03.22 |
๋ฐฑ์ค 1991๋ฒ : ํธ๋ฆฌ ์ํ (Java) (0) | 2022.02.12 |
๋ฐฑ์ค 11725๋ฒ : ํธ๋ฆฌ์ ๋ถ๋ชจ ์ฐพ๊ธฐ (Java) (0) | 2022.02.12 |
๋ฐฑ์ค 1753๋ฒ : ์ต๋จ๊ฒฝ๋ก (Java) (0) | 2022.02.12 |