๋ฌธ์ ๋งํฌ
19539๋ฒ: ์ฌ๊ณผ๋๋ฌด (acmicpc.net)
๋์ด๋๊ฐ ๊ณจ๋์์ด๋ ์ด์ํ์ง ์์์ ๋ฌธ์ .
ํ์ด
์ฒ์์๋ ์ง์ ๋ชจ๋ ๋๋ฌด์ ๋ฌผ์ ์ฃผ๋ฉด์ YES or NO๋ฅผ ํ๋จํ๋ค. ๋๋ฌด์ ๋์ด๋ฅผ ์ ์ฅํ ํ ๋๋ฌด์ ๋์ด๋ฅผ 2๋๋ 1์ ๊น์ผ๋ฉด์ ๋ชจ๋ 0์ด ๋ ์ ์๋์ง๋ฅผ ์ฒดํฌํ๋ ค ํ๋ค. ํ์ง๋ง ์ด๋ ๊ฒ ํ๋ฉด ๋๋ฌด๋ฅผ 3๋งํผ ํค์ฐ๋๊ฒ ๋ง๋์ง 2๋งํผ ํค์ฐ๋๊ฒ ๋ง๋์ง 1๋งํผ ํค์ฐ๋๊ฒ ๋ง๋์ง ํ๋จํ๊ธฐ๊ฐ ์ ๋งคํ๋ค.
1. ํ๋ฃจ์ ๋ฌด์กฐ๊ฑด ํฉ์ณ์ 3์ ๋์ด๋ฅผ ํค์์ผํ๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๋๋ฌด์ ๋์ด์ ํฉ์ด 3์ ๋ฐฐ์๊ฐ ์๋๋ผ๋ฉด ๋ฌด์กฐ๊ฑด "NO"๋ฅผ ์ถ๋ ฅํ๋ค.
2. 2๋งํผ ํค์ฐ๋ ๋ฌผ๋ฟ๋ฆฌ๊ฐ๋ฅผ i๋ฒ ์ฌ์ฉํ๋ค๊ณ ํ๋ฉด 1๋งํผ ํค์ฐ๋ ๋ฌผ๋ฟ๋ฆฌ๊ฐ๋ ๋น์ฐํ i๋ฒ ์ฌ์ฉํด์ผํ๋ค. ๋๋ฌด์ ๋์ด๊ฐ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง ๋, ๊ทธ ๋์ด๋ฅผ 2๋ก ๋๋์ด์ 2์ง๋ฆฌ ๋ฌผ๋ฟ๋ฆฌ๊ฐ๋ฅผ ๋ช ๋ฒ ๋ฟ๋ฆด ์ ์๋์ง ์ผ๋ค.
2์ง๋ฆฌ ๋ฌผ๋ฟ๋ฆฌ๊ฐ๋ฅผ ๋ฟ๋ฆฌ๋ ํ์๊ฐ (๋ชจ๋ ๋๋ฌด ๋์ด์ ์ด ํฉ) / 3 ๋ณด๋ค๋ ํฌ๊ฑฐ๋ ๊ฐ์์ผ ์ํ๋ ๋์ด๋ฅผ ๋ง๋ค ์ ์๋ค.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstdio>
#include <string.h>
#include <string>
#include <stack>
#include <vector>
#include <math.h>
#include <queue>
#include <climits>
#include <algorithm>
#include <iomanip>
#include <map>
#define mod 1000000007
using namespace std;
typedef long long ll;
typedef priority_queue<pair<pair<ll, int>, int>, vector<pair<pair<ll, int>, int>>, greater<pair<pair<ll, int>, int>>> Priority_queue;
const int INF = INT_MAX;
const int MAX_N = 100000 + 5;
vector<int> height;
int N;
int main(void) {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cin >> N;
int sum = 0;
int cnt_2 = 0;
for (int i = 0; i < N; i++) {
int num; cin >> num;
sum += num;
cnt_2 += (num / 2);
}
if (sum % 3) {
cout << "NO\n";
}
else {
if (cnt_2 >= sum / 3)
cout << "YES\n";
else cout << "NO\n";
}
return 0;
}
|
cs |
'๋ฐฑ์ค > Silver' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ] 1697 : ์จ๋ฐ๊ผญ์ง (0) | 2022.01.20 |
---|---|
[BOJ] 6716 : Collecting Beepers (0) | 2022.01.19 |