티스토리 뷰
출처 : https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV139KOaABgCFAYh
#include <iostream>
#include <algorithm>
#include <vector>
#include <functional>
using namespace std;
int result, D;
vector <int> v1;
void cal()
{
result = (v1[0] - v1[99]);
while (D--)
{
if ((v1[0] - v1[99]) > 1)
{
v1[0]--; v1[99]++;
for (int i = 1; i<99; i++)
{
if (!(v1[0] < v1[i])) break;
if ((v1[0] < v1[i]) && (v1[i + 1] <= v1[0]))
{
int tmp = v1[0];
v1.erase(v1.begin());
v1.insert(v1.begin() + i,tmp);
break;
}
}
for (int i = 98; i>=1; i--)
{
if (!(v1[99] >= v1[i])) break;
if ((v1[99] >= v1[i]) && (v1[i - 1] >= v1[99]))
{
int tmp2 = v1[99];
v1.pop_back();
v1.insert(v1.begin() + i, tmp2);
break;
}
}
result = (v1[0] - v1[99]);
}
else break;
}
}
int main()
{
int T = 10; int t = 1;
while (T--)
{
cin >> D; result = 0; v1.clear();
for (int i = 0; i < 100; i++)
{
int iii; cin >> iii; v1.push_back(iii);
}
sort(v1.begin(), v1.end(), greater<int>());
cal();
cout << "#" << t++ << " " << result << endl;
}
return 0;
}
'알고리즘 > SWEA' 카테고리의 다른 글
[SWEA 1209] Sum (0) | 2018.08.06 |
---|---|
[SWEA 1204] 최빈수 구하기 (0) | 2018.08.06 |
[SWEA 1206] View (0) | 2018.08.05 |
[SWEA 4672] 수진이의 팰린드롬 (0) | 2018.07.29 |
[SWEA 4796] 의석이의 우뚝 선 산 (0) | 2018.07.26 |
- Total
- Today
- Yesterday
- 17140
- 입출력
- 17779
- 미세먼지 안녕!
- scanf
- 삼성
- string
- hackerrank
- 새로운 게임 2
- 백준
- 17143
- 17142
- STL
- 연구소 3
- SW Expert Academy
- 17144
- 트렌드
- DP
- 2018 KAKAO BLIND RECRUITMENT
- DFS
- 2018 카카오 블라인드 채용
- boj
- 알고리즘
- 이차원 배열과 연산
- SWEA
- 팁
- 17837
- 게리맨더링 2
- 역량 테스트
- 시간 복잡도
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 27 | 28 | 29 | 30 | 31 |