Algorithm/Cases-Study
SWEA-1208 Flatten
Xi_kor
2021. 3. 25. 20:34
입력을 받은 뒤 정렬하여 제일 앞에 작은 블록입력을 받은 뒤 정렬하여 제일 앞에 적은 상자의 갯수, 제일 뒤에 많은 상자의 갯수가 오게 하였다. 주어진 횟수만큼 큰 블록을 빼고 작은 블록을 더한 뒤 정렬하는 과정을 반복했고, 그 과정중에 정렬이 완료되었으면 반복문을 빠져나갔다.
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(){
vector <int> v;
for(int T=1; T<=10; T++){
v.clear();
int n;
cin>>n;
for(int i=0; i<100; i++){
int a;
cin>>a;
v.push_back(a);
}
sort(v.begin(), v.end());
for(int i=0; i<n; i++){
if(v[99]>v[0]){
v[99]--;
v[0]++;
}
else break;
sort(v.begin(), v.end());
}
cout<<"#"<<T<<" "<<v[99]-v[0]<<'\n';
}
return 0;
}