[C++]白俊2309:7人の小人
6366 ワード
#include <iostream>
#include <algorithm> // sort
using namespace std;
int arr[9] = {0};
int sum;
int main(int argc, char** argv){
for(int i = 0; i < 9; i++){
scanf("%d", &arr[i]);
sum += arr[i];
}
sort(arr, arr + 9);
int ans = sum - 100;
for(int i = 0; i < 9; i++){ // 브루트포스
for(int j = i; j < 9; j++){
if(arr[i] + arr[j] == ans){
for(int k = 0; k < 9; k++){
if(k != i && k != j){
printf("%d\n", arr[k]);
}
}
return 0; // 하나만 출력
}
}
}
return 0;
}
9つのうち7つは全部探すのが難しいと思います.したがって,合が100の場合を見つけるためには,逆に2つ抜き,100の場合を見つける.
Brootforceアルゴリズムを使用して、2つのforゲートを返し、2つを探します.2つの減算が100の場合、for文を迂回し、最初に見つかった2つの数字を除いて出力されます(整列しているため).
正解が多い場合は、1つだけ印刷すれば良いので、出力終了後に終了します.
Reference
この問題について([C++]白俊2309:7人の小人), 我々は、より多くの情報をここで見つけました https://velog.io/@lamknh/C-백준-2309-일곱-난쟁이テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol