?
# | Author | Problem | Lang | Verdict | Time | Memory | Sent | Judged | |
---|---|---|---|---|---|---|---|---|---|
188285702 |
Practice: DaiRuiChen007 |
1552E - 10 | C++14 (GCC 6-32) | Accepted | 15 ms | 252 KB | 2023-01-07 09:50:12 | 2023-01-07 09:50:12 |
// LUOGU_RID: 98918259 #include<bits/stdc++.h> #define pii pair<int,int> using namespace std; const int MAXN=101; pii ans[MAXN]; vector <int> p[MAXN]; signed main() { int n,m; scanf("%d%d",&n,&m); vector <pii> vec; for(int i=1;i<=n;++i) vec.push_back(make_pair(0,i)); int t=ceil((double)n/(m-1)); for(int i=1;i<=n*m;++i) { int col; scanf("%d",&col); p[col].push_back(i); } for(int i=1;i<m;++i) { for(auto &u:vec) u.first=p[u.second][i]; sort(vec.begin(),vec.end()); for(int j=1;!vec.empty()&&j<=t;++j) { int k=vec.begin()->second; vec.erase(vec.begin()); ans[k]=make_pair(p[k][i-1],p[k][i]); } } for(int i=1;i<=n;++i) printf("%d %d\n",ans[i].first,ans[i].second); return 0; }
?
?
?
?