Submission #905210

#TimeUsernameProblemLanguageResultExecution timeMemory
905210Ahmed57Super Dango Maker (JOI22_dango3)C++17
0 / 100
1777 ms664 KiB
#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++;
            for(int i = 0;i<mid;i++){
                for(auto j:v[i]){
                    taked[j] = cnt;
                }
            }
            vector<int> qu;
            for(int j = 1;j<=n*m;j++){
                if(taked[j]!=cnt){
                    qu.push_back(j);
                }
            }
            if(n-Query(qu)<=mid){
                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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...