본문 바로가기
CS/Algorithm

[BOJ][C++] 2309 일곱 난쟁이

by 별토끼. 2019. 1. 12.
반응형

[BOJ][C++] 2309 일곱 난쟁이

 

문제

https://www.acmicpc.net/problem/2309

 

풀이

입력받는 값과 출력해야하는 값의 갯수가 정해져 있어서 꽤 수월하게 풀 수 있었습니다.

값을 입력받으면서 total값을 구합니다. 그리고 100을 뺀 나머지 값과 같아지는 A와 B를 뽑아냅니다.

이 값을 제외한 나머지 값을 출력합니다.

 

코드

#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <algorithm>
using namespace std;

int main() {
    int height[9];
    for (int i = 0; i < 9; i++) {
        scanf("%d", &height[i]);
    }
    sort(height, height + 9);

    int total = 0;
    for (int i = 0; i < 9; i++) {
        total += height[i];
    }
    int x = total - 100;
    int res[2] = { 0, };
    for (int i = 9; i >= 1; i--) {
        for (int j = i-1; j >= 0; j--) {
            if (height[i]+height[j]==x) {
                res[0] = i;
                res[1] = j;
                break;
            }
        }
    }
    for (int i = 0; i < 9; i++) {
        if (res[0] == i || res[1] == i) {
            continue;
        }
        printf("%d\n", height[i]);
    }
}

 

반응형

'CS > Algorithm' 카테고리의 다른 글

[BOJ][C++] 15683 감시  (0) 2019.01.17
[BOJ][C++] 1012 유기농배추  (0) 2019.01.12
[BOJ][C++] 14502 연구소  (0) 2019.01.12
[SWEA][C++] 4013 특이한 자석  (0) 2018.12.27
[SWEA][C++] 4014 활주로 건설  (0) 2018.12.20

댓글