가위바위보

Seungmin Lim·2022년 2월 6일
0

코딩문제연습

목록 보기
16/63

문제

나의풀이

import java.util.*;

class Main {
	public String solution(int n, int[] a, int[] b) {
		String answer = "";
		//가위 : 1 바위 : 2 보 : 3
		for(int i=0; i<n; i++) {
			//비길
			if(a[i] == b[i]) answer += "D";
			//A가 이길시
			else if(a[i] == 1 && b[i] == 3) answer += "A";
			else if(a[i] == 2 && b[i] == 1) answer += "A";
			else if(a[i] == 3 && b[i] == 2) answer += "A";
			//B가 이길시
			else answer += "B";
		}
		return answer;
		}
		    
	public static void main(String[] args) {
		Main T = new Main();
		Scanner kb = new Scanner(System.in);
		int n = kb.nextInt();
		int[] a = new int[n];
		int[] b = new int[n];
		for (int i = 0; i < n; i++) {
			a[i] = kb.nextInt();
		}
		for (int i = 0; i < n; i++) {
			b[i] = kb.nextInt();
		}
		for (char x : T.solution(n, a, b).toCharArray()) {
			System.out.println(x);
		}
	}
	
}

풀이방법

3가지 경우로 나눠서 생각했다.
1. 같은경우 = D
2. A가 이기는경우 = A
3. A가 지는경우 = B

핵심키워드

한 명의 경우만 생각해서 효율적으로 문제 푸는방법을 떠올리자!

0개의 댓글