제출 #93343

#제출 시각아이디문제언어결과실행 시간메모리
93343RezwanArefin01Ice Hockey World Championship (CEOI15_bobek)C++17
100 / 100
354 ms20844 KiB
///usr/bin/g++ -O2 $0 -o ${0%.cpp} && echo "----------" && ./${0%.cpp}; exit;
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef pair<int, int> ii; 

const int N = 50; 
int n; ll X; 
vector<ll> a, b; 

void gen(int i, vector<ll> &a, vector<ll> &A, ll S = 0) {
    if(S > X) return; 
    if(i == a.size()) { A.push_back(S); return; }
    gen(i + 1, a, A, S + a[i]); 
    gen(i + 1, a, A, S); 
}

int main() {
    scanf("%d %lld", &n, &X);
    vector<ll> a, b; 
    for(int i = 0; i < n; i++) {
        ll x; scanf("%lld", &x); 
        if(i < n / 2) a.push_back(x); 
        else b.push_back(x); 
    }
    vector<ll> A, B; 
    gen(0, a, A); 
    gen(0, b, B); 
    sort(A.begin(), A.end()); 
    
    ll ans = 0; 
    for(ll Y : B) ans += lower_bound(A.begin(), A.end(), X - Y + 1) - A.begin(); 
    printf("%lld\n", ans); 
}

컴파일 시 표준 에러 (stderr) 메시지

bobek.cpp: In function 'void gen(int, std::vector<long long int>&, std::vector<long long int>&, ll)':
bobek.cpp:14:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if(i == a.size()) { A.push_back(S); return; }
        ~~^~~~~~~~~~~
bobek.cpp: In function 'int main()':
bobek.cpp:20:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d %lld", &n, &X);
     ~~~~~^~~~~~~~~~~~~~~~~~~
bobek.cpp:23:20: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         ll x; scanf("%lld", &x); 
               ~~~~~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...