제출 #1357936

#제출 시각아이디문제언어결과실행 시간메모리
1357936mahjongfrogIce Hockey World Championship (CEOI15_bobek)C++20
100 / 100
420 ms20916 KiB
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back

void solv(){
    ll n,m;
    cin>>n>>m;
    vector<ll>v(n);
    for(auto &i:v){
        cin>>i;
    }
    ll ind=n/2;
    vector<ll>v1;
    for(ll i=0; i<(1<<ind); i++){
        ll cem=0;
        for(ll j=0; j<ind; j++){
            if(i&(1<<j)){
                cem+=v[j];
            }
        }
        v1.pb(cem);
    }
    vector<ll>v2;
    ll u=ind;
    ind=n-ind;
    for(ll i=0; i<(1<<ind); i++){
        ll cem=0;
        for(ll j=0; j<ind; j++){
            if(i&(1<<j)){
                cem+=v[u+j];
            }
        }
        v2.pb(cem);
    }
    sort(v2.begin(), v2.end());
    ll h=0;
    for(ll k:v1){
        ll x=m-k;
        auto it=upper_bound(v2.begin(), v2.end(), x);
        h+= (it - v2.begin());
    }
    cout<<h;
}

int main()
{
    
    int t=1;
    //cin>>t;
    while(t--){
        solv();
        cout<<endl;
    }
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…