This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "dango3.h"
#include <bits/stdc++.h>
using namespace std;
/*
min freq
max freq
*/
void Solve(int n,int m){
vector<int> v[m];
int cnt = 0;
int taked[n*m+1] = {0};
for(int i = 1;i<=n*m;i++){
int l = 0 , r = m-1 , ans = 0;
while(l<=r){
int mid = (l+r)/2;
vector<int> d;
cnt++;
taked[i] = cnt;
for(int j = 0;j<=mid;j++){
for(auto e:v[j]){
taked[e] = cnt;
}
}
vector<int> qu;
for(int j = 1;j<=n*m;j++){
if(taked[j]!=cnt){
qu.push_back(j);
}
}
if(m-Query(qu)<=mid+1){
ans = mid;
r = mid-1;
}else l = mid+1;
}
v[ans].push_back(i);
}
for(int i =0;i<m;i++){
Answer(v[i]);
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |