Algorithm/SWEA

[SWEA] - 1208. [S/W 문제해결 기본] 1일차 - Flatten

benguin 2019. 7. 5. 16:46

[URL]

https://www.swexpertacademy.com/main/code/problem/problemDetail.do

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

www.swexpertacademy.com

 

[풀이 과정]

1. 입력

2. 오름차순 정렬

3. 배열 맨 앞은 1증가,  맨 뒤는 1감소, 다시 정렬  --> 덤프 개수만큼 반복

 

 

[소스 코드]

 

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
32
33
34
#include <stdio.h>
#include <algorithm>
using namespace std;
 
int main(){
    for (int tc = 0; tc < 10; tc++)
    {
        int dump;
        int map[101];
 
        // 입력
        scanf("%d"&dump);
        for (int i = 0; i < 100; i++)
        {
            scanf("%d"&map[i]);
        }
 
        // 오름 차순 정렬
        sort(map, map+100);
 
        // dump 만큼 계산
        for (int i = 0; i < dump; i++)
        {
            map[0]++;
            map[99]--;
            sort(map, map + 100);
        }
 
        printf("#%d %d\n", tc+1, map[99- map[0]);
    }
    
 
    return 0;
}
cs