제출 #1316474

#제출 시각아이디문제언어결과실행 시간메모리
1316474exoworldgdTopical (NOI23_topical)C++20
28 / 100
136 ms23428 KiB
#include<bits/stdc++.h> #define int long long #define exoworldgd cin.tie(0)->sync_with_stdio(0),cout.tie(0) using namespace std; int n,m,c[100005],val[100005],ans; priority_queue<array<int,2>,vector<array<int,2>>,greater<>>pq[100005]; queue<int>q; signed main(void){ exoworldgd; cin>>n>>m; int a[n][m],b[n][m]; for(auto&i:a)for(auto&j:i)cin>>j; for(auto&i:b)for(auto&j:i)cin>>j; for(int i=0;i<n;i++){ for(int j=0;j<m;j++)a[i][j]?pq[j].push({a[i][j],i}),0:c[i]++; if(c[i]==m)q.push(i); } while(q.size()){ int u=q.front();q.pop(),ans++; for(int i=0,v;i<m;i++){ val[i]+=b[u][i]; while(pq[i].size()&&pq[i].top()[0]<=val[i]){ v=pq[i].top()[1],pq[i].pop(),c[v]++; if(c[v]==m)q.push(v); } } } cout<<ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...