QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#608829#3617. Over the Hill, Part 2MCdycAC ✓33ms5596kbC++235.0kb2024-10-04 04:53:062024-10-04 04:53:06

Judging History

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

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

answer

#include <bits/stdc++.h>
using namespace std;
const int Mod = 37;
const int inf = 0x3f3f3f3f;
struct modint
{
    int v;
    modint() : v(0)
    {
    }
    modint(int v) : v(v % Mod)
    {
    }
    int &operator()()
    {
        return v;
    }
    friend modint operator+(modint a, modint b)
    {
        return a() + b();
    }
    friend modint operator-(modint a, modint b)
    {
        return a() + Mod - b();
    }
    friend modint operator*(modint a, modint b)
    {
        return a() * b();
    }
    friend modint operator/(modint a, modint b)
    {
        return a * b.inv();
    }
    friend bool operator>(modint a, modint b)
    {
        return a() > b();
    }
    friend bool operator==(modint a, modint b)
    {
        return a() == b();
    }
    friend bool operator!=(modint a, modint b)
    {
        return a() != b();
    }
    friend modint operator^(modint a, int b)
    {
        modint ans(1);
        while (b)
        {
            if (b & 1)
                ans *= a;
            a *= a, b >>= 1;
        }
        return ans;
    }
    modint inv()
    {
        return (*this) ^ (Mod - 2);
    }
    modint &operator+=(modint b)
    {
        return *this = *this + b;
    }
    modint &operator-=(modint b)
    {
        return *this = *this - b;
    }
    modint &operator*=(modint b)
    {
        return *this = *this * b;
    }
    modint &operator/=(modint b)
    {
        return *this = *this / b;
    }
    modint &operator^=(int b)
    {
        return *this = *this ^ b;
    }
    void read()
    {
        scanf("%llu", &v), v %= Mod;
    }
    void print()
    {
        cout << v;
    }
    void println()
    {
        cout << v << "\n";
    }
};
struct guass
{
    vector<modint> ans;
    int f = 0;

    vector<vector<modint>> a;
    guass(vector<vector<modint>> &M) : a(M)
    {
    }
    ~guass()
    {
    }
    int init()
    {
        int n = a.size();
        int m = a[0].size() - 1;
        ans.resize(m);
        int flag = 0;
        int curi = 0;
        for (int i = 0; i < m; i++)
        {
            for (int j = curi; j < n; j++)
            {
                if (a[j][i] > a[curi][i])
                {
                    swap(a[j], a[curi]);
                }
            }
            if (a[curi][i] == 0)
            {
                continue;
            }
            else
            {
                for (int j = n - 1; j > curi; --j)
                {
                    modint t = a[j][i] / a[curi][i];
                    for (int k = i; k < m + 1; k++)
                    {
                        a[j][k] -= t * a[curi][k];
                    }
                }
                curi++;
            }
        }
        if (curi != m)
        {
            f = inf;
        }
        for (int i = n - 1; i >= curi; i--)
        {
            if (a[i].back() != 0)
            {
                f = -1;
                return 0;
            }
        }
        if (~f && f != inf && curi == m)
        {
            for (int i = curi - 1; i >= 0; i--)
            {
                modint t = a[i].back();
                for (int j = m - 1; j > i; j--)
                {
                    t -= a[i][j] * ans[j];
                }
                ans[i] = t * a[i][i].inv();
            }
        }

        return 0;
    }
};
int mp(char c)
{
    if ('A' <= c && c <= 'Z')
        return c - 'A';
    if ('0' <= c && c <= '9')
        return c - '0' + 26;
    if (c == ' ')
        return 36;
    return 0;
}
void solve()
{
    int m;
    cin >> m;
    cin.ignore();
    string s, t;
    getline(cin, s);
    getline(cin, t);

    int len = s.length();
    while (len % m)
    {
        s.push_back(' ');
        len++;
        t.push_back(' ');
    }

    int n = len / m;
    // cout << s << ' ' << t << endl;
    // cout << m << ' ' << n << endl;
    vector<vector<modint>> ans(m, vector<modint>(m));
    vector<vector<modint>> a(len, vector<modint>(m * m + 1));

    for (int i = 0; i < len; i++)
    {
        for (int j = 0; j < m; j++)
        {
            a[i / m * m + j][i % m + j * m] = mp(s[i]);
        }
        a[i][m * m] = mp(t[i]);
    }

    auto tmp = guass(a);
    tmp.init();
    if (tmp.f > 0)
    {
        cout << "Too many solutions\n";
        return;
    }
    else if (tmp.f == 0)
    {
        for (int i = 0; i < m; i++)
        {
            for (int j = 0; j < m; j++)
            {
                ans[i][j] = tmp.ans[i * m + j];
            }
        }
    }
    else if (tmp.f == -1)
    {
        cout << "No solution\n";
        return;
    }
    for (int i = 0; i < m; i++)
    {
        for (int j = 0; j < m; j++)
            cout << ans[i][j].v << " \n"[j == m - 1];
    }
}

/*
ATTACK AT DAWN
FPLSFA4SUK2W9K3

*/

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

詳細信息

Test #1:

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

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: 3788kb

input:

3
ATTACK
FPLSFA

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #3:

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

input:

3
ATTACK AT DAWN
EPLSFA4SUK2W9K3

output:

No solution

result:

ok single line: 'No solution'

Test #4:

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

input:

3
ABCABC
JKLMNO

output:

No solution

result:

ok single line: 'No solution'

Test #5:

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

input:

4
ABCDABCD
WXYZWXYY

output:

No solution

result:

ok single line: 'No solution'

Test #6:

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

input:

3
ABCABCDEF
S9GS9G6QA

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #7:

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

input:

3
ABCDEFABC
APRMAMAPR

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #8:

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

input:

3
ABCDEFDEF
GQZHEVHEV

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #9:

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

input:

5
ABCDEABCDEVWXYZQRSTUJKLMN
CUOV8CUOV8PXR660RLK 8QK5M

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #10:

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

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: 3624kb

input:

1
LJBBPKI7ZUK100NPD5WVP
3RGGQXLNCJXOIIEQSBVPQ

output:

6

result:

ok single line: '6'

Test #12:

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

input:

2
HH0TLX725W1UWEMDT01RQO
1KA7PN7RIIZIPROCP0QKY7

output:

22 3
25 24

result:

ok 2 lines

Test #13:

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

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: 3640kb

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: 3640kb

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: 3844kb

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: 1ms
memory: 3856kb

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: 1ms
memory: 3636kb

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: 1ms
memory: 3696kb

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: 2ms
memory: 3720kb

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: 3624kb

input:

2
W0YLPUEHIHUKSL44OH091F
AAAAAAAAAAAAAAAAAAAAAA

output:

0 0
0 0

result:

ok 2 lines

Test #23:

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

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: 3868kb

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: 3604kb

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: 3880kb

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: 1ms
memory: 3648kb

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: 1ms
memory: 3904kb

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: 1ms
memory: 3892kb

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: 2ms
memory: 3660kb

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: 3564kb

input:

2
80XUZIBZL1ZYC26APIZKRE
XXGG7700BBMM4466XX99VV

output:

1 1
1 1

result:

ok 2 lines

Test #33:

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

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: 3632kb

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: 3524kb

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: 3876kb

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: 1ms
memory: 3588kb

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: 1ms
memory: 3664kb

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: 1ms
memory: 3696kb

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: 2ms
memory: 3952kb

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: 3624kb

input:

2
 F72Z D7EM29SFFQF7I971
 F72Z D7EM29SFFQF7I971

output:

1 0
0 1

result:

ok 2 lines

Test #42:

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

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: 3564kb

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: 3672kb

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: 3588kb

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: 1ms
memory: 3540kb

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: 1ms
memory: 3872kb

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: 1ms
memory: 3924kb

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: 2ms
memory: 3720kb

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: 2ms
memory: 3724kb

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: 1ms
memory: 3700kb

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: 3812kb

input:

6
4AWVGQ5CCDBA5AJHMBXVAGP1DOWNVWJRIRU44J0NQK
W68WRMJCRSYZ 4S6IP0K38MSZ6UOY39VCF7PSX6AX

output:

No solution

result:

ok single line: 'No solution'

Test #53:

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

input:

5
RGAXMS672A2ZQ 66R72NQQ53VG7U2W
DHXXUVPOQOP0W1TMQOYPAWLYMER3DI

output:

No solution

result:

ok single line: 'No solution'

Test #54:

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

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: 2ms
memory: 3724kb

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: 3584kb

input:

5
QN2ES G4 Q8WOFX8KGGRV2GS2CO1VZ
XCOS7D0TF22QSBGP TRZFIY9EBNLP8

output:

No solution

result:

ok single line: 'No solution'

Test #57:

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

input:

5
S52MISM62RVMMIONNKZ9PFT31PT2Z5
DGG 0FHJ34CA474Z2XJISS6GNYP5WJ

output:

No solution

result:

ok single line: 'No solution'

Test #58:

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

input:

5
3979DV73002MS0IUG4O2NY0EV3X4VH
IBW4BF24XJU07F5IF70 R8XFNGKEUQ

output:

No solution

result:

ok single line: 'No solution'

Test #59:

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

input:

4
BRE3X5CVF9SHK7B55 0BYGHI
U94Q 8AQ8MSLTVJQX1XI67K6

output:

No solution

result:

ok single line: 'No solution'

Test #60:

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

input:

2
VYP9AYV9
7P2F6QXK

output:

30 26
7 13

result:

ok 2 lines

Test #61:

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

input:

2
AA
BC

output:

No solution

result:

ok single line: 'No solution'

Test #62:

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

input:

2
AA
AA

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #63:

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

input:

3
BCDBDECFHDHK
DCDEDEHFHKHK

output:

Too many solutions

result:

ok single line: 'Too many solutions'

Test #64:

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

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: 3796kb

input:

3
BCEBCDBDECFHDHK
ECDDCDEDEHFHKHK

output:

0 0 1
0 1 0
1 1 0

result:

ok 3 lines

Test #66:

score: 0
Accepted
time: 33ms
memory: 5596kb

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: 33ms
memory: 5244kb

input:

10
 0GKB953S9MGW6LBLH3TOQ1LTGC1WFOPWQHQJS6L76LQSDHXXXGAEHCYAIFLZY73676N0SYT0MW MTCQDZ2FM2ZOT2RITUF82W66VHESASV2PJUKJEBAZX3F8ZDDZI10PDA6L30T8C3K3SQT9XLV4EKTSTVSBM9XNIKSR960NLV2L5E18JGTVFXFXK7H1PG7YB864 CWOYIDJXYCZB6Q7F54P5ADHI8GKHJ4084I VCYU6Q4W4OIPFQDS2W8Z0BXFDPX4VMPRIC6PX7ZT285JW2D1MN2PP2K2S7ECOOP1...

output:

No solution

result:

ok single line: 'No solution'

Test #68:

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

input:

3
ABCAXYAEI
7SEOQEV9Q

output:

Too many solutions

result:

ok single line: 'Too many solutions'