Submission #743458

#TimeUsernameProblemLanguageResultExecution timeMemory
743458NintsiChkhaidzeIce Hockey World Championship (CEOI15_bobek)C++17
100 / 100
311 ms20840 KiB
#include <bits/stdc++.h> #define ll long long #define s second #define pb push_back #define f first #define int ll using namespace std; const int N = 45; int a[N],b[N]; vector <int> v1,v2; signed main (){ ios_base::sync_with_stdio(0),cin.tie(NULL),cout.tie(NULL); int n,lim; cin>>n>>lim; for (int i =1; i<=n;i++){ if (i > n/2) cin>>b[i - n/2]; else cin>>a[i]; } int m1 = n/2,m2 = n - m1; for (int i = 1; i < (1<<m1); i++){ int cost=0; for (int j = 1; j <= m1; j++){ if ((i & (1<<(j - 1)))) { cost += a[j]; } } if (cost <= lim) v1.pb(cost); } for (int i = 1; i < (1<<m2); i++){ int cost=0; for (int j = 1; j <= m2; j++){ if ((i & (1<<(j - 1)))) { cost += b[j]; } } if (cost <= lim) v2.pb(cost); } sort(v1.begin(),v1.end()); sort(v2.begin(),v2.end()); int ans = 1 + v1.size() + v2.size(),r=-1; for (int i = v1.size()-1; i >= 0; i--){ while (r + 1 < v2.size() && v1[i] + v2[r + 1] <= lim) ++r; ans += r + 1; } cout<<ans; } /* 5 1000 100 1500 500 500 1000 */

Compilation message (stderr)

bobek.cpp: In function 'int main()':
bobek.cpp:49:16: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   49 |   while (r + 1 < v2.size() && v1[i] + v2[r + 1] <= lim) ++r;
      |          ~~~~~~^~~~~~~~~~~
#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...