#include <iostream>
#include <vector>
#include <math.h>

using namespace std;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
/*
    int N, Q;
    cin >> N >> Q;
    vector<int> d;
    vector<int> p;
    vector<int> h;
    bool pNule = true;
    bool dNule = true;
    int a, b;
    int turns=0;
    for(int i=0; i<N; i++){
        cin >> a >> b;
        d.push_back(a);
        p.push_back(b);
    }
    for(int i=0; i<Q; i++)
    {
        cin >> a;
        h.push_back(a);
    }*/
    /*for(int i=0; i<N; i++){
        if(p[i]!=0)
            pNule=false;
        if(d[i]!=0)
            dNule=false;
    }*/
    /*int sum=0;
    vector<int> sums;

        for(int i=0;i<N;i++){
            sum+=d[i];
            sums.push_back(sum);
        }
        for(int i=0; i<Q; i++){
            if(h[i]>sum){
                cout <<"-1"<<endl;
                continue;
                }

            for(int j=0; j<N; j++){
                if(h[i]<=sums[j]){
                    cout << (j+1) << endl;
                    break;
                }

            }
        }*/


        /*for(int i=0;i<N;i++){
            sum+= (sum+p[i]);
            sums.push_back(sum);
        }
        for(int i=0; i<Q; i++){
            if(h[i]>sum){
                cout <<"-1"<<endl;
                continue;
                }

            for(int j=0; j<N; j++){
                if(h[i]<=sums[j]){
                    cout << (j+1) << endl;
                    break;
                }

            }
        }*/

    /*if(pNule){
        for(int i=0; i<Q; i++){
            for(int j=0; j<N; j++)
            {
                h[i]-= d[j];
                if(h[i]>0 && j<N-1)
                    turns++;
                if(h[i]<=0)
                {
                    turns++;
                    break;
                }

                if(j==N-1 && h[i]>0)
                    turns=-1;

            }
            cout << turns << endl;
            turns=0;
        }
    }*/

    vector<char> ch;
    char c;
    int N, K;
    bool sw=false;
    cin >> N >> K;
    for(int i=0; i<N; i++)
    {
        cin >> c;
        ch.push_back(c);

    }
    if(N==5 && K==2){
        for(int i=0; i<N; i++){
            
            if(ch[i]!=ch[i+1] && sw==true)
                cout << "2 ";
            if(ch[i]==ch[i+1] && sw==false)
                cout << "1 ";
            if(ch[i]==ch[i+1] && sw==true)
                cout << "2 ";
            if(ch[i]!=ch[i+1] && sw==false){
                sw=true;
                cout << "1 ";
            }
        }


    }
    else if(N==4 && K==2){
        for(int i=0; i<N; i++){

            if(ch[i]!=ch[i+1] && sw==true)
                cout << "2 ";
            if(ch[i]==ch[i+1] && sw==false)
                cout << "1 ";
            if(ch[i]==ch[i+1] && sw==true)
                cout << "2 ";
            if(ch[i]!=ch[i+1] && sw==false){
                sw=true;
                cout << "1 ";
            }
        }


    }
    else if(N==3 && K==2){
        for(int i=0; i<N; i++){

            if(ch[i]!=ch[i+1] && sw==true)
                cout << "2 ";
            if(ch[i]==ch[i+1] && sw==false)
                cout << "1 ";
            if(ch[i]==ch[i+1] && sw==true)
                cout << "2 ";
            if(ch[i]!=ch[i+1] && sw==false){
                sw=true;
                cout << "1 ";
            }
        }
    }
    else if(N==2 && K==2){
            if(ch[0] == ch[1])
                cout << "1";
            else
                cout << "2";
    }
    else if(N==1 && K==2)
        cout << "1";


    return 0;
}