[BOJ]3009号七人の小人c++
8450 ワード
https://www.acmicpc.net/problem/2309
質問する
王妃を避けるため、7人の小人と平和に暮らしていた白雪姫は危機に直面した.一日の仕事を終えて帰ってきた矮人は7人ではなく、9人だった.9人の小人はみな「白雪姫と7人の小人」の主役だと主張している.優れた数学的直感を持つ白雪姫は、幸いにも7人の小人の身長の和が100だったことを覚えている.9人のジュニアの身長を手に入れたとき、白雪姫に7人のジュニアを探すプログラムを書いてください.
入力します.
20
7
23
19
10
15
25
8
13
出力します.
7
8
10
13
19
20
23
質問する
王妃を避けるため、7人の小人と平和に暮らしていた白雪姫は危機に直面した.一日の仕事を終えて帰ってきた矮人は7人ではなく、9人だった.9人の小人はみな「白雪姫と7人の小人」の主役だと主張している.優れた数学的直感を持つ白雪姫は、幸いにも7人の小人の身長の和が100だったことを覚えている.9人のジュニアの身長を手に入れたとき、白雪姫に7人のジュニアを探すプログラムを書いてください.
入力します.
20
7
23
19
10
15
25
8
13
出力します.
7
8
10
13
19
20
23
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int height[9];
int t1, t2, sum = 0;
void find_real_dwarf() {
for(int i = 0; i < sizeof(height) / sizeof(int); i++) {
sum -= height[i];
for(int j = i + 1; j < sizeof(height) / sizeof(int); j++) {
sum -= height[j];
if(sum == 100) {
height[i] = 0;
height[j] = 0;
return;
}
sum += height[j];
}
sum += height[i];
}
}
int main() {
for(int i = 0; i < sizeof(height) / sizeof(int); i++) {
scanf("%d", &height[i]);
sum += height[i];
}
find_real_dwarf();
sort(height, height + sizeof(height) /sizeof(int));
for(int i = 2; i < sizeof(height) / sizeof(int); i++) {
printf("%d\n", height[i]);
}
}
Reference
この問題について([BOJ]3009号七人の小人c++), 我々は、より多くの情報をここで見つけました https://velog.io/@chowisely/BOJ-2309テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol