[백준] 2303. 숫자 게임

고재욱·2021년 8월 22일

Baekjoon

목록 보기
6/35

2303. 숫자 게임

간단한 브루트포스 문제였다.

카드의 입력을 받으면 조합으로 3개의 숫자를 고르고, 3 숫자에 대한 합 % 10으로 일의 자리를 구한다.

#include <iostream>
#include <algorithm>
using namespace std;
int card[1001][6];
void select_card(int n, int index, int cnt, int sum) {
	if (cnt == 3) {
		card[n][5] = max(card[n][5], sum%10);
		return;
	}
	for (int i = index; i < 5; i++) {
		select_card(n, i + 1, cnt + 1, sum + card[n][i]);
	}
}

int main() {
	int n, answer = 0, max_num = 0;
	cin >> n;
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < 5; j++)
			cin >> card[i][j];
		select_card(i,0,0,0);
		if (max_num <= card[i][5]) {
			answer = i + 1;
			max_num = card[i][5];
		}
	}
	cout << answer;
}

0개의 댓글