QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#608985#3617. Over the Hill, Part 2AlorithmAC ✓1ms3872kbC++173.7kb2024-10-04 10:04:332024-10-04 10:04:33

Judging History

你现在查看的是最新测评结果

  • [2024-10-04 10:04:33]
  • 评测
  • 测评结果:AC
  • 用时:1ms
  • 内存:3872kb
  • [2024-10-04 10:04:33]
  • 提交

answer

#include<bits/stdc++.h>
#define endl '\n'
using namespace std;
using i64 = long long;

const int mod = 37;

int mp(char c) {
    if ('A' <= c && c <= 'Z')
        return c - 'A';
    if ('0' <= c && c <= '9')
        return c - '0' + 26;
    return 36;
}

int kpow(int x, int y) {
    int res = 1;
    while (y) {
        if (y & 1)
            res = res * x % mod;
        x = x * x % mod;
        y >>= 1;
    }
    return res;
}

int inv(int x) {
    return kpow(x, mod - 2);
}

int gauss(vector<vector<int> >& a) {
    int n = a.size() - 1, m = a[0].size() - 2;

    // for (int i = 1; i <= n; i++)
    //     for (int j = 1; j <= m + 1; j++)
    //         cout << a[i][j] << " \n"[j == m + 1];
    // cout << endl;

    vector<bool> vis(n + 1);
    for (int i = 1; i <= min(n, m); i++) {
        int p = i;
        for (int j = 1; j <= n; j++) {
            if (vis[j])
                continue;
            if (p == 0 || fabs(a[j][i]) > fabs(a[p][i]))
                p = j;
        }

        if (a[p][i] == 0)
            continue;
        swap(a[i], a[p]);
        vis[i] = true;

        int div = inv(a[i][i]);
        for (int j = m + 1; j >= i; j--)
            a[i][j] = a[i][j] * div % mod;
        for (int j = 1; j <= n; j++) {
            if (j == i)
                continue;
            for (int k = m + 1; k >= i; k--) {
                a[j][k] -= a[i][k] * a[j][i] % mod;
                a[j][k] = (a[j][k] % mod + mod) % mod;
            }
        }

        // for (int i = 1; i <= n; i++)
        //     for (int j = 1; j <= m + 1; j++)
        //         cout << a[i][j] << " \n"[j == m + 1];
        // cout << endl;
    }

    for (int i = 1; i <= n; i++) {
        if (all_of(a[i].begin() + 1, a[i].begin() + m + 1, [](double x) {
            return x == 0;
        }) && a[i][m + 1])
            return -1; // No solution
    }
    int cnt = 0;
    for (int i = 1; i <= min(n, m); i++) {
        if (!all_of(a[i].begin() + 1, a[i].end(), [](double x) {
            return x == 0;
        }))
            cnt++;
    }

    if (cnt != m)
        return 0; //Too many solutions
    return 1;
}

void solve() {
    int m;
    cin >> m;

    string s, t;
    getchar();
    getline(cin, s);
    getline(cin, t);
    while (t.length() % m)
        t.push_back(' ');
    while (s.length() < t.length())
        s.push_back(' ');
    int len = t.length();
    int n = len / m;
    vector a(n + 1, vector<int>(m + 2));
    vector ans(m + 1, vector<int>(m + 1));
    s = " " + s;
    t = " " + t;
    // cout << n << ' ' << m << endl;
    // cout << s << endl << t << endl;

    int tmp = 1;
    for (int i = 1; i <= m; i++) {
        for (int j = 1; j <= len; j++) {
            int x = (j - 1) / m + 1;
            int y = (j - 1) % m + 1;
            a[x][y] = mp(s[j]);
        }
        for (int j = i; j <= len; j += m)
            a[(j - 1) / m + 1][m + 1] = mp(t[j]);

        // for (int u = 0; u <= n; u++) {
        //     cout << '{';
        //     for (int v = 0; v <= m + 1; v++)
        //         cout << a[u][v] << ",}"[v == m + 1];
        //     cout << ",\n";
        // }
        // cout << endl;

        tmp = min(tmp, gauss(a));
        if (tmp == 1) {
            for (int j = 1; j <= m; j++)
                ans[i][j] = a[j][m + 1];
        }
    }

    if (tmp == 1) {
        for (int i = 1; i <= m; i++)
            for (int j = 1; j <= m; j++)
                cout << ans[i][j] << " \n"[j == m];
    } else if (tmp == 0) {
        cout << "Too many solutions\n";
    } else if (tmp == -1) {
        cout << "No solution\n";
    }
}

int main() {
    int t = 1;
    // cin >> t;
    while (t--)
        solve();
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3636kb

input:

3
ATTACK AT DAWN
FPLSFA4SUK2W9K3

output:

30 1 9
4 23 7
5 9 13

result:

ok 3 lines

Test #2:

score: 0
Accepted
time: 0ms
memory: 3628kb

input:

3
ATTACK
FPLSFA

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #3:

score: 0
Accepted
time: 0ms
memory: 3520kb

input:

3
ATTACK AT DAWN
EPLSFA4SUK2W9K3

output:

No solution

result:

ok single line: 'No solution'

Test #4:

score: 0
Accepted
time: 0ms
memory: 3832kb

input:

3
ABCABC
JKLMNO

output:

No solution

result:

ok single line: 'No solution'

Test #5:

score: 0
Accepted
time: 0ms
memory: 3524kb

input:

4
ABCDABCD
WXYZWXYY

output:

No solution

result:

ok single line: 'No solution'

Test #6:

score: 0
Accepted
time: 0ms
memory: 3628kb

input:

3
ABCABCDEF
S9GS9G6QA

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #7:

score: 0
Accepted
time: 0ms
memory: 3568kb

input:

3
ABCDEFABC
APRMAMAPR

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #8:

score: 0
Accepted
time: 0ms
memory: 3580kb

input:

3
ABCDEFDEF
GQZHEVHEV

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #9:

score: 0
Accepted
time: 0ms
memory: 3864kb

input:

5
ABCDEABCDEVWXYZQRSTUJKLMN
CUOV8CUOV8PXR660RLK 8QK5M

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #10:

score: 0
Accepted
time: 0ms
memory: 3628kb

input:

4
ABCDABCDABCDWYXZABCDABCDABCDJKLMABCDABCDABCDEHGFABCDABCDABCDSPRQ
LBZMLBZMLBZM7C7OLBZMLBZMLBZMKB5NLBZMLBZMLBZM240SLBZMLBZMLBZM8CNA

output:

26 14 6 32
20 17 16 21
4 19 1 26
3 19 3 8

result:

ok 4 lines

Test #11:

score: 0
Accepted
time: 0ms
memory: 3636kb

input:

1
LJBBPKI7ZUK100NPD5WVP
3RGGQXLNCJXOIIEQSBVPQ

output:

6

result:

ok single line: '6'

Test #12:

score: 0
Accepted
time: 0ms
memory: 3628kb

input:

2
HH0TLX725W1UWEMDT01RQO
1KA7PN7RIIZIPROCP0QKY7

output:

22 3
25 24

result:

ok 2 lines

Test #13:

score: 0
Accepted
time: 0ms
memory: 3568kb

input:

3
CK5HQ3VVYFZJ9K5GF2J4D
O924BS6P8KGMB6ILA9Q3C

output:

31 14 19
10 36 2
5 17 13

result:

ok 3 lines

Test #14:

score: 0
Accepted
time: 0ms
memory: 3796kb

input:

4
G2X2F6ZVK323XT3QXUBKOWWK
5NJPF4N888GW6AMVABTSK5UV

output:

31 21 10 30
11 35 31 9
22 5 9 7
13 18 4 28

result:

ok 4 lines

Test #15:

score: 0
Accepted
time: 0ms
memory: 3628kb

input:

5
4UFHDK VMMSVXWD7E6RRDCPRVYK3FR
GR9Y5OSUHHTQIR60GLQ17OUF66IU74

output:

34 10 12 13 26
36 19 17 12 30
0 14 23 19 33
14 20 21 36 35
19 26 34 27 33

result:

ok 5 lines

Test #16:

score: 0
Accepted
time: 0ms
memory: 3568kb

input:

6
XSQQJX1U7XUIYSLJWKXHHOWF5D865GCC8113P5QZRV
1ZN34LHBC0DT5PT 6P2GHF0Q63HANSYS RLY9CSBZH

output:

17 24 30 15 32 2
9 25 33 21 35 21
32 25 28 33 14 33
8 8 35 5 0 1
0 30 2 0 33 15
12 11 18 12 20 30

result:

ok 6 lines

Test #17:

score: 0
Accepted
time: 0ms
memory: 3664kb

input:

7
9A0KQOHV1SCB6 0X3F6NXJQXTIZHERMRHMSERFFPB7VH77RJE1YSQU6Q
XP9TQ0J8C34NW64EHVHLSVZSCHL6TFG43N8ODXS3SYEA06V6PC89SMSG

output:

12 31 22 8 31 32 6
18 19 35 11 24 17 0
20 32 0 15 6 35 6
16 16 23 34 27 1 21
27 7 23 20 11 7 26
5 28 2 5 5 27 15
20 29 13 6 9 9 12

result:

ok 7 lines

Test #18:

score: 0
Accepted
time: 0ms
memory: 3580kb

input:

8
ZQUS4EQE22V3U EY3LKWS D6ETJTNCUEFDQ0PSY8JGER5BJ8CDWARLUOS4W3CN3IZP9QL703
JILE5BEROW7JYDIWIUM0 FW2NBYLDWD0SBLTR51YVWNM ZU33TOT8AD4ZU6858JSIIH2ISPZ

output:

30 10 24 28 20 15 25 13
11 26 16 30 16 0 30 31
11 22 5 13 26 11 23 1
29 34 36 18 30 21 28 36
18 11 5 30 21 24 11 30
1 22 35 3 33 33 15 6
21 21 25 24 30 33 5 24
27 8 35 33 16 11 22 1

result:

ok 8 lines

Test #19:

score: 0
Accepted
time: 0ms
memory: 3504kb

input:

9
DO1BQM72AW8I959CIBOSJXOJHFPW MTNWY0JSV7RHW7C8ZBJLXHJXGT8ZQT15DXXQ01FPSZLCYOJGXV8CD1GB8PMA9
8YKQFSPVEQI8OM4N6YZIOF1H34XG1RYXYUE7EREH970XQFAF7HZSVJ4J1714O1YSCLMZTZZWL2B1KD0JOYX9DS DZY

output:

22 20 21 26 31 2 19 6 24
23 26 23 18 14 6 10 1 18
10 27 28 24 16 16 18 0 33
33 26 19 4 8 19 20 35 24
31 8 20 4 22 10 34 9 28
5 21 0 24 10 23 10 5 3
1 29 34 3 25 13 19 35 3
28 18 12 36 12 9 23 20 33
20 3 15 29 11 3 5 27 6

result:

ok 9 lines

Test #20:

score: 0
Accepted
time: 0ms
memory: 3608kb

input:

10
GZTE6UID8NGE6WRT1G CK24N 2VQCE1RKV5LEYVDTP 4CD0K4VHJM7AKRSWTYAH1374JSC38WM5VCZEVI0EXTWWS5M314M653WKO2FKJPE8W7V
 JMVQECKH2SH8R6RIJGC00PE48ZL9CG03MHMQ54 4RCL483H HVEMARMTU30ZRHVG7OF06AUM68IKCDSTDQJIB6W8UCMCU9ZJ9HQ9ZE3TN6XLE

output:

28 6 28 16 31 1 10 17 26 27
36 3 33 10 34 5 24 13 8 36
0 36 32 25 13 22 28 2 32 6
20 32 11 8 11 2 26 28 36 16
6 21 14 29 4 20 27 27 33 18
23 34 24 13 29 12 18 6 36 36
11 33 31 21 16 33 18 3 8 16
26 24 3 13 23 30 1 2 4 22
4 29 32 25 10 36 15 26 21 3
8 14 10 15 23 17 36 7 21 10

result:

ok 10 lines

Test #21:

score: 0
Accepted
time: 0ms
memory: 3796kb

input:

1
9YX30L5F3SPDDVXM8UKDF
AAAAAAAAAAAAAAAAAAAAA

output:

0

result:

ok single line: '0'

Test #22:

score: 0
Accepted
time: 0ms
memory: 3636kb

input:

2
W0YLPUEHIHUKSL44OH091F
AAAAAAAAAAAAAAAAAAAAAA

output:

0 0
0 0

result:

ok 2 lines

Test #23:

score: 0
Accepted
time: 0ms
memory: 3604kb

input:

3
V0M6APBHPX8JNHIMTHLA8
AAAAAAAAAAAAAAAAAAAAA

output:

0 0 0
0 0 0
0 0 0

result:

ok 3 lines

Test #24:

score: 0
Accepted
time: 0ms
memory: 3600kb

input:

4
UA4WB1LPQD76N 5CV7NQF7 3
AAAAAAAAAAAAAAAAAAAAAAAA

output:

0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0

result:

ok 4 lines

Test #25:

score: 0
Accepted
time: 0ms
memory: 3568kb

input:

5
2E42D78RKVIY OODBH415UEPMH8BD6
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

output:

0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0

result:

ok 5 lines

Test #26:

score: 0
Accepted
time: 0ms
memory: 3520kb

input:

6
I NCXVKGDAC5U9TTVNLP4UK1Y84C5E233L6HQKIHRM
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

output:

0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0

result:

ok 6 lines

Test #27:

score: 0
Accepted
time: 0ms
memory: 3632kb

input:

7
AAMI1HC 2C3UK2N2RR36CZSTFVX FQ5AHGO2ZTFX6MZXFLHOJYGUJ7G5
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

output:

0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0

result:

ok 7 lines

Test #28:

score: 0
Accepted
time: 0ms
memory: 3872kb

input:

8
PWTP08OZGVBU3LRQPJO7Q3RLLZCNWQ239WEE7HGFNKQOBDL1JGL16GQZ2GH6CIWLOBU7JSAZ
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

output:

0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

result:

ok 8 lines

Test #29:

score: 0
Accepted
time: 0ms
memory: 3868kb

input:

9
JEA8DR6S4CKCTP PGRRT93NRC0OIINYENLMI7P80USOS8AHT92OYSYVSM4S6YQ8O69GK1CCUPNHSCRP49RPYFLNL5K
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

output:

0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0

result:

ok 9 lines

Test #30:

score: 0
Accepted
time: 0ms
memory: 3632kb

input:

10
1KZACUXS7TF3WMLVKOHD1FYKRKYT06L3DOD6DD0X5DKFIJYWJ794ZWAF4Q1QWI41I4GYO5BY0WC88OET7IBFZL108M 1QKQOAHKZWRZF5L7DQ5
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

output:

0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0

result:

ok 10 lines

Test #31:

score: 0
Accepted
time: 0ms
memory: 3568kb

input:

1
K87O5350BKMIEEZO95X54
K87O5350BKMIEEZO95X54

output:

1

result:

ok single line: '1'

Test #32:

score: 0
Accepted
time: 0ms
memory: 3640kb

input:

2
80XUZIBZL1ZYC26APIZKRE
XXGG7700BBMM4466XX99VV

output:

1 1
1 1

result:

ok 2 lines

Test #33:

score: 0
Accepted
time: 0ms
memory: 3644kb

input:

3
TIOX7Q0682WYQ3ETU10IG
EEE999SSSAAAMMM333DDD

output:

1 1 1
1 1 1
1 1 1

result:

ok 3 lines

Test #34:

score: 0
Accepted
time: 0ms
memory: 3628kb

input:

4
5MHPI45L4YQXMD01YGA9KKHS
2222GGGGTTTT55552222IIII

output:

1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1

result:

ok 4 lines

Test #35:

score: 0
Accepted
time: 0ms
memory: 3628kb

input:

5
KY0EYL4ZXSB8AOEVVLQP U 0JOL9 P
OOOOO77777QQQQQKKKKKQQQQQAAAAA

output:

1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1

result:

ok 5 lines

Test #36:

score: 0
Accepted
time: 0ms
memory: 3580kb

input:

6
GWKC8MATVGJVBVQSYBA52TU5R30FSCU 6AS1OP03QQ
MMMMMMCCCCCCHHHHHHSSSSSSXXXXXXWWWWWWFFFFFF

output:

1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1

result:

ok 6 lines

Test #37:

score: 0
Accepted
time: 0ms
memory: 3576kb

input:

7
J6M6267VMJKO0RJ0JPDPSO8XPWE9KSSO8EX8OH1DCC4EDIVQO472ONSY
44444449999999VVVVVVV       KKKKKKKPPPPPPPWWWWWWWMMMMMMM

output:

1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1

result:

ok 7 lines

Test #38:

score: 0
Accepted
time: 0ms
memory: 3864kb

input:

8
KEPT4UD1DHV79BGKO NCI5F M5KZK6QLNBAS239GO5R84QG5QG5A9IZ P JW5KDVV58WZ4A0
RRRRRRRRFFFFFFFF88888888        TTTTTTTT55555555JJJJJJJJ        EEEEEEEE

output:

1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1

result:

ok 8 lines

Test #39:

score: 0
Accepted
time: 0ms
memory: 3632kb

input:

9
7I4DP9CBZ FZ20WBMGRFTDHZQUWEO41GDLV2QIR9NZIVTULM1ULBZ2U0C4G1A9TKRVE349 KDN5MAJYON5ZZT5X7GH
EEEEEEEEENNNNNNNNNXXXXXXXXX777777777OOOOOOOOOHHHHHHHHHRRRRRRRRRHHHHHHHHHIIIIIIIIIPPPPPPPPP

output:

1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1

result:

ok 9 lines

Test #40:

score: 0
Accepted
time: 0ms
memory: 3572kb

input:

10
SAEOOPTQKDZ1JX6WWRGT U89Y1IWKAY9 V9VRTW4JMFNQF22AT95CYUFOMCO6XHSFJ2V8KAE5NLN74CBS3RE67HPWPEJWXEM31752X0GLRUIQ5
CCCCCCCCCCRRRRRRRRRR5555555555BBBBBBBBBBYYYYYYYYYYLLLLLLLLLLCCCCCCCCCC1111111111HHHHHHHHHHJJJJJJJJJJBBBBBBBBBB

output:

1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1

result:

ok 10 lines

Test #41:

score: 0
Accepted
time: 0ms
memory: 3564kb

input:

2
 F72Z D7EM29SFFQF7I971
 F72Z D7EM29SFFQF7I971

output:

1 0
0 1

result:

ok 2 lines

Test #42:

score: 0
Accepted
time: 0ms
memory: 3832kb

input:

3
M256N80I6DPFL8ZGXVTVU
M256N80I6DPFL8ZGXVTVU

output:

1 0 0
0 1 0
0 0 1

result:

ok 3 lines

Test #43:

score: 0
Accepted
time: 0ms
memory: 3864kb

input:

4
6BLXA3UQR 0ODE1D7WZ7IK7
6BLXA3UQR 0ODE1D7WZ7IK7

output:

1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1

result:

ok 4 lines

Test #44:

score: 0
Accepted
time: 0ms
memory: 3828kb

input:

5
WM0OGXG9DS3M18FMLXCEFQION96NAB
WM0OGXG9DS3M18FMLXCEFQION96NAB

output:

1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1

result:

ok 5 lines

Test #45:

score: 0
Accepted
time: 0ms
memory: 3800kb

input:

6
19GI0 LBU0RV6 E1ZQV8SZNRVM GUZI2LV6S8O0OKA
19GI0 LBU0RV6 E1ZQV8SZNRVM GUZI2LV6S8O0OKA

output:

1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 1

result:

ok 6 lines

Test #46:

score: 0
Accepted
time: 0ms
memory: 3640kb

input:

7
HSXGJZU 2BF BYRLYSJJABLE4Y90I322JF53LKR8XNAU 5WW1G181G4L
HSXGJZU 2BF BYRLYSJJABLE4Y90I322JF53LKR8XNAU 5WW1G181G4L

output:

1 0 0 0 0 0 0
0 1 0 0 0 0 0
0 0 1 0 0 0 0
0 0 0 1 0 0 0
0 0 0 0 1 0 0
0 0 0 0 0 1 0
0 0 0 0 0 0 1

result:

ok 7 lines

Test #47:

score: 0
Accepted
time: 0ms
memory: 3636kb

input:

8
NGX8CPJNDNK26N30LQG6MZE0HZLYM8KBC987VB7FGMBG6N KIVUGG9YOMFYICW1EO9A0KYVS
NGX8CPJNDNK26N30LQG6MZE0HZLYM8KBC987VB7FGMBG6N KIVUGG9YOMFYICW1EO9A0KYVS

output:

1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1

result:

ok 8 lines

Test #48:

score: 0
Accepted
time: 0ms
memory: 3868kb

input:

9
JB2UHSX4ZLLHDIYNMTY2Y8NJ4ZE 9A9K4S0D49L170JZVQHV HPPFXS9GUT9X5EQQ4DLYBK7D2G705MKR5UG6QBR4X
JB2UHSX4ZLLHDIYNMTY2Y8NJ4ZE 9A9K4S0D49L170JZVQHV HPPFXS9GUT9X5EQQ4DLYBK7D2G705MKR5UG6QBR4X

output:

1 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0
0 0 0 0 1 0 0 0 0
0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 1

result:

ok 9 lines

Test #49:

score: 0
Accepted
time: 0ms
memory: 3644kb

input:

10
R0HE7PAYYMFDTG3R1GT9SJBXVMF26JU4WXQA054HG88H1AR9IRUYZAYTMDPAZMH85KS68Z34HYVTCYHM8AK667GZD6GRYUR4I47U 6IFSY 7FE
R0HE7PAYYMFDTG3R1GT9SJBXVMF26JU4WXQA054HG88H1AR9IRUYZAYTMDPAZMH85KS68Z34HYVTCYHM8AK667GZD6GRYUR4I47U 6IFSY 7FE

output:

1 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 0 1

result:

ok 10 lines

Test #50:

score: 0
Accepted
time: 0ms
memory: 3792kb

input:

10
T73FTL5066ABSFEJSABM66E9BTHLWYHFRF2QZZI9JNZEOP0KBKP6BX31K7V29ZXC95L8L 3 B5O4AF5IFYB9Z30Y7SLGIU752L3DWV3F05MRLO
D1F0 V8WZZ3PD7I4BXO1EPLU1WIENEEUL17 8IT23J6A1V02WV 0MR8P42 WE5OMROALVY22Y4E 0M56TKN9RPR4LDDLSP1ME4ZJPE1PAMGK3J

output:

No solution

result:

ok single line: 'No solution'

Test #51:

score: 0
Accepted
time: 0ms
memory: 3604kb

input:

8
TOHRIK8HC9H50F6UHLMRQ9G3EXMQSF8WCIPR6RNRN67RH69UJ A7MRG7199REY6OK3KDBREQ
XAN GYHRDDE9UY9UI0WQE1LAPU0 GVRZYKZBNQCM6A7SYTGCVCZ0XD4BSTV8MA6V V6K853K

output:

No solution

result:

ok single line: 'No solution'

Test #52:

score: 0
Accepted
time: 0ms
memory: 3568kb

input:

6
4AWVGQ5CCDBA5AJHMBXVAGP1DOWNVWJRIRU44J0NQK
W68WRMJCRSYZ 4S6IP0K38MSZ6UOY39VCF7PSX6AX

output:

No solution

result:

ok single line: 'No solution'

Test #53:

score: 0
Accepted
time: 0ms
memory: 3668kb

input:

5
RGAXMS672A2ZQ 66R72NQQ53VG7U2W
DHXXUVPOQOP0W1TMQOYPAWLYMER3DI

output:

No solution

result:

ok single line: 'No solution'

Test #54:

score: 0
Accepted
time: 0ms
memory: 3664kb

input:

10
DDYZCX4GSDFHYZ9QN72SVOLIN JK9CRVYA R94AQ7OC1OGQONSN5RWZE VIN82 Q L CFVZ8NFGSU6IPNZ PJ6KUHG2U7G099FG4NZVF7MFAX1
4D6JMVUXJSLWSZ7MU9G K935GB01QX IYJOBXZJFHS26L118SUW JVDJIS76 KQW8F6EFT1635I A46I6ZU71PCEI7T9I WMW7DEWKEBCNKVMO

output:

No solution

result:

ok single line: 'No solution'

Test #55:

score: 0
Accepted
time: 0ms
memory: 3564kb

input:

10
NZ9B81E4JB8OQ0WHE7K3 TNAZP8WE JR49FUV3BRTGCLJJ4ZJ80435TM7HLW6HEHFLJ34GHCQ46B4WACE7BTFSJZA1 OBZBYLO5UKK2 0O52VJ
EVGZGFR1ST89PL7RPJKXP8SXP8XFP2AE65XTIY75EHL7DJ80VNPFLEDBBA46N QDDBH6 SP2X A3I CUG6I 6IR 54L4JIM FBLCN  AX6I1UJ

output:

No solution

result:

ok single line: 'No solution'

Test #56:

score: 0
Accepted
time: 0ms
memory: 3636kb

input:

5
QN2ES G4 Q8WOFX8KGGRV2GS2CO1VZ
XCOS7D0TF22QSBGP TRZFIY9EBNLP8

output:

No solution

result:

ok single line: 'No solution'

Test #57:

score: 0
Accepted
time: 0ms
memory: 3668kb

input:

5
S52MISM62RVMMIONNKZ9PFT31PT2Z5
DGG 0FHJ34CA474Z2XJISS6GNYP5WJ

output:

No solution

result:

ok single line: 'No solution'

Test #58:

score: 0
Accepted
time: 0ms
memory: 3460kb

input:

5
3979DV73002MS0IUG4O2NY0EV3X4VH
IBW4BF24XJU07F5IF70 R8XFNGKEUQ

output:

No solution

result:

ok single line: 'No solution'

Test #59:

score: 0
Accepted
time: 0ms
memory: 3636kb

input:

4
BRE3X5CVF9SHK7B55 0BYGHI
U94Q 8AQ8MSLTVJQX1XI67K6

output:

No solution

result:

ok single line: 'No solution'

Test #60:

score: 0
Accepted
time: 0ms
memory: 3636kb

input:

2
VYP9AYV9
7P2F6QXK

output:

30 26
7 13

result:

ok 2 lines

Test #61:

score: 0
Accepted
time: 0ms
memory: 3800kb

input:

2
AA
BC

output:

No solution

result:

ok single line: 'No solution'

Test #62:

score: 0
Accepted
time: 0ms
memory: 3628kb

input:

2
AA
AA

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #63:

score: 0
Accepted
time: 0ms
memory: 3624kb

input:

3
BCDBDECFHDHK
DCDEDEHFHKHK

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #64:

score: 0
Accepted
time: 0ms
memory: 3624kb

input:

3
BCDBDECFHDHKBCE
DCDEDEHFHKHKECD

output:

0 0 1
0 1 0
1 1 0

result:

ok 3 lines

Test #65:

score: 0
Accepted
time: 0ms
memory: 3640kb

input:

3
BCEBCDBDECFHDHK
ECDDCDEDEHFHKHK

output:

0 0 1
0 1 0
1 1 0

result:

ok 3 lines

Test #66:

score: 0
Accepted
time: 1ms
memory: 3656kb

input:

10
 0GKB953S9MGW6LBLH3TOQ1LTGC1WFOPWQHQJS6L76LQSDHXXXGAEHCYAIFLZY73676N0SYT0MW MTCQDZ2FM2ZOT2RITUF82W66VHESASV2PJUKJEBAZX3F8ZDDZI10PDA6L30T8C3K3SQT9XLV4EKTSTVSBM9XNIKSR960NLV2L5E18JGTVFXFXK7H1PG7YB864 CWOYIDJXYCZB6Q7F54P5ADHI8GKHJ4084I VCYU6Q4W4OIPFQDS2W8Z0BXFDPX4VMPRIC6PX7ZT285JW2D1MN2PP2K2S7ECOOP1...

output:

15 15 34 34 0 8 7 7 23 28
11 19 18 33 27 18 15 18 23 22
13 28 23 16 22 31 21 28 23 30
11 25 18 26 23 35 12 15 35 33
12 36 9 16 1 6 18 32 24 31
17 14 17 24 10 24 35 10 26 3
19 14 15 4 11 33 19 0 35 22
27 4 19 29 29 25 31 7 11 32
34 3 0 0 6 16 10 1 0 21
24 30 15 13 18 0 10 35 27 35

result:

ok 10 lines

Test #67:

score: 0
Accepted
time: 1ms
memory: 3656kb

input:

10
 0GKB953S9MGW6LBLH3TOQ1LTGC1WFOPWQHQJS6L76LQSDHXXXGAEHCYAIFLZY73676N0SYT0MW MTCQDZ2FM2ZOT2RITUF82W66VHESASV2PJUKJEBAZX3F8ZDDZI10PDA6L30T8C3K3SQT9XLV4EKTSTVSBM9XNIKSR960NLV2L5E18JGTVFXFXK7H1PG7YB864 CWOYIDJXYCZB6Q7F54P5ADHI8GKHJ4084I VCYU6Q4W4OIPFQDS2W8Z0BXFDPX4VMPRIC6PX7ZT285JW2D1MN2PP2K2S7ECOOP1...

output:

No solution

result:

ok single line: 'No solution'

Test #68:

score: 0
Accepted
time: 0ms
memory: 3608kb

input:

3
ABCAXYAEI
7SEOQEV9Q

output:

Too many solutions

result:

ok single line: 'Too many solutions'