[알고리즘] 02.Array(1,2차원배열) / 03.가위 바위 보
가위 바위 보
설명
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
코드
import java.util.Scanner;
public class JC_0203 {
public static void main(String[] args) {
// TODO Auto-generated method stub
JC_0203 T = new JC_0203();
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int[] arrA = new int[num];
int[] arrB = new int[num];
for(int i=0; i<num; i++) {
arrA[i] = sc.nextInt();
}
for(int i=0; i<num; i++) {
arrB[i] = sc.nextInt();
}
for(char x : T.solution(num, arrA, arrB).toCharArray()) {
System.out.println(x);
}
}
//
public String solution(int n, int[] arrA, int[] arrB) {
String answer = "";
for(int i=0; i<n; i++) {
if(arrA[i] == arrB[i]) {//비길 때
answer += "D";
}else if(arrA[i]==1 && arrB[i]==3) {
answer += "A";
}else if(arrA[i]==2 && arrB[i]==1) {
answer += "A";
}else if(arrA[i]==3 && arrB[i]==2) {
answer += "A";
}else {
answer += "B";
}
}
return answer;
}
}