2798번: 블랙잭
첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장
www.acmicpc.net
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int N, M, tmp, BJ = 0; cin >> N >> M;
vector<int> card;
for (int i = 0; i < N; i++) {
cin >> tmp;
card.push_back(tmp);
}
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) {
tmp = card[i] + card[j] + card[k];
if (tmp <= M && tmp > BJ) BJ = card[i] + card[j] + card[k];
}
}
}
cout << BJ;
return 0;
}
벡터를 수업시간에 배워서 연습겸 배열말고 벡터사용해서 풀어봄
'CodingTest > 백준' 카테고리의 다른 글
[c++] 백준 - 15649번: N과 M (1) | 재귀함수, string (0) | 2023.07.18 |
---|---|
[c++] 백준 - 1259번: 팰린드롬수 (0) | 2023.05.31 |
[c++] 백준 - 1978: 소수 찾기 (0) | 2023.05.29 |
[c++] 백준 - 10250번: ACM 호텔 (0) | 2023.05.28 |
[c++] 백준 - 4153: 직각삼각형 (0) | 2023.05.26 |