algorithm
가위 바위 보
juuuuuuun
2024. 4. 29. 05:26
설명
A, B 두 사람이 가위바위보 게임을 합니다. 총 N번의 게임을 하여 A가 이기면 A를 출력하고, B가 이기면 B를 출력합니다. 비길 경우에는 D를 출력합니다.
가위, 바위, 보의 정보는 1:가위, 2:바위, 3:보로 정하겠습니다.
예를 들어 N=5이면

두 사람의 각 회의 가위, 바위, 보 정보가 주어지면 각 회를 누가 이겼는지 출력하는 프로그램을 작성하세요.
입력
첫 번째 줄에 게임 횟수인 자연수 N(1<=N<=100)이 주어집니다.
두 번째 줄에는 A가 낸 가위, 바위, 보 정보가 N개 주어집니다.
세 번째 줄에는 B가 낸 가위, 바위, 보 정보가 N개 주어집니다.
출력
각 줄에 각 회의 승자를 출력합니다. 비겼을 경우는 D를 출력합니다.
예시 입력 1
5
2 3 3 1 3
1 1 2 2 3
예시 출력 1
A
B
A
B
D
소스 코드 1
import java.util.Scanner;
public class Main {
public static char[] solution(int N, int[] A, int[] B) {
char[] ans = new char[N];
//전체 조합 2:짐,1:이김,0:동점,-1:짐,-2:이김
for (int i = 0; i < N; i++) {
if (A[i] - B[i] == 0) {
ans[i] = 'D';
} else if (A[i] - B[i] == 1 || A[i] - B[i] == -2) {
ans[i] = 'A';
} else {
ans[i] = 'B';
}
}
return ans;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int[] A = new int[N];
int[] B = new int[N];
for (int i = 0; i < N; i++) {
A[i] = sc.nextInt();
}
for (int i = 0; i < N; i++) {
B[i] = sc.nextInt();
}
for (char c : solution(N, A, B)) {
System.out.println(c);
}
}
}