Submission #1004100

#TimeUsernameProblemLanguageResultExecution timeMemory
1004100vjudge1Kitchen (BOI19_kitchen)C++17
0 / 100
0 ms348 KiB
/* subtask : 3 */ #pragma GCC optimize("O3", "inline") #include <bits/stdc++.h> using namespace std; #define ins insert #define pb push_back #define int long long int #define pii pair<int, int> #define endl '\n' #define drop(x) cout<<(x)<<endl; return; #define all(x) x.begin(),x.end() const int mod = 1e9 +7, sze = 1e5, inf = 2e18, prime = 23; void mal(){ int n,m,k; cin>>n>>m>>k; vector<int> arr(n); for(int i=0;i<n;i++){ cin>>arr[i]; } vector<int> chefs(m); for(int i=0;i<m;i++){ cin>>chefs[i]; } if(k==1){ multiset<int> lst; for(auto v:chefs){ lst.ins(v); } int ans=0; int cnt=0; for(auto &v:arr){ while(!lst.empty()){ int node = *lst.begin(); lst.erase(lst.begin()); if(node>v){ node-=v; v=0; lst.ins(node); break; } else{ v-=node; } } if(v==0){ cnt++; } } if(cnt!=n){ drop("Impossible"); } for(auto v:lst){ ans+=v; } drop(ans); return; } } signed main() { cin.tie(0)->sync_with_stdio(0); int tt = 1; // cin>>tt; while(tt--){ mal(); } }
#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...