새소식

반응형
Language/알고리즘

백준 BaekJoon 5533번: 유니크[Java] 자바

  • -
반응형

2020-10-07


문제

상근이와 친구들은 MT에 가서 아래 설명과 같이 재미있는 게임을 할 것이다.

각 플레이어는 1이상 100 이하의 정수를 카드에 적어 제출한다.

각 플레이어는 자신과 같은 수를 쓴 사람이 없다면,

자신이 쓴 수와 같은 점수를 얻는다.

만약, 같은 수를 쓴 다른 사람이 있는 경우에는 점수를 얻을 수 없다.

상근이와 친구들은 이 게임을 3번 했다.

각 플레이어가 각각 쓴 수가 주어졌을 때,

3번 게임에서 얻은 총 점수를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 참가자의 수 N이 주어진다.

(2 ≤ N ≤ 200) 둘째 줄부터 N개 줄에는

각 플레이어가 1번째, 2번째, 3번째 게임에서 쓴 수가

공백으로 구분되어 주어진다.

출력

각 플레이어가 3번의 게임에서 얻은

총 점수를 입력으로 주어진 순서대로 출력한다.

 


소스코드

		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		
		int [][] arr = new int [n][3];
		//주어진 게임횟수가 들어갈 배열
		int [] sumarr = new int [n];
		//게임점수 합이 들어갈 배열
		
		for(int i = 0; i < n; i++) {
			for(int j = 0; j < 3; j++) {
				arr[i][j] = scan.nextInt();
			}
		}
		
		for(int j = 0; j < 3 ; j++) {
			for(int i = 0; i < n; i++) {
				for(int k = i + 1; k <n; k++) {
					if(arr[i][j] == arr[k][j]) {
						arr[i][j] = 0;
						arr[k][j] = 0;
						//한 게임 마다 같은 수가 있는지 체크
					}
				}
			sumarr[i] += arr[i][j];}
			//비교가 끝나면 해당 값을 더해줌
		}
		
		for(int i = 0; i < n; i++) {
			System.out.println(sumarr[i]);
		}

출처 링크 : www.acmicpc.net/problem/5533

 

5533번: 유니크

첫째 줄에 참가자의 수 N이 주어진다. (2 ≤ N ≤ 200) 둘째 줄부터 N개 줄에는 각 플레이어가 1번째, 2번째, 3번째 게임에서 쓴 수가 공백으로 구분되어 주어진다.

www.acmicpc.net

 

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.