#include <bits/stdc++.h>

#define ll long long
#define ch(x) (S[x] - 'a')

bool pomoc(std::vector<ll>& v, int l)
{
    for(int i = 0; i < l; i++)
        if(v[i] == 0)
            return true;

    return false;
}

int main()
{
    std::ios_base::sync_with_stdio(0);
    std::cin.tie(0);

    int N, K;
    std::string S;
    std::vector<ll> r;

    std::vector<ll> c(30, 0);
    int lc;

    std::cin >> N >> K;
    std::cin >> S;

    r.push_back(1);
    c[ch(0)]++;
    lc = ch(0);

    if(std::is_sorted(S.begin(), S.end()))
    {
        for(int i = 1; i < N; i++)
        {
            c[ch(i)]++;
            if(ch(i) == K - 1 && c[ch(i)])
            {
                if(!pomoc(c, K))
                    r.push_back(2);
                else
                    r.push_back(1);
                lc = ch(i);
                continue;
            }

            if(ch(i) == lc && lc != K - 1)
                r.push_back(1);

            if(ch(i) != lc)
                r.push_back(1);

            lc = ch(i);
        }
    }
    else
    {
        for(int i = 1; i < N; i++)
        {
            c[ch(i)]++;
            if(pomoc(c, K))
                r.push_back(1);
            else
                r.push_back((*std::min_element(c.begin(), c.begin() + K)) + 1);
        }
    }

    for(const ll re : r)
        std::cout << re << " ";

    return 0;
}