답안 #159214

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
159214 2019-10-21T13:31:59 Z Akashi Ice Hockey World Championship (CEOI15_bobek) C++14
20 / 100
197 ms 20816 KB
#include <bits/stdc++.h>
using namespace std;

int n, l;
long long m;
long long a[42];
vector <long long> v[2];

void back(int i, int n, long long Sum = 0){
    if(Sum > m) return ;
    if(i == n + 1){
        v[l].push_back(Sum);
        return ;
    }

    back(i + 1, n, Sum);
    back(i + 1, n, Sum + a[i]);
}

int main()
{
    scanf("%d%lld", &n, &m);
    for(int i = 1; i <= n ; ++i)
        scanf("%d", &a[i]);

    l = 0;
    back(1, n / 2);

    l = 1;
    back(n / 2 + 1, n);

    sort(v[1].begin(), v[1].end());
    long long Sol = 0;
    for(auto it : v[0]){
        int pos = upper_bound(v[1].begin(), v[1].end(), m - it) - v[1].begin();
        if(pos == v[1].size() || v[1][pos] + it > m) --pos;
        if(pos > 0) Sol = Sol + pos + 1;
    }

    printf("%lld", Sol);

    return 0;
}



















Compilation message

bobek.cpp: In function 'int main()':
bobek.cpp:24:26: warning: format '%d' expects argument of type 'int*', but argument 2 has type 'long long int*' [-Wformat=]
         scanf("%d", &a[i]);
                     ~~~~~^
bobek.cpp:36:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(pos == v[1].size() || v[1][pos] + it > m) --pos;
            ~~~~^~~~~~~~~~~~~~
bobek.cpp:22:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d%lld", &n, &m);
     ~~~~~^~~~~~~~~~~~~~~~~~
bobek.cpp:24:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d", &a[i]);
         ~~~~~^~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 504 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 8 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 256 KB Output is correct
5 Correct 2 ms 256 KB Output is correct
6 Correct 2 ms 396 KB Output is correct
7 Incorrect 2 ms 376 KB Output isn't correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 26 ms 2028 KB Output is correct
2 Incorrect 94 ms 5476 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 40 ms 2924 KB Output is correct
2 Correct 28 ms 2032 KB Output is correct
3 Correct 186 ms 10588 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 5 ms 1012 KB Output is correct
6 Correct 12 ms 1648 KB Output is correct
7 Correct 2 ms 256 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 57 ms 3556 KB Output is correct
2 Correct 119 ms 6628 KB Output is correct
3 Incorrect 126 ms 6652 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 161 ms 12756 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 18 ms 2028 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 197 ms 20816 KB Output isn't correct
2 Halted 0 ms 0 KB -