Загрузка данных


#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    
    int liczbaLicznikow,liczbaOperacji;
    if(!(cin>>liczbaLicznikow>>liczbaOperacji)) return 0;
    
    vector<int> wartosci(liczbaLicznikow+1,0);
    int aktualneMaksimum=0;
    int ostatniaBaza=0;
    
    for(int i=0; i<liczbaOperacji; i++){
        int przycisk;
        cin>>przycisk;
        
        if(przycisk==liczbaLicznikow+1){
            ostatniaBaza=aktualneMaksimum;
        }else{
            if(wartosci[przycisk]<ostatniaBaza){
                wartosci[przycisk]=ostatniaBaza;
            }
            wartosci[przycisk]++;
            if(wartosci[przycisk]>aktualneMaksimum){
                aktualneMaksimum=wartosci[przycisk];
            }
        }
    }
    
    for(int i=1; i<=liczbaLicznikow; i++){
        if(wartosci[i]<ostatniaBaza){
            wartosci[i]=ostatniaBaza;
        }
        cout<<wartosci[i]<<(i==liczbaLicznikow?"":" ");
    }
    cout<<"\n";
    
    return 0;
}