페이지

2309번: 일곱 난쟁이

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


$O(1)$

두 난장이를 제외하는 모든 경우를 조사하여 합이 100이 되는지 확인한다.


#include<cstdio>
int a[101], s;
int main() {
    for (int i = 0, x; i < 9; i++) scanf("%d", &x), a[x] = 1, s += x;
    for (int i = 1; i <= 100; i++) if (s - i <= 200 && s - 2 * i>100 && a[i] && a[s - 100 - i])
        for (int k = 1; k <= 100; k++) if (k != i&&k != s - 100 - i&&a[k]) printf("%d\n", k);
    return 0;
}

댓글 없음 :

댓글 쓰기