1. 문제

www.acmicpc.net/problem/14696

 

14696번: 딱지놀이

표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 딱지놀이의 총 라운드 수를 나타내는 자연수 N이 주어진다. N 은 1 이상 1,000 이하이다. 다음 줄에는 라운드 1에서 어린이 A가 내는 딱지에 나

www.acmicpc.net

2. 접근방법

A가 가지는 각 딱지의 갯수

B가 가지는 각 딱지의 갯수를

배열에 저장한다.

A[4]에 4의 갯수 A[3]에 3의 갯수 .....

이렇게 저장하면 쉽게 갯수를 저장시킬 수 있다.

 

이후 4 3 2 1 갯수를 A,B 비교해가면서 더 큰 값이 있으면 큰 친구 이름을 출력

전부 다 같으면 D출력 하면 된다.

 

 

4. 자바 코드

package Bronze;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class P14696딱지놀이 {
	public static void main(String[] args) throws Exception {
		
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st;
		int N = Integer.parseInt(br.readLine());
		gg: for (int turn = 0; turn < N; turn++) {
			int A[] = new int[5];
			int B[] = new int[5];
			st = new StringTokenizer(br.readLine());
			int a = Integer.parseInt(st.nextToken());
			for (int i = 0; i < a; i++) {
				A[Integer.parseInt(st.nextToken())]++;
			}
			st = new StringTokenizer(br.readLine());
			int b = Integer.parseInt(st.nextToken());
			for (int i = 0; i < b; i++) {
				B[Integer.parseInt(st.nextToken())]++;
			}
			for (int i = 4; i > 0; i--) {
				if (B[i] < A[i]) {
					System.out.println('A');
					continue gg;
				}
				if (B[i] > A[i]) {
					System.out.println('B');
					continue gg;
				}
			}
			System.out.println('D');
			
		}

	}

}

5. 마치며

간단한 시뮬레이션 문제

배열에 각 딱지 갯수를 저장한다는 아이디어만 떠올리면 쉽게 풀 수 있다.

 

'알고리즘 문제풀이 > 백준' 카테고리의 다른 글

[백준] 2669 직사각형네개의합집합의면적구하기  (0) 2020.09.26
[백준] 13300 방배정  (0) 2020.09.25
[백준] 2491 수열  (0) 2020.09.24
[백준] 2605줄세우기  (0) 2020.09.24
[백준] 2309 일곱난쟁이  (0) 2020.09.23

+ Recent posts