#문제

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

 

2309번: 일곱 난쟁이

아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다.

www.acmicpc.net

 

#작성 코드

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
#include <iostream>
#include <algorithm>
using namespace std;
 
int tall[9];
int sum=0;
 
int main(){
    for(int i=0; i<9; i++){
        cin>>tall[i];
        sum+=tall[i];
    }
    
    sort(tall, tall+9);
    for(int i=0; i<9; i++){
        for(int j=i+1; j<9; j++){
            if( sum-tall[i]-tall[j]==100 ){
                for(int k=0; k<9; k++){
                    if ( k==|| k==j ) continue;
                    cout<<tall[k]<<'\n';
                }
                return 0;        // 답이 여러개일 때 하나만 출력해야하므로 
            }
        }
    }
}
cs

##

아홉 난쟁이들의 키를 입력받으면서 sum에 모두 더해놓고,

아홉 난쟁이들의 키를 오름차순으로 정렬한다.

그 중 중복되지않도록 두 개를 골라 sum에서 키를 뺐을 때 100이 된다면 그 두개를 제외한 키를 출력하고, return 0;으로 메인 함수를 종료한다.

'BOJ' 카테고리의 다른 글

BOJ 10448번 :: 유레카 이론  (0) 2020.02.04
BOJ 3085번 :: 사탕 게임  (0) 2020.02.04
BOJ 16500번 :: 문자열 판별  (0) 2020.02.03
BOJ 11052번 :: 카드 구매하기  (0) 2020.02.03
BOJ 1699번 :: 제곱수의 합  (0) 2020.02.02

+ Recent posts