/**
 *   /\_/\
 *  (= ._.)
 *  / >01<\
 *
*/

#include<bits/stdc++.h>
#define task ""
#define ii pair<int, int>
#define ll long long
#define ld long double
#define fi first
#define se second
#define faster ios_base::sync_with_stdio(NULL); cin.tie(NULL);
#define F if(fopen(task".inp","r")){ freopen(task".inp","r",stdin); freopen(task".out","w",stdout); }
using namespace std;

const int Q = 1e6 + 21;
const int N = 1e3 + 21;
const int LOG = 20;
const int mod = 1e9 + 7;
const int inf = 1e9 + 7;
const int dx[] = {0, 0, 1, -1};
const int dy[] = {1, -1, 0, 0};

int n;
int d[Q];

const int p[5] = {1, 10, 100, 1000, 10000};
int dif[5][10][2];

int cnt[Q];

void init()
{
    for(int i = 0; i < 5; i++)
    {
        for(int c = 0; c < 10; c++)
        {
            dif[i][c][0] = (c == 9 ? -9 * p[i] : p[i]);
            dif[i][c][1] = (c == 0 ? 9 * p[i] : -p[i]);
        }
    }
}

void solve()
{
    cin >> n;

    init();

    for(int i = 0; i <= 1e6; i++)
        d[i] = 26;

    queue<int> q;

    int ans = 25;

    for(int i = 1; i <= n; i++)
    {
        string key;
        cin >> key;

        int s = 0;
        for(int i = 0; i < 5; i++)
            s = s * 10 + (key[i] - '0');

        cnt[d[s]]--;
        cnt[0]++;

        d[s] = 0;

        q.push(s);

        while(q.size())
        {
            int u = q.front();
            q.pop();

            int temp = u;

            for(int i = 0; i < 5; i++)
            {
                int c = temp % 10;
                temp /= 10;

                for(int dir = 0; dir < 2; dir++)
                {
                    int v = u + dif[i][c][dir];

                    if(d[v] > d[u] + 1)
                    {
                        cnt[d[v]]--;

                        d[v] = d[u] + 1;
                        q.push(v);

                        cnt[d[v]]++;
                    }
                }
            }
        }

        while(ans > 0 && cnt[ans] == 0)
            ans--;

        cout << ans << " " << cnt[ans];
        cout << '\n';
    }
}

signed main()
{
    faster;
    F;

    int test = 1;

//    cin >> test;

    while(test--)
    {
        solve();
    }

    cerr << "Time elapsed: " << (1.0 * clock() / CLOCKS_PER_SEC) << " s.\n";

    return 0;
}

