# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
120611 | 2019-06-25T05:20:50 Z | Mercenary | Ice Hockey World Championship (CEOI15_bobek) | C++14 | 342 ms | 16832 KB |
#include<bits/stdc++.h> using namespace std; #define taskname "A" #define pb push_back #define mp make_pair #ifndef LOCAL #define cerr if(0)cout #endif typedef long double ld; typedef long long ll; typedef pair<int,int> ii; typedef pair<ll,int> lli; const int maxn = 1e6 + 6; const ld inf = 1e9 + 5; int n; ll a[maxn]; ll can; vector<ll> val , val1; void enter(){ cin >> n >> can; // n = 20;can = 1e18; for(int i = 0 ; i < n / 2 ; ++i){ cin >> a[i]; // a[i] = 1e18; } val.reserve((1 << (n / 2))); for(int j = 0 ; j < (1 << (n / 2)) ; ++j){ ll sum = 0; for(int i = 0 ; i < n / 2 ; ++i){ if((j >> i) & 1)sum += a[i]; if(sum > can)break; } if(sum <= can)val.pb(sum); } sort(val.begin(),val.end()); n -= (n / 2); for(int i = 0 ; i < n ; ++i){ cin >> a[i]; // a[i] = 1e18; } val1.reserve((1 << n)); for(int j = 0 ; j < (1 << n) ; ++j){ ll sum = 0; for(int i = 0 ; i < n ; ++i){ if((j >> i) & 1)sum += a[i]; if(sum > can)break; } if(sum <= can)val1.pb(sum); } sort(val1.begin(),val1.end()); int j = val.size() - 1; int res = 0; for(ll c : val1){ while(j >= 0 && val[j] > can - c)--j; res += j + 1; // cout << " " << c << " " << j << endl; } // cout << val1.size(); cout << res; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); if(fopen(taskname".INP","r")){ freopen(taskname".INP", "r",stdin); freopen(taskname".OUT", "w",stdout); } enter(); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 2 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 384 KB | Output is correct |
5 | Correct | 2 ms | 384 KB | Output is correct |
6 | Correct | 2 ms | 384 KB | Output is correct |
7 | Correct | 2 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 384 KB | Output is correct |
2 | Correct | 2 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 384 KB | Output is correct |
5 | Correct | 2 ms | 384 KB | Output is correct |
6 | Correct | 3 ms | 384 KB | Output is correct |
7 | Correct | 2 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 380 KB | Output is correct |
2 | Correct | 2 ms | 384 KB | Output is correct |
3 | Correct | 2 ms | 384 KB | Output is correct |
4 | Correct | 2 ms | 384 KB | Output is correct |
5 | Correct | 3 ms | 384 KB | Output is correct |
6 | Correct | 3 ms | 384 KB | Output is correct |
7 | Correct | 2 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 28 ms | 1920 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 37 ms | 2424 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 59 ms | 3420 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 253 ms | 12712 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 29 ms | 1920 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 342 ms | 16832 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |