Submission #658787

#TimeUsernameProblemLanguageResultExecution timeMemory
658787beaconmcIce Hockey World Championship (CEOI15_bobek)C++14
100 / 100
323 ms20772 KiB
#pragma GCC optimize(" unroll-loops") #pragma gcc optimize("Ofast") #pragma GCC optimization("Ofast") #pragma optimize(Ofast) #include <bits/stdc++.h> typedef long long ll; using namespace std; #define FOR(i, x, y) for(ll i=x; i<y; i++) #define FORNEG(i, x, y) for(ll i=x; i>y; i--) #define fast() ios_base::sync_with_stdio(false);cin.tie(NULL) ll sus[41]; int main(){ ll a,b,n,m; //map<ll, ll> aa, bb; vector<ll> aaa, bbb; vector<ll> aaa2,bbb2; cin >> n >> m; FOR(i,0,n) cin >> sus[i]; a = n/2; b = (n-1)/2 + 1; FOR(i,0,1<<a){ ll cur = 0, temp = 0, tempi = i; while (tempi){ if (tempi&1) temp += sus[cur]; cur++; tempi>>=1; } //aa[temp] += 1; aaa.push_back(temp); } FOR(i,0,1<<b){ ll cur = a, temp = 0, tempi = i; while (tempi){ if (tempi&1) temp += sus[cur]; cur++; tempi>>=1; } //bb[temp] += 1; bbb.push_back(temp); } // ll cur = 0; // for (auto&i : aa){ // aaa.push_back(i.first); // aaa2.push_back(i.second); // } // cur = 0; // for (auto&i : bb){ // cur += i.second; // bbb.push_back(i.first); // bbb2.push_back(cur); // } sort(aaa.begin(), aaa.end()); sort(bbb.begin(), bbb.end()); ll ans = 0; FOR(i,0,aaa.size()){ if (m-aaa[i] < 0) continue; ll lower = upper_bound(bbb.begin(), bbb.end(), m-aaa[i]) - bbb.begin(); ans += lower; } cout << ans; }

Compilation message (stderr)

bobek.cpp:2: warning: ignoring '#pragma gcc optimize' [-Wunknown-pragmas]
    2 | #pragma gcc optimize("Ofast")
      | 
bobek.cpp:3: warning: ignoring '#pragma GCC optimization' [-Wunknown-pragmas]
    3 | #pragma GCC optimization("Ofast")
      | 
bobek.cpp:4: warning: ignoring '#pragma optimize ' [-Wunknown-pragmas]
    4 | #pragma optimize(Ofast)
      | 
bobek.cpp:1:37: warning: bad option '-f unroll-loops' to pragma 'optimize' [-Wpragmas]
    1 | #pragma GCC optimize(" unroll-loops")
      |                                     ^
bobek.cpp:18:10: warning: bad option '-f unroll-loops' to attribute 'optimize' [-Wattributes]
   18 | int main(){
      |          ^
bobek.cpp: In function 'int main()':
bobek.cpp:12:35: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define FOR(i, x, y) for(ll i=x; i<y; i++)
......
   80 |  FOR(i,0,aaa.size()){
      |      ~~~~~~~~~~~~~~                
bobek.cpp:80:2: note: in expansion of macro 'FOR'
   80 |  FOR(i,0,aaa.size()){
      |  ^~~
#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...