https://www.acmicpc.net/problem/1402
문제
어떤 정수 A가 있으면 그 숫자를 A = a1 * a2 * a3 * a4 ... * an으로 했을 때 A' = a1 + a2 + a3 ... + an이 성립하면 "A는 A'으로 변할 수 있다"라고 한다. (ai는 정수) 만약 A'이 A''으로 변할 수 있으면 "A는 A''으로 변할 수 있다"라고 한다.
이때 A와 B가 주어지면 A는 B로 변할 수 있는지 판별하시오.
입력
첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 100)이 주어진다. 테스트 케이스마다 두 정수 A, B(-231 ≤ A, B ≤ 231-1)가 주어진다.
출력
각각의 테스트 케이스마다 한 줄에 변할 수 있으면 yes, 아니면 no를 출력한다.
풀이
아이디어가 중요한 문제라 가렸습니다.
더보기
N = 1 * N이므로 N -> N+1이 가능
N = (-1) * (-1) * N이므로 N -> N-2가 가능
따라서, 곱하는 1의 수와 (-1)의 수를 조절하면 모든 수로 이동 가능
코드
1
2
3
4
5
6
7
8
9
10
11
12
|
import java.io.*;
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());
for (int i = 0; i < N; i++) {
System.out.println("yes");
}
}
}
|
cs |
'PS > etc' 카테고리의 다른 글
백준 1865번: 웜홀 (Java) (0) | 2022.08.31 |
---|---|
벨만-포드 알고리즘 with 백준 11657번: 타임머신 (Java) (0) | 2022.07.25 |
백준 1107번: 리모컨 (Java) (0) | 2022.06.17 |
백준 15961번: 회전 초밥 (JAVA) (0) | 2022.04.05 |
백준: 제 1회 블롭컵 (앞 4문제만 JAVA 풀이) (0) | 2022.02.22 |