723C - Polycarp at the Radio - CodeForces Solution


greedy *1600

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>
#define ll int
#define pi pair<ll,ll>
#define endl "\n"
#define mod 1000000007
using namespace std;
 
int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
   
    ll n,m;
    cin>>n>>m;

    vector<ll>arr(n);
    
    ll mini=(n/m);
    for(int i=0;i<n;i++){
        cin>>arr[i];
    }

    vector<ll>freq(m+1,n/m);
    vector<int>tochange;
    for(int i=0;i<n;i++){
        if(arr[i]>m || freq[arr[i]]==0){
            tochange.push_back(i);
        }else{
            freq[arr[i]]--;
        }
    }

    ll cnt=0;
    for(int i=1;i<=m;i++){
        while(freq[i]!=0){
            cnt++;
            int indx=tochange.back();
            tochange.pop_back();
            arr[indx]=i;
            freq[i]--;

        }
    }
    cout<<mini<<" "<<cnt<<endl;
    for (int i=0;i<n;i++)
    {
        cout<<arr[i]<<" ";
    }
    

    



    return 0;
}


Comments

Submit
0 Comments
More Questions

1370A - Maximum GCD
149A - Business trip
34A - Reconnaissance 2
59A - Word
462B - Appleman and Card Game
1560C - Infinity Table
1605C - Dominant Character
1399A - Remove Smallest
208A - Dubstep
1581A - CQXYM Count Permutations
337A - Puzzles
495A - Digital Counter
796A - Buying A House
67A - Partial Teacher
116A - Tram
1472B - Fair Division
1281C - Cut and Paste
141A - Amusing Joke
112A - Petya and Strings
677A - Vanya and Fence
1621A - Stable Arrangement of Rooks
472A - Design Tutorial Learn from Math
1368A - C+=
450A - Jzzhu and Children
546A - Soldier and Bananas
32B - Borze
1651B - Prove Him Wrong
381A - Sereja and Dima
41A - Translation
1559A - Mocha and Math