2798๋ฒ: ๋ธ๋์ญ
์ฒซ์งธ ์ค์ ์นด๋์ ๊ฐ์ N(3 ≤ N ≤ 100)๊ณผ M(10 ≤ M ≤ 300,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ ์นด๋์ ์ฐ์ฌ ์๋ ์๊ฐ ์ฃผ์ด์ง๋ฉฐ, ์ด ๊ฐ์ 100,000์ ๋์ง ์๋ ์์ ์ ์์ด๋ค. ํฉ์ด M์ ๋์ง ์๋ ์นด๋ 3์ฅ
www.acmicpc.net
๋ฌธ์
๋ธ๋์ญ์์ ๊ฐ ์นด๋์๋ ์์ ์ ์๊ฐ ์ฐ์ฌ ์๋ค. ๊ทธ ๋ค์, ๋๋ฌ๋ N์ฅ์ ์นด๋๋ฅผ ๋ชจ๋ ์ซ์๊ฐ ๋ณด์ด๋๋ก ๋ฐ๋ฅ์ ๋๋๋ค. ๊ทธ๋ฐ ํ์ ๋๋ฌ๋ ์ซ์ M์ ํฌ๊ฒ ์ธ์น๋ค.
์ด์ ํ๋ ์ด์ด๋ ์ ํ๋ ์๊ฐ ์์ N์ฅ์ ์นด๋ ์ค์์ 3์ฅ์ ์นด๋๋ฅผ ๊ณจ๋ผ์ผ ํ๋ค. ๋ธ๋์ญ ๋ณํ ๊ฒ์์ด๊ธฐ ๋๋ฌธ์, ํ๋ ์ด์ด๊ฐ ๊ณ ๋ฅธ ์นด๋์ ํฉ์ M์ ๋์ง ์์ผ๋ฉด์ M๊ณผ ์ต๋ํ ๊ฐ๊น๊ฒ ๋ง๋ค์ด์ผ ํ๋ค.
N์ฅ์ ์นด๋์ ์จ์ ธ ์๋ ์ซ์๊ฐ ์ฃผ์ด์ก์ ๋, M์ ๋์ง ์์ผ๋ฉด์ M์ ์ต๋ํ ๊ฐ๊น์ด ์นด๋ 3์ฅ์ ํฉ์ ๊ตฌํด ์ถ๋ ฅํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์นด๋์ ๊ฐ์ N(3 ≤ N ≤ 100)๊ณผ M(10 ≤ M ≤ 300,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ ์นด๋์ ์ฐ์ฌ ์๋ ์๊ฐ ์ฃผ์ด์ง๋ฉฐ, ์ด ๊ฐ์ 100,000์ ๋์ง ์๋ ์์ ์ ์์ด๋ค. ํฉ์ด M์ ๋์ง ์๋ ์นด๋ 3์ฅ์ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ๋ง ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ M์ ๋์ง ์์ผ๋ฉด์ M์ ์ต๋ํ ๊ฐ๊น์ด ์นด๋ 3์ฅ์ ํฉ์ ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ
10 500
93 181 245 214 315 36 185 138 216 295
์์ ์ถ๋ ฅ
497
๋ฌธ์ ํ์ด
๋ธ๋ฃจํธํฌ์ค ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํ๋ค.
- 3์ฅ์ ์นด๋๋ฅผ ๊ณ ๋ฅผ ๋, ์ฒ์์ ์ธ๋ฑ์ค๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ณ ๋ฅธ๋ค.
- ๊ทธ ๋ค์์ 1๋ฒ์งธ ์ธ๋ฑ์ค๋ฅผ ์ ์ธํ 2๋ฒ์งธ ์ธ๋ฑ์ค๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ณ ๋ฅธ๋ค.
- ๋ง์ง๋ง์ 1๋ฒ์งธ ์ธ๋ฑ์ค์ 2๋ฒ์งธ ์ธ๋ฑ์ค๋ฅผ ์ ์ธํ ๋๋จธ์ง ์ธ๋ฑ์ค๋ฅผ ์ฐจ๋ก๋ก ๊ณ ๋ฅธ๋ค.
Ex) [5, 6, 7] (i = 5, j = 6, k = 7) - 3์ฅ์ ํฉ์ด M์ ๋์ง ์์ ๋ ๊น์ง ๋ฐ๋ณตํ๋ค.
Ex) [5, 6, 7] < M (M์ด 21์ผ ๋, 3์ฅ์ ํฉ์ 18์ด๋ค. - M์ ๋์ง ์์ผ๋ฉด์ M๊ณผ ๊ทผ์ ํ ์๊ฐ ๋์๋, ๋ค์ 3์ฅ์ ์นด๋์ ํฉ์ด M๊ณผ ๋ ๊ฐ๊น์ธ ์ง ๋ชจ๋ฅด๋ ๋ค๋ฅธ ์นด๋๋ฅผ ํ์ธํด๋ณธ๋ค.
Solution
#include <iostream>
using namespace std;
int main() {
int N, M, card[101], result = 0;
cin >> N >> M;
for(int i=0; i < N; i++)
cin >> card[i];
for(int i = 0; i < N; i++){
for(int j = i + 1; j < N; j++){
for(int k = j + 1; k < N; k++){
int sum = 0;
sum = card[i] + card[j] + card[k];
if(sum > result && sum <= M){
result = sum;
break;
}
}
}
}
cout << result;
return 0;
}'๐งฉ Algorithm > [BOJ] Bronze' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| BOJ 2231๋ฒ : ๋ถํดํฉ (C++/Bronze 2) (0) | 2022.08.02 |
|---|---|
| BOJ 1546๋ฒ : ํ๊ท (C++/Bronze 1) (0) | 2022.08.02 |
| BOJ 2750๋ฒ : ์ ์ ๋ ฌํ๊ธฐ (C++/Bronze 2) (0) | 2022.07.11 |
| BOJ 2480๋ฒ : ์ฃผ์ฌ์ ์ธ๊ฐ (C์ธ์ด/Bronze 4) (0) | 2022.07.07 |
| BOJ 10871๋ฒ : X๋ณด๋ค ์์ ์ (C์ธ์ด/Bronze 5) (0) | 2022.07.06 |