본문 바로가기
  • Let's study
PS/백준

[C++] 백준 2798번: 블랙잭

by 코딩고수이고파 2020. 12. 23.

1. 3개를 뽑아야 하니 i는 0부터 n-2번까지, j는 i+1부터 n-1번까지, k는 j+1부터 n까지 뽑는 경우의 수를 반복한다.

2. 이때 각각 뽑은 수를 다 더했을 때 그 값이 딜러가 외친 숫자보다 작거나 같고 이전 값보다 크다면 값을 재설정 해준다.

#include <iostream>

using namespace std;

int main(void) {
	int n, m;
	cin >> n >> m;
	int arr[101];
	int result = 0;

	for (int i = 0; i < n; i++) {
		cin >> arr[i];
	}
	for (int i = 0; i < n - 2; i++) {
		for (int j = i + 1; j < n - 1; j++) {
			for (int k = j + 1; k < n; k++) {
				int cnt = arr[i] + arr[j] + arr[k];
				if (cnt <= m && cnt > result)
					result = cnt;
			}
		}
	}
	cout << result;
}

댓글