UVa 10975 - Dueue's Quiz

题目:给你一些单词组成一个字典,然后再给你一个由字母组成的矩阵,连接横、竖和斜线可以组成单词。

            统计字典中,每个单词出现的次数。

分析:字符串、字典树(Trie)、AC自动机。单词统计问题,一定想到字典树和AC自动机。

            首先,将字典存入字典树(可以在字典树上构造AC自动机,加快查询)

            然后,枚举每条直线上的单词查询计数(AC自动机,只要输入最长串即可)

            最后,遍历字典树(或AC自动机)输出统计结果。

注意:单词是单个字母时,要统计8次。

代码,字典树(Trie)版:

#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>

using namespace std;

char word[15005][1005];
int  C[15005];

/* Trie define */
#define nodesize 400004       //节点个数 
#define dictsize 26            //字符集大小 

typedef struct node1
{
    int    flag;            //值域 
    node1* next[dictsize];
}tnode;
tnode  dict[nodesize];
int    ID[256];

class Trie
{
    private:
        int    size;
        tnode* root;
        char   cput[105];
    public:
        Trie() {makeID(); initial();}
        void makeID() {
            for ( int i = 0 ; i < 26 ; ++ i )
                ID['a'+i] = i;
        }
        void initial() {
            memset( dict, 0, sizeof( dict ) );
            root=NULL; size=0; root=newnode();
        }
        tnode* newnode() {return &dict[size ++];}
        void insert( char* word, int l, int id ) {
            tnode* now = root;
            for ( int i = 0 ; i < l ; ++ i ) {
                if ( !now->next[ID[word[i]]] )
                    now->next[ID[word[i]]] = newnode();
                now = now->next[ID[word[i]]];
            }now->flag = id;
        }
        void query( char* word, int L ) {//统计字串出现个数0
            tnode* now = root;
            for ( int i = 0 ; i < L ; ++ i ) {
                if ( !now->next[ID[word[i]]] ) return;
                now = now->next[ID[word[i]]];
            }if ( now->flag ) C[now->flag] ++;
        }
        void output(){output( root, 0 );}
        void output( tnode* now, int d ) {
			if ( C[now->flag] ) {
				for ( int i = 0 ; i < d ; ++ i )
					printf("%c",cput[i]);
				printf(" %d\n",C[now->flag]);
			}
			for ( int i = 0 ; i < 26 ; ++ i )
				if ( now->next[i] ) {
					cput[d] = 'a'+i;
					output( now->next[i], d+1 );
				}
		}
}trie;
/* Trie  end */

char maps[105][105];
char save[105];
int  d[8][2] = {{0,1},{1,0},{-1,0},{0,-1},{1,1},{-1,1},{1,-1},{-1,-1}};

int main()
{
	int T,n,m,r,c,x,y,count,L,t,i,j,k,a;
	while ( ~scanf("%d",&T) )
	for ( t = 1 ; t <= T ; ++ t ) {
		scanf("%d",&n);
		for ( i = 1 ; i <= n ; ++ i )
			scanf("%s",word[i]);
		trie.initial();
		for ( i = 1 ; i <= n ; ++ i ) {
			L = strlen(word[i]);
			if ( L < 101 ) trie.insert( word[i], L, i );
		}
		printf("Test Case #%d\n",t);
		scanf("%d",&m);
		for ( k = 1 ; k <= m ; ++ k ) {
			printf("Query #%d\n",k);
			scanf("%d%d",&r,&c);
			for ( i = 0 ; i < r ; ++ i )
				scanf("%s",maps[i]);
			
			memset( C, 0, sizeof(C) );
			for ( i = 0 ; i < r ; ++ i )
			for ( j = 0 ; j < c ; ++ j ) 
			for ( a = 0 ; a < 8 ; ++ a ) {
				int count = 0,X = i,Y = j;
				while ( 1 ) {
					if ( X < 0 || X >= r || Y < 0 || Y >= c ) break;
					save[count ++] = maps[X][Y];
					trie.query( save, count );
					X = X + d[a][0];
					Y = Y + d[a][1];
				}
			}trie.output();
		}printf("\n");
	}
	return 0;
}
测试数据:

4

4
hello
bye
one
two
2
3 3
bye
okk
res
3 3
one
wzq
too

4
hello
madam
hello
madam
1
6 6
helloh
oezxec
lnllbv
lmllas
eogfod
hmadam

6
x
xx
xxx
xxxxxxxxx
xxxxxxxxxx
xxxxxxxxxxx
15
1 1
x
1 2
xx
1 3
xxx
2 1
x
x
2 2
xx
xx
2 3
xxx
xxx
3 1
x
x
x
3 2
xx
xx
xx
3 3
xxx
xxx
xxx
4 4
xxxx
xxxx
xxxx
xxxx
5 5
xxxxx
xxxxx
xxxxx
xxxxx
xxxxx
10 1
x
x
x
x
x
x
x
x
x
x
1 10
xxxxxxxxxx
10 10
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
100 100
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

120
a
b
c
aa
ab
ac
ba
bb
bc
ca
cb
cc
aaa
aab
aac
aba
abb
abc
aca
acb
acc
baa
bab
bac
bba
bbb
bbc
bca
bcb
bcc
caa
cab
cac
cba
cbb
cbc
cca
ccb
ccc
aaaa
aaab
aaac
aaba
aabb
aabc
aaca
aacb
aacc
abaa
abab
abac
abba
abbb
abbc
abca
abcb
abcc
acaa
acab
acac
acba
acbb
acbc
acca
accb
accc
baaa
baab
baac
baba
babb
babc
baca
bacb
bacc
bbaa
bbab
bbac
bbba
bbbb
bbbc
bbca
bbcb
bbcc
bcaa
bcab
bcac
bcba
bcbb
bcbc
bcca
bccb
bccc
caaa
caab
caac
caba
cabb
cabc
caca
cacb
cacc
cbaa
cbab
cbac
cbba
cbbb
cbbc
cbca
cbcb
cbcc
ccaa
ccab
ccac
ccba
ccbb
ccbc
ccca
cccb
cccc
3
100 100
bbaabaaaaabbbbbbbababaabaabaabbabababbbabbabbabbbabaabbbbbbaabaaaaaaaaababaaabbabbaaaaaabaababbaaabb
bbbaaabababbaaabbbbaaababbbabaaabaaabbbbbbbbbbbabaaaaabaabababababbbaabaaaababaababbaaaabbababbbabba
babbabbaabaaabbabbbbbbabaaaaaaabbabbaaaaabababbaabaaabaaaabbbaaabaabbbbaabbaaabbbabbbbababaabbaababb
abaabbabbabaabbbbabbbbabbbbaabaabaabababbbbbaaabbabaaabaaabbbabaababbaaabbabaaaabbababbaaaaaabbabbab
babaabaabbabbbbababbbabbbbaaaaaababaaabbbaabbaaababbaaaabaabbaaabaabaaabababbaabaabbbabbbabaaababbbb
aaaaaabbbbbaaaababababaabbbaabbabababbbaaababababaaabbaaababbbbbaabababbbbbbbaabbaaaaabbabbbbbbababa
abbbbbbaaabbaabbbabaababaababbbbaabbaaabababbaaabaabbbaababbabbabaaabbababbbbaabbabbbbbababbbbbaabab
aababaaabbabbbababbaaabbbaaaabbbbaabaababbbaaababbbababaaabbaaababbbbbabbbabbabbbbbbaaaabaaaaabbaaab
abbababbaabbbaabaabbbbbaabaabbaaaaaabbabaabbbaabaaaaaaabbbabbbbaaaaabbaaaabababaaabbbaaaaaabbababbab
baabaaabbbababbbbbaabbabaababaabbbbbbbaababbbbabaaaabaaaabbbbbaababaabbababbaaaabbabbbbbababaabbaaab
bababbaaaaabbaaabababbababbabbaaaabbbaaaabaaabaaabaabababaaababbabaabaaaabaaaabbbaabaaaaabaaaabbabab
ababaabbabaaababbabaaaaaababbbbbbaaababababbababbabababaaabbbbbabbaaaabbabaaaaaabaabbbbbbbbbaabbaaba
babbbbaaabaaaaabaaabbaaaabaaababbbbbaababaabaaabababbaaababaaababaaabbbabababaaaabaaabaabbbabaababab
abbabbabababbbbaababaabbbbbbaaaababbaaababbbbbbbaaaaabaabababaaaaaababbbabbaaaabbababbbbaabaaaaabaab
abbaaaabaaaababaabbbbbbaaabbabbaaabbaabaabbbbaababaaabbbabbaababbbbbabaaaaababbbaaaababbabaaabbbaabb
aaababaaababaaaabaabaababbabbbaaaabababbbbaabbabbaabbaabbbaabaaabbbaabbaabbbbbaaabbaabbaabbbbbaaaabb
babbabbbaabaabaaabbbbbbabbaaabbaaabaaabbabbbabbaababbbbaabaabaababbababaaaabbbbbabbbbaabbbbabbabbaab
babbaababbabaaaabaabaababababbaaaaabaabbabaabbbbaabbbaabababababbbbabaaabaabaabbbbbabbbbbabbbaabbbab
aaabbaaabbababaabbbbbbabbaabaabbbabaaabababaaabaaaaaabaaabbabaabbababababbaabababaaaaabaaabbbbbabbbb
bbabbbbabbaaaabbaababbabaababaaabbbabbbabaabbababbbaabbbbbbabbabbaaaabaabbaabbbabbbbbbbbabbaabbbbaba
aaabbaaabaabbaababbaaabbbaababbbbaaabaaabbabaaababbaabbbbabababbbbababbaaabbaabaabbbaaabbbabbbbbbbab
bbaabbbbbaaaabbabbbabbababbabbbaaaabaabaabbababaaaabbbbbbabbabbbababaaababbabbabbabbabababbbbabaaabb
bbabababbaababaababaaaabbabaabaaabbbbbabaabbbaabababaabaaababbababbbbaababbbaabaaaabababaaaabaabbbba
aaaaabbaabbaabbbbabbbaabbaaaabbabaabbabbabbbaababbaabbbbabababbbbabbbabbbaabbbbbbbabaaababaabaaaabba
bbabaaaaabbbaaabbbababbababbbbabaabababbbbbbababbbbababbabaababaabababaabbababaababbbaaababbaaaaabba
bbbbbaaabbaabaabaabaababbbababbabbabbaabbaaaababbababababababbabbbbabbabbabaabaabaabbbabaabaabababbb
ababaaabaabbbaabbababbbbbabbabbbbabbaabbbabaaaabbaaabababbaabbabbbbaaaabbbaaaaaababaababbaaaaabaaaba
aaaabbaabaabaaabaaabbabbaabaaabababbbbabababbbaaabbabbbababababaaabbabbaabbbbbabbaabababababbaabbaba
bbbabaaabaababbbbabbabbaaaaababbabaaaabbbaaabbabbabbaaabaabaaaababaaababbbbbbaaabbaaaababaaabbababab
bbbaabbabbbabbababbbbbbabbbaabbbaabbbbaabbbabbbbbaaabaabaaabbaaaabbbbbbaaabaababaaaaababbabbbaabbabb
aaaaaabbbabbababbbbabbabbbabaabaabbbbaababaababaaaababaaabbabbbbbabbababaaababbbaabbbaaaaaaababbbbab
bbbaabbbbababbaabbaaaaaabbaaaabbabaaaaabbbaabbaaaaabbbbababbabaabbbabbbababaabbabbaabbbbaaaabbbbbbba
ababbaaabbabaaaaabababbbbabbbbabbaababaaaabbabbaabbaaabbbaabababaabbaabbbbabaaabbabbbaababaaabababab
aabbbaaaabbabbabbbabbbabbbaaabbabbbbbbbbbaaaaaaabbabaabaababbaabbbbababbbabbabbaaaaabaaaaabbaaabbabb
abbabbbabbaaaababbaabababbbbaaabbbbaaabababaabbabbababababbaabababbaaabaababbbaababaabbaabbbabbabbaa
abbbaaaabbbaabaabaaaabaabbaababbbbbbaaaabbaabaaaaaabaababbbabaaabbbbbbaaabbabbbaabbabbbaabbbabbabaab
abaaabbbaabbbabaabbbbbaabbaaaabababbbbaaabaaabbbbbaabbaaaabbaaaaaabbabaaabbaabbabbbabbaabbaababaaaab
ababbbbabaabbababbabbabbaabbaaababaaababbbabbaabbaaababbaaaaabaaaababaaabababaaababababbaaaababbaaaa
babaaaabaabbaaabaaaabaababbbaaababbabbbbbbababbabaabbaaabaababbbbbbaaaabbbbbbbaaaabbabbabbabababbaab
bbaabbaaaabaaaabbbbabaaaaaabaaaaabbabbbbbbababaabbaabaababbabababababaabbbaaaaaaaabaababaabaaaaaaaba
aaabbaaabbaabbaababbbabaabbbbbbbbaabbbabbbaabbbaabaaabbbaaaaababaabaaaaabaaaaabbbbbbaabbababbbabaabb
bbaaaaabbbbbbaabbbabbabbaabaaaabbabaabbabbbbbbbbbabbaaaabaaaaabbababaaabaabbaaabbbbababaaababbaaaaba
bbababbbaabaaaaabaaaaabaaabbabaabbaaaabbababbaaabbabaaabbbbabbbbaaabbbabbabbabbbbbbbaaababaaaabaabaa
aababbabaababaaabaabaabbbbabbaaaababbabaaabaaabbaaaaaaaaababbbbabbbbbbababbabbaabbabbbbbbaaaaaabbaaa
aabbbbbbbbaabbbbabbbaabbabbabbabbbbabbbbbabaabbabbabbabbbbabababaabbaaabbabbbaabababbbaaaaabaaabbaaa
baaabaaababaaaaabbbbabbaaaaabbabaabbaabaabaaabaaabaaaababbaabbbbbaabbbbabaabaaaaabbaaaaabbaaaaabaaab
aaaabababbbaabababbbbbbababbaabaabababbaaaababaabbbbaaababaaaabaaabbbabbbbbabbbaabaaaabbbbaaaabaaaaa
abbabaaaabbaababbaabbaaababbbbabaaabbbbabbabaabaaaaabbaaaabaaabbababbbaabaabaaaaaabbbaabbababbbaaaba
aabbaaabaabbaabbaaaabbaaabaabbabaaabbabbbaabbbbabaababbbaabababbababbbabaaabbbbbbabbbaaaaaaabbabbbab
abbabaaaababaaaabababbbbabaabababaabbaaabbababbbababbabbbabbbabbbbaaababbabbaaaabaaabbbaaabababaabbb
bbbaaaabbbaabaaaabbabbbaaabababbbbbbbbbbabbaabaaaabbabbbbbbbbbbbababbbabbabbaaababaabaabaaaaaabbbaab
aaaaaabaabaaaaaaaaababababaabaaabbaaabbabaaabbbbaabaaabbaaaabbbbbaaaabbaabbbabbaaaaaaabbbbbbbabbaaaa
baaaaaaabbbbbbbbbabaaaabbbababaaababbbbbabbabbbaaaababbbababaaabbaaabbabaabbbbabbbaababbbaaabbbaaaaa
baaabababbabbbbabaaaabbbababaaaaabbabbbabaabaabbbbaaaaabaabaaabbabbbababbaaababbabaaababbbaaaabaaaba
babbaaabbbabaaabaaaababbbabbbabbbabaaabbabbaaaaabbbbbabaaabbbbaaababbbbbbabbbbbaabaaabbabbbabbababab
abaaaabbbbbabaaaaabaaaaaabbbbbabaabaaaaaababbbbbaabbabaaababbbaabaaaaababbbbaabababbbbbbbababaaaabab
aabaababbaabbbbbbaabaaababbbaababaaabbabbbbbbbabaababaaabbbababaaaababbbabbbabbabbabaabbbbbbbbbabaaa
abbabbababaaaaaabbbbabbbbabbbaaabbbbabaabbbaabbabbbaaabbbbabbbaaabbaaabaabbbabababbbbbaabaabbbbaabbb
aaaaabaababbbbabaaabbbbaaabbaaabbaaaabaabbabbaabaabaaaabbabbaabababbababaaaaaabaabaaabbbabbaabbbaaba
bbaaabbabbaaababababbbbbabbbaaaaabbbbbabbbbaaababaaabaabaaabbaaabababbbaaababbbbabbbbaabaababbaabaaa
bbabbaabaaabbbbbbbbaabbbbbbbabbaaaabbbabaaabaabaaaaaaabbaababbaababbaaabbaabbabbbbbbabbabbaababaabba
bbaababaaaabbbaababbaabbaabbababbaaaaababbababababbbbaabbbbbbabaabbbaaaabbbaaaabaaabbabaaaabaabaaaaa
baaabbabababbbbababaabbbababababbaababbbbaabbaababaaaabbbbaababbaabaabaaaaabbbbbbbaaabbaaaababbbabba
bbabbaaaaaabababbaabbbabbbaaabaaababbaaaaaabbbbbabbabaabaaabbaaaababbbaaabbabababaabbbbabbabaaababaa
bbabbababbabbbbbbabbababbbabbbabbaabbabbbbabbbaaabaabbaaababbaababaabaaaabaabaabbbbaaaaaaabbaabbbaba
abaaabaaabababbababaaababbaabaababbbaaaaabbbababaabbaabbbbbaabbaabaababaaaaabaaaabaabaaaaaaaaaaabbbb
babbbaabaabaabbaaabbbaabbbabbaabbababaababbabbbabaabbbbababaaabaabbaabbabbbbbbabbabaaabaabbbbabbbaba
bbabaaaaababbaababbaaaaabbababababbbaaabbbabbabbabbbbabbbbabbbaabbabbbbbbaabababbabbbabbabbabaababaa
babbbaabbbbaababbaaaabbabbababbbabbabaaaabbbaabaababbababaababbbababbabbabbbbaabbbbaaaaaaabaabbabbab
bbaababbbbbbaaaaaabababbabbbbabbabbbaabbbaabbaaabbabababaaaaabbabaabaaaaabbabbbbaabaaabbbaabaababbba
baababbbbabaaabaababbabbbababbbbabbbaabbabaabbaaabbaababbabababbbbabbabaabbaaaaabababbbbaaaabbabbbba
bbbbbbaabaaabbaabaabbbbbbababbabbbabbbbbbbabbabaabaabbaabbbbbbaaabababbbbabbaaababaababbaabbabbaaaba
abaabbbbaabaaabababbbbabbbaaaaabbbbbaaaaaabbabaabbaaaabbabbbbabbbbabbabaababaaaaaaabbbaaabaabaaaabba
ababbbbaababbbbaaabaaaaaaaabbababaaaababbabaabaaaabbaababaabbaaaabbbabbaabababaabbaaabbbbaabbbbabbbb
babababaabbabaaabbbabaaabbabaabbbbaaaaaaabbbbaabaabbbbabbabababbabaabbbbbbababaaaabbababaabaabbbabaa
babaabbbabbbababbbbbbbaabbabbbabaababaababbaabbaaaaabaabababaaababaabababaaaababaabaabaabbbaaabbabbb
babbbabbbbbbbbaaabbbaaaaabaababababbaaababbbbaabbbabaabaaabbbababbbbbababbabbababbbaaabaaaabaaababba
babbbbaabbbaabaabaaababbbbbabbabbaaabbbababaaababaababaaabaabbaaaaaabbabbbbbbbababaaababbbbaaabaaaab
aaaaaabbbaabbbabbaaaabbbbababbaaaaaabbabbababbaaabaaabaababbabbaaabbbabaabbbabbaaaabbbaaaaaaabbabaab
ababbbaabaabbbbbaaabbababaabbbabaabbaababaaaaabbaaaaaabaaabbbbabababbaaaabaabbaaaabbaabaabababbabbba
bbbbbbbaaabaaababaabbbababbbbabbbbbabaababbbbbaaaabbaababaabbabbaabaabaabbbaabbaabbaabbababbabbaabba
bbaababbaaabbbabbababaaaabbbaababaabaabbaabaaaabbbbbbabbaaabbbababaabbbbabbbaaaabbbabababaabbaaaaaaa
bbbaaabaabbaaaaaaaaababaabbaabbababbabababaababbbabbbaabbaaabaabbabbbbbbaababbbaabababbbbbbbabbabbbb
aabbbaabaaaababbabaaabaaabaaabbbabbaaabbabaabbbabbabaaaabababbaabaabbaaaaabbbbaaababbababbbbabbbbaba
bbbbbabaaabbaaabbababbababbbbbabbaabbbaabaaaaaaababbaaabababaabbbbbabbaaabbbaaabaaaaaaaaabbabbaaaaaa
aabbbbbbaaabaaaaabbbbbabababbaaaaabbbaaaabbbbbbabbbbabbabaabaaaaaaabbbaaabaabbbbbbaababaabbbaabbbbaa
aabbaababbbabaaabaabbbaaabbabbbbaaabaaaabbbbbabaabaaabababaabbabbaabababbabbaababbbbbaabaabaababbaba
aabaababbaabbaaaaababaaaabbaaabaaababaaaaaaaaaabbaababbbbbbaaaaaabbaababaababbbbbabbabbbabbababaaabb
bbbbaabaabbabaababbbabbabbbabbbbbaabababaaaaaaaaabbbbbbaababaaababbaabababbaaabbaaaaaabbbaaabbbaaabb
ababbaaababbbbbbaaaabbbbbaabbabababbbbbbaabaaabbabbbbaabbbbbabbabaaaaabaaabbbbababaabbbabbababbaabba
abbbaaaababbaababaaaaababaabbbaababaababbbaaaaabaaaaabbbbbaaaaabbbbaabbbbbbbabaabbababbbaabaabbbbbab
aaabbabbaaabbbaabababaaaabbbaaaaaabaababbabaabaababbaaaaaabbbabaababaaaaababababbaabbabbbbbaabbaabaa
baabaaaabbabababbabaaaaabbbbaaabbbabbbaabbababbabaaaabaabaaaabbabbabbabaababababbaaababbbaaabaaabbbb
bbabbaaaabbbababbbaaabbaabababbaabbbbbabbbaaaabababaabbaaaabbabbbaabbaababababbbaabbbbbbbbbabbbbabaa
babbbbabbbabbbaabbbbbaabaabbbbbbababbbabbaaaababbbbabbbaaaaaaabbabbaabaabaabbaaabbaaaaaabaabbbbaaaaa
bbababbaabaabbbbbabbbbababbbbaaabaababaabbaabbaaabbaaaaabbbabbbababbaaaaabaaabbabababbabaaaababbbbaa
bbaaaabaaabaaaaabbbababbbbbabbbababbaaabbaaabbbbbabbaaaaabbbbaaabaabbababbababbabaabbababbbbbaabbaab
baabbbbabbbaabbbaaababaabbbaaabbbaabaaaaaaabababaaaaababaabababababbaaaababaaabaaabbabaabbbaabbbaaba
abbabaaababaaabbabaabbbbaabbbabbbbbbbababbaaaababaaaaabbbbbbaababaabaabbbbbaaabbaabbbbababababbbbbbb
aaaabbabbbabbbbaaabaaaaabbabbabbbaaaabbabbabababbaabbaaaabbaabbaaaabbbbbabbaaabbabbbabaaaabbbaabaaaa
100 100
abccbaaaababbaacbababacabcbcbaabcabaababbaacacababbbabccabbccbccbaabbbcaabbabbbbcccbabbbcbaacababcca
acbccbcbaaaacbaaabcbbcbbcbaabaaccaaccbcaaabaccaacbbacaccbabbcaabbabaabbabcacccccbacbcbbcbccaabbbaabc
bcbabcbacacabbacbcaccccbacaaccabcbbcbacacbaaccbcbabbacccacbabcbbbbbabaacbbacbacacaccabbcacbbcbcaabbc
aacbaccbacacabbaaabccccbbbabaccbbccabbaccaaacabaaaaacbcccbbbaabaccacbaabaabbaccacbacbcaaaacccbaabccb
bcaabcbbabbbbaacacabbbcabbcccabbcbcbccacabaaccbcacabccbbbacaccccabcbacbababbbabccbaaaababacabbabbcba
bbabbabbbccaaaccaababcaccbaaaccccbbcaabccbabbccccbcabacccbbabacbacacbcbcbaaabcbbcbaccaccaabbababbabb
bbababccacbacacbabcacbaacaaaacacabbcccacbbbabcccbbccabccacabcabaacbcbabbbbccaacbccccbbcaaacacaaccccb
bbacbccccbbabcbabccbccaaabccccacacabbccacbbabccccacbbacbcbcbcabccaccbbcccbbbcacbbcbcaabbcabccbcbaaca
bcbbbacccaaaccbcabbbaaababbababcbccaacaccccbacbabbaabacaaabccbccccbbcbbaabaabcbcbcbcacacbaaaacbaabac
baaacbbbbaccabcbbbaaacabcbbcbacacbbaacbabacaabacbbacbbcccabcccbbcabcaccccbaaccbcbacacbbccbbacbaabaac
cccbacbbcaacccbaccbabbbacaaabcabacccbccabcbbbbaccccacacbbccbcabaabbbbabbacbbaacbcbaacaccbababbabbacc
cbcaccbccbacbcacbcabcacabbccccbbcbabaaacbbaaababccbabaaabbcbabcbabbacbcbacbaaacacbbbacaaaacacbbaaacc
cabaccacbacbacbabccaaacbccabbacabbccacbacababbaaabcbbabcacbcacccbacbccaccacabccbaabbcbccaccacbacabca
ccaacaabccbaabacaccacbcabaccbcbaaaaacbbbbcabaacabbaccbaabbbbaccabbabbbbabbccbcccacbabacbbbcbabcbabba
abbabcaccaaabcaccaccbbbaaacbabbbbccaacaacbacabacbacabcaabaacaaaccabbbbbacbabacabbbacabbaabbbabacbbac
babcaabbbbbabacaacccabccbccabaccabcccbcbacccbbcbbcaacccbcaaabaccbccbbcbcabababccccbabaacaabaacbcbcca
acbbcbababaacabcbbabbbbcbcaaacbcbcbacbcbbcccacaabacaccabcccaccbccaacbaccbbaccaaabccbcbbaacbacbbbbabc
aacaabbbcbaabaaacaacaacabacbbcbcaabaaaccbabbabaabbaaaccbbcbccaabaaaabcaacbcaacbaabccbccabcccccbaaccc
acbbcccbbbbabaabbabacaccaabaacacabcccccbbbbbcbcbbccababbabaacbcbcbbccaaaaaabaccbccabaaabcbbbcaacbbbb
aabcccbccaaaccbaaaacabccbcccbcaaababcbaabaabbccbbabccccbbbabababaabcbabbcbaaaccaccbccccbbabcccacbaab
cabbabbbabbaccabccabaaccbabaacccccbabbccabbcbcaabbabbaaaacbcbacaabbccbacaaacbbaabbcaccacbabbcaccaacb
bcbabcbaccacabaccccaacabccbaacbbccacbaaccbabcbcabccaaababcbcbaacababbcbcbcbcbbaacacbaabcacaabacaabbc
ccaabaabbcaaaaabbbbccaacbccbccbbbaacbcaababcacbbbccccccbcccabbabcccabccaaacbccbccbbbcabbbaacaaaaaccb
abbbbcbaaabcaaaaacabacbcabbacacacaaacbacacabaacabababaaaacbbaabbbcabbcabbaabcaccabcacccbabccbabbacba
babbbbcaaaaacacccbaaaccbcbccbcaaaaabaccabbabbbbacaccaabbabcaaaaaacaacbbacbcbcbcaabcbbaccaabbabbcccaa
bbabbacaabccabcbcacbaaccbcbbbacbcabbaccbcbaabccacabaacbcababbbbcbbbccaaccbacaccbbcaabccccabacbbaabbb
cabcbcaaaacbbacccaaacacbcbbaaacbcbacbcababacaacbaaabcabccabbccaaaaabacccbaacacaabbbabaabbcabbcbcaaba
bcbbccbcaaaccabaccccaaacabaaacccabbbcabcacccacbacacabaacbbabbbcbbaccacccbcacacbccbbbacbabaacabcaaacb
aacbabcbbbcbbcbaaababbacbbbaaccccaababbbbaaabacccbcbcccaaaacbbacbbacbbccacabccabaaaacbbacabcabaabaca
bcababbbccccbbcabccbbcbcbccbbaacccabaccabcbacbacbbaacacabbbcbcaababacacacacbacbbcbbaabbbacccbcabbbac
cbcccbcaaacabcbbaaccbcccbccacccacbbbcbcabccbabaccbabcbbcabbbabacbaccaabacccacaacccabcacbbccaacabcaba
bccaabbcaacbaaabcaaccbaaaccbabccabbabccaaabccccaaccaaabcbbbbabababacaaccbababccbbcaaacccbcbcabbbcbab
cabcbbabbcccbaabcaacaaaaaacaccbbccbcaccbbbbbacbaabccaaacabaaaabbcacbbcabcaacccbcbbbbccacbbcccabaaabc
bbacbcabcbbccbbccccabbbaccabbcacaccaccababbbaaaccaabbbbabaabcbbcacbbaacabbaabaababbbaaacababcbbbcbca
ccbcaaaccbacbabbccbbbbacbbcbbaacacbaaabcacbcbbabacbabacbabbaababbcaababcbabbacccccbcbbbbcccacbaccacc
cbaabacccaabccbacbccccabbbbababcaccabbbbbbcbacaabbcbcacacacbaccaabbaacabcbaaabbaabbcbcaaaccbccbbcbaa
aabaabbaaabbbcabbcbabbabbbbbcacccbbacbcabacaacccabcccabcbbcbbcbcbcacccbaabccccaacabbabbccccbaabcccbc
caabacbabbacaacaacaabbbcccaabbbcbbbbbbacaaccbcacaabbaccbbbcacababcaaacaaacaaabbbbaaaababbbcbcacabcbb
bbacccbcbcaaacacbabcbcbccaacabcbbccbaacbaacbbcbbbbbcbaacbcababccacaacbabccabcacacccaccbbaacaabbcbcbb
bbccbbccacabbcaacaabcabbaaaaaacacbbbcacbbccaccccccbabcababaababaacbbaccbbaccbabacaaccacaaccccbccbcab
bbcccabbbcaccbbbbbcbcbacbaaacbbcbbcbccacbcccabacaccbccacccacbbabbbacabbbccacbbccaabacacacbcbaabaabaa
cbccbbbcccccabcbccabccaacbcbbccaabccbccbcbaaabacccbbbbbababcaacccbccaaccabcbcbcbacaccababacaabcccaba
baccccabababbabcabbccabcaccaaaacacbbbaabbbaabbcacaacacabacacaabcaaacaabababbcabbacccaacababacbbbccab
bcbbcacacaabcbcacacaccccabbbbabaabbcbbcabbcacbbabcbaaabaabbbbbaabbcaacabbcababbbbacaabccbaacbbccbbcb
aaabcbbbbbbcccbacacacacaacaaabcbbcaccccbabbcbccaacccbaccacbbccbacababacababbabbbaababccacbcabcbacbab
abcbacaabbabcababaccababbabcaaabbbcaccbbacbcaabcababbbbaaabacabcaaababababcbbcbcbaacabcabbbcaacbcacb
abacbababbacabaccccbccaaabcbaaaaaaabcccacbcaaccbcbcbccabaacbabaacababaacbabaccaaccbbabbcbabcbaaccaca
baabcbaccaabaaaacacabbbbccacccbbabaacbbcabcbcbaaabcbabaaaccacabccaabaccbbbaaaababbcacacbccacbbacbacb
abacacbcbcbcbaaaabaacaabbcacbcbacbabbbbabaccbbbcbbabacacaaacbaabbaaacaccabaccccbabcabbccaacbbaccbacc
aabaabcaccabccabcabcabababcbccccabbbaacaaacccbcaaccacabcbaacbcabcaabaababaccbaabccbaabbbbbacabcbaacb
bcbcbacbcaccabcabbaabbbabbbcbbbcaccabbbabacbabacbbcabaabcbaabaaaacacbbcbacaabaabaaaacbcaacbabaabbaca
acbbaabcabbcbcbcacababccccccacacccabcacaccbaaacbbbbbaacccacbacbcbcabbbcabcacccccaabcaacbcbaaccacbabc
aacbbbaaccacbccbccaaaacbcbabbcbbbbccacacccccbaccacbabbbbbcbbbbbaabbaccabbccbaabbccccbabbcabbaabaacab
acacccbaacaabcbabacbaccbacbacbbacacacaaabbbacacaabccbabbbbacbcbacabcbabcacbccbcbbcaaccbaccbcaacaabcc
babbcccbbcaccccabbbacbaacabbabaacaabbbccccaabbbbcacaababbbcbbcababaaccbcabcccbcabacbbccacbcaccababbb
bcbabbcbccccbbbbbccaccbacabcabcbcbbcbaaaabccbbaaaacabbbbcbabcabcabbacccbabbaaacabbcabbaabaabbbccbaca
ccbbbbcbacccccccbcbbcccacacacbacabcbaaccbbccaabcaccbabaabbacacbbbacaaacbacbaccccbbacaacacccaabccacca
cccbabacbaccbcbacacbbcbbababacbbbbaacbabbcbcbcaaabacbcaababaabbaacbccbbacabbcbbacacccbcbccabbbcabbcb
caabaacbbcaccbaacbccaabcabacabbbbaaaccbccacbababbacababcbccbabcaacabcacccabbaaaaaaabbacabccabbaccaca
bcababbacbcbbacaacabcaabaaccabbacbacbacbcaaabaabaacbbbaccaabcbcbaccaacacaabcbaaccacbbaabbabacacabaaa
abacccccbbaccbcbcccbccbbabacaabacbcabccabcabbbbacbacccccbacacbcbabaaaabbcbccababbbbcbacbaccaabbbbccc
bcacbbcbbbbbabcbcabccbbbaaabcbcabaccbcacbbcccbaabcbbaacbcabcbabcbcaacccbaabaabcbacacabbacccbcaabbccb
abccbababcccacbbabbabbcbbcbbabbcbbccccbccabbabacaccccbbbbcaaababbbcbbacbacbcbcacabbbbbcbabccbabbacca
cbabcbabbabcacbcbbbcabaaccbaaacaacaabbbabaacaccabacabbbababcbacaacaababccabacbcabcbccbcabcbbccacbbac
abacbccacaabbbaccbbaccccabcbabaacababbcbaabaaabaaaacbabbbbcbbccccbcbbaabbbbcccabbcbccbcccbbbcbcbccaa
abbbbabacbaaacccbcbcbbbababbbbbbabbacccbbaaccbbccbaaacbccbacacbbbacbbcccbacbcbaabcabbbcbbbbccbaacbac
cccabbbacbacbaabbbbaaccaccabbcbbbbcacbabaababccacbabbabbcbcbcacbcaacaaacbabaccbaccaabccacaaaabcbbccb
bbcbbbcabbbcacbcbccaabbccbbbaaaaacccbcaacbabacacbaccacccacccbabbbcbaabaabaacbcbbbbacaacccbccaccaacba
ccbbaacccbabccbaaccabbaabbcbcabaacbaaaabcbcacbbcacbbbacbccabbbacacbbbaabbbcaacbacbbbbbbabccaaabcaacc
caabaaccacbcbbababbcccacccabccaaccabccbbcbcbbaccabcaabbaaacbcabbcaacbbaaababbbabbabcaccababcabbabcca
bbacbbbcacaaaaabaaaacaabaccbcaaaabaabcacabbcacbbcbacbbbacccbccbcbcccbaaccabccaaabaccaacacacccbbaacaa
cbbcbacbabbcbaacabccbaccabcababaabcccacaabcccbabccbabccacbbaacbabcaccbabccacacbbcbacbacbaaabcccacaaa
bcccbabaccaacbbccbbcacbaabccabaacccacccaaababbcccbcaacabcbabbbbacaccaccaaaabacbabbacbbcaaaaaacbababc
bbbacccabbabaccaacbcbbabbcbbbacacccabacaccacaaacaabacabbbbacbbccaabacbcacbccacabacbbbabbabbaaaacaaca
ccbbbbccbccababcbaaabccccaababbababacbcbaabacbbbaaaabaabbcaacbccccbaabbcbcacbaaabcabcacaccbbcacacaab
cbbbcccacacabaacbcbcabaaaaccbacaabacaababaacabcccaacbbaaabbabacabcbaabccabbaccccccbabcabbabbbbbabacc
bccccabcabbccbacabbaacbacccacccbcabaacbcabbcbccaacbccccbbbaccaaabababacccccacccaaacabcccaabababcabbc
ccaaccabcacbcbbaacaaaabcaaacbcaaabbbbaccbccbabcabccabacabbccacacbabcabaacbcaababccaacbbcbacbacbbbaba
bbaaaaaaaabbbabbcaaacbbaababaabbcaabcababaaaaaabcaabaaaabaaacacabaaabbccbbccacbcacbaccbcbcaabbcbcacb
cbcccacaccaabcccccccbcacaccbaabbbaaaacabbcaaacacaccccacaabcaacccbcaababaacbcabbacbbccaaaaaaccaaaaaac
bcaaccaccaacababcbccacccabcacacbabbabaccbbbcacacacbacaabcbcaccaccbbcaaccabcbabbcacaaaaaccbbcbcacaccc
bccabccbabccacaacbcbcacabbabcaacabaabcbacababbcacabcbccbbbbbcbbbaababcbbbcabaabaaaabccccbcabcacbcabb
abcbabcbbbbbaaabccaacbbbbbbaabababbcccacccabaabbaabbaaccbcacabaabbbcbbbccccbccaacbabbabaccacaccbbbbc
bcacabbcbaaaacacccabbcabcaacbbbaccccbccabcbabccbbbabbccaabbcbbbaaaccaacabcaaaacacabbbaaaacccacabacba
acabaccbabacbbaaaacbcacbcacbbcbbcaaccacccbcaaacbbacacaababbcabccccabbcacaccacacbccacaaaaabbcacbbcaca
ccbaabaacbabbaaaaabbbaaabccbcbbbababaacbbaaacbabcaacaabacacbaaacbbccabbaabbcaaacaacabcbcbbaaabbcccbc
baaabaaacbbbcabbbbabaababbacbcbbbcaaaacabaaabbcaaaaaccacabaccaccbcabcbcabcbbcacbcaabbacbccbbabbbaaac
bbcaaaababcaaacbbbacbabbacaccabbbcaaabaaabbaacacbbaaccbacbabaccbbcabbbcbcbbccbbcacaacabcaababbabaccb
bcacbcbbccbcabbbabaacaccacaabacbbaababccaacbbcbaaabaccaaaabbabcbbbbcaabccccaaccbcabcbbaaacbaaaaaabaa
aabaaaaacbbcacbcbbcbbccbbacaabccabaaabbaccabccccccccbccbbbaacccaacbcacababcacabbcacbccbacccaabccabcb
bacccacabaaccabacabbbbcbcbbaacabaaabaaaaaaaabaacccbbcabacaacbbccbbacabcccaabbccbbaacccacccccbacaaaac
cbbcbbabbabcbcbbaccbcaaaabbbbbcccbbabbabaaacaabbbccbaaabcabcbbcacbcbbbcbccbaabbccbccbaacacaacaacbcbc
cbbcbaacbbbabbaccccbbbbbacbaabbbccababccbbbcacaccacbbbcbbbccaacccbcbbaacaccaaccccbbbcaaccccbabcbbbcb
bcacbbbbaaabcbaabcbcccccacabaaaabbababcccbbbbaacacabbacabcbabbaabbacbcbaaaacccccbcacbbcbcaabccaabcab
acacacaaabbacacbcaccbbcabacaabccccaaaacacacaabccbbcbaccaabaaabccbbbcbcbabbbcbaccbcbbbaacacbcacbaacab
caccccbcabbbabaacabccaacbababcaaabcbbccbbbccbbcabbcccbababcccbabcbccccbaacccabccbcbabbaaacbbbaabcacb
bcaccabaabbbbccccccbbccaabbcacbbacbacbbbcbabcbacacabbaaabbcbcbbbcccabcccbbbcbccabccbcbbaaaabaacabacc
abaaacbaabbcbbcaabccaaaabababccabaacaacccbaabcbbccacaaaabaabcaccacabcaabbaccbcbcacaccccabccbcbcbbbbb
bcabacbcbaaccabcacaacbccbbabcaaabacbccbbcccbcbacaaacabbbacaabaaabcaaabccbcccacbbbcbacacacbbbabaabbab
aaabcabbacbccacaaacaaabaaabbabaccbaabbaccbccbcccccccbbabbbacbbcbabacacaabccabbaaaaaaaccccabaabccbbac
100 100
ddaadbcbccddccddaaddbacddaddbdbaaccbbcbadbabdbbcacdaaddbaadcdbccdcbadbccaaadaaccdbddcbbbcdbaddccadbb
adbcbbcaadacbcbdaacaaaccabdbdacdacbbccabacbdbddbbbabdbbacddbbdacadadababcbcbdccacbabcbabbbdcbdcdddad
cadbbadddbcbbcddbabbcdcaaabcbaccabaabddbbccaaccaadbcaccbbdccdabddcbdddabcaaacdaaaaabdabaaccaacddcbab
ccaacccbaddcaacbacbdbcaaabccbacdccabdcbabbbdbdcdcbdcbddbadadacdbabacddbbbbacbcccbdcddccdddccaddcdbad
bbcabdbacdaaccbddbcdbbdaadcddadbcaddaddaaabbabdbccdbcbcbbcddbacdbacbcbadbdbcdabcddbaddcacaddaacdcbba
dbcbdcddacabccdbddbcdbcdaaacbdbaadcbbabdcbbaacdddbbcacaccadddccdadadaabdbaddacddbbcbcbbaaacddddcabab
daacbdadcaabaacdadacbaabbacacbcacdcbdccacdcabaadcbcacacdcdbcaabdcbdacbdbbdaaccdbbbdbbaabbcbdcacacccc
dbadcaadcdacabdcbacacdcbcdbdccadaaabccacbbdcddcccbaacaaacdcbcbcaddbaabbaacabdbacbbbaadcbccbcddbbadba
acdccacbdcacbbcbadbaadbbababcccacdcddbdbdbdbccacddbacbdcbbcbbcbadbbbdabdaabdbcaaabccdcaddacbbbbccbca
dbbdbcccbdbcdaababbcbdbacbbddbdbcadccdbdcacbaadcacbddadcbaacddbabbcaddabbacbabcadbddcbaacadabbdadaaa
bcbcbbcbcdcabccbbaacdadabbdcabdddabcccccdddcdbdcadcdcabaacdbaaaaccacadcdcdbbacccabdacaaabdbcabdaaccc
aabbdadcbcdaacdaaadbacdbdadddbcbbbbdccdabdbbabcadabdccbbcccadabdacacacdaaccabaaddadbbdbcdbcacbdcaddc
acabcaacbcacaabaabbcadacccadbacccacaadadcaabdbddaadcbcacdbabdcacddbbbbccaacddbaddabbaaccdadcdddaccad
babdcddbabbaabaaddbaacacaabbddacacddabdcdcdbdadccbdabcacccdacbcadcccccbddcacbdabdbcddcdccdbcaadccadd
bdcdadabbdbbaddbbbbbdbdcadcdddcdacddddbddbdaadcbddbabdacdacbabdcdbcddabdadcdabcdcabcbabcadcaabbddcdc
abccddcadbbbaadaccdadcdbadccddabdccdaaddbdbaddabaadbacbacaaaddadcdbaabaacddddcacdcaaadaabcababcbaabb
cacbdbdaddcdaabccbabcccabddccbbdcabbdbbdddadccbcdbabdabccaddccacbbbccaabddadcabcbbbcdbdcdabddddbbdcb
babcabdcdcbccddacdcbbdddcacbbcdbddbbbdbbbbbdcbcabadcdbddbbbbccbcadbdcdcdadbbdbcbdccccccccddccdacbcad
adbbbbaddbcaadcbbcabbabaabadbcbcccacdadcbdabbbbcacbdabacaabbabddadbaccdbcccdbcbcdabbbdcadbdbdcddcaba
dbbbbcbdabdadbdcaadaacbdbbbcbaaabdabcdaaccdbdcaddcbddbacccbdadbaacdccbbdabbadbaaaacabaaccbddabcdbbba
dacabcacaadadcaabbbacccbacbcdddcdaaccbbdbbaacdbcdccabbdcacdbccbbcbdbccbcccbddbbaabbcaccbacadcbdadddc
bbcaacabbdccdbabcbddbadaaaaacdabdcaabbcabbdbacabdccdcbcbddcaddbbbcbdaddcbddbaabddcccdcdcacdbdaddcdda
caddabdbcdcdddbabbdccbadbdcdccaababadadccdbaccbadaccbbbbbccdcaccaddbacddaaadaaddbbabbabdaddcbabdabdb
cacbbcadcacaacaaddccbbacdbdddccbbdbaabbbdbaadcadcdccaddabbcbdcdacbbdbbdadbdccacbcccdcdcdcdacabadaaac
bdbbcdbdccdcaccdbacaccdbbadbdccddbaabdadcdcadbcbaccccaadcbbdabbdaabaaaabcdbadbbdabacaacddccbcddbcbcb
badccccbbbabdbcddcdcbbccbcccdddbccdbdadbababacbcacbadabccbabcbcbcdcdabcaaacadabdbababccddabaabbabbcd
ccadbababacbbbdcdcdcddddacbaabacdbacaaabbaabaddaccccdcbdcdcbcddabdaaaacdabccddbdbbdbbbcadcaaaabaabcb
caabaacbbbacbdadaadbccdbacaccbddbbcdddcbdcbcbaabadadddcdacbdbbddbbacbacddaacbacdcdbbcbddabadbdcacbcc
abaddbbabddabcbaabaaccbbabdabcdccadacaabcbdacbbaabcdaadcacddbcbddaccbaaaddcbdbcadcadcbacabdccccabbcc
ddcbbddbcacadaabcacababbbdccccdaaadcccaadabccaabcacaccbdbadabbbabdaaabddadbdaabcbdadddbbcaaddbdabaac
dcbbddacdcdaaadbbddcbbadcccdadccbdcaddaabacbcdbbccbdbcadbbddcabaadbbbddacaccdaaaaabdcdaabaaaadcbabac
adbaabccdabbdcddaaabaabababbddbdadaabcdddbabccbdabddbbaacdcddabacddbabbbcaaabbccbcdbaaddbbaadaadadbd
cbababdbaabbadcacdacaabdadcdaddbccadcbdaabdddabacdbadbdbbbcccdbaaaacdcbdacabbbaaabddabdcccbabdddadbd
dcbdabacdccababdbcbbdcddbaaddddbddddbacddabbadbbccbcbbaacabaabcbcddbccdaabddbabbbaccddacbadbadccabab
ddaacdbbbcccadbbbbdcbbacbccbcbdaaccdcadadbabcbccabadcbabbdacdcabcbacdcbadbdbabbcdaadbcbdaacadcdcadbb
bdcabccdbdcbdddcbdbdadbacadadaadbbdacadcbdaccabbcaccdcbbbacbcacbbdbbbdadabbbcbcaaacdbdbadccbbaddabcd
ddccdbddcbbcabbaaadabdaaacdaddcbcabcbddadadabcbbcdbccbabadcaabdaadaadabdababadbdcdabcbcaaddacddabcbd
acabbcacaaacbaacbdbcadaacbdaaccaaccbdcddbbdbccabaacdbbddcddabaacdbbaabadddcbbbcbcccccdbcbbdbacdccbcb
ddbcdabbcbaddddaddbaaaddbccaaabbbaababdcccdcabbabdbcbccbbdddbabaabcacdbaaaddaccddcdadacaaaadbdabdacc
caacbaabdbaabaabcdbdadccbaabcccadccadabbcbaaaaacdbddddbbbdcdcdacbdddabdddacdcadcbacdaabddacacacdbbbd
aadcbbcacdbbadbaacbcbcadcdcdcccdbdcdbaadbbbbbbdccbdccddbdcadaaaabadbbbdcbcaacabacbbadcbcaacdacbcacbb
aaacbdcccdddacaacaabbaccbabaaadcdbdcbcdaccbcbbabcdbcdacbdcccdacbabaacadcabccaaadaaddbdadcadbabcbbcda
dbbddaacbacacdabdbbbdcdbadddcbddbcddadbdbcacdbcdbcadbadbccbdcdcbcbdabccbdadbdaddacdabcdcccdabccbaacd
abdddadcdcbbdbaacbddaddddaaadbddbbdbcadacbacddaaadcbbbddaddbbcacdaaadcbaadccdadadbbaaadbbbbbacdacdaa
cbdcccbadabdaabdcabbcbaddbbccdaaaacbdadbdabcccacbcabbccadccaacababccdacaacbbbbccdadaacbaddcbdcadcdda
ccdcbdddcdbdaadacabcddbcdcdbccbabcbccaaadcdadaacaaaddcccabcdbcdcdacbaaabdbccdccbbcacaaccdbcccdcbbaac
ccccdaabdaacbcdabcbbabbccccbccadaaacbdbaaaaaaadadcdabbdcabddcccbdbacacddabaadbbdbbadabcdabadbacccadb
bbbdcdbcbdaadddbababccdaabacbdbadacadcdbddcbbbbdcbccdbcdcddaabcccddbcbbbdcbdabdaababcacadaabacbaccad
ddbddccadbcbaccadbdbacdbacdcabbbdbbddbbacdbbccaaddbbadadbbbddbbaaacabbcccbdbbcbabbdcdbddbabadabaaaad
daadbcdbbddbbbcbccdddbdabdcadbdaabbdcccacdacdccbabcaabbaadcaaaccbddbcaacbaaaaaddbbcbcbbdacbbdddbbadb
dcbababcddbccaddadacccbdadacadbaadaccbcbbdadbbdbcacbbcababcbdaaccdddaccbbadbbabbbbddbcaacdabadccacaa
accbdcdbdbadabdbdbdacdadcabbcbabcdccdbadbabaddbccbbaaaaccdccacdbaacdcbccccaacbcdcbaabccdcabcdcbaabbb
dcbdcbbccccddbdbbaacbabbcbbdbcbddbabccdddcbdcbbdcaccdbacbaacddacaaabbcacdbdccbdbcbcdbaabbbcadadbabbc
ddcaadabacbaaddccccabcdcacccdcdbbccbbadaccddbcadcbcabbdaddacdbcccaaadabcccadddcbcdaacacacaddcabacaab
adcaadbaaabbbdabdcdbacbbdbbdcbbbcbcbdddbacaddabcaddbcddddddabbaabdacdaaccbbcbaabcdcbcbbcbcbdddbbddcc
aaaaccccccbcdbaaccdcbcdabdabcdcccbbdadaaccaccdadbaacaddbcbbdcbbccbbcbcdabaabaaabacbcabdbcbdabddbaccc
abdbaadcdbcdbadddaacbdaabdddcdcdbcaaccdccadadbabbacaadcccddccabababaacbbbcdbddadbbbbcbcdccbddbbbccdc
aabbbdbcabbcdabcabacddcbccbddcccbbdbbadccdbcddbcaadaaacccdacbdcdadcdcddbbbbbcdccaabacaacdadbcbdbddaa
cbcbcabcdbabacadadccbbcbbaacbcddddaaacbdcddbcdbacbccbdbbdacdccaababcaabbaddcabaaacbbcadccbbddbcbcdaa
adadaadbccaddddaabbababddcdaacdbcbacccbccbdaccacadacbdcccabbcaaccddbdadacbdacaaabacaadacabbbbbadccbb
bacababcbccbdcddbbcdcadaaaddababdbbbabbdbcdcddbdadbcdbdbddadaddccdcacadcccddabcdccbdaabacbbcacbaacda
dbcacacdcdaacdcbabadcdabcbdcacbddaabdcaccbbcabdbdabdcdcdbabbcdacdbdabcacddbabdccbbaddcdbcddadcadcaab
ccdabaccddbbdabbaacdabaacbbcbcccabbdaddbbabcacabbcbadbcaabcccbdacdcbbbdbaccabbaacccbdadbddaaacbcbacc
dddbcbddacdcabcbbdacbbddacccaaaddbdccbcbdcdccabbacbacbdaadaaddcaddddbcbdcdbbacdabbbdabaddddbcbcabbcb
cabaddbcdcddcbccbdbdbabbccbdbababdcbabccbcdcbaccbcabcabdcccdbcbdcaabaababbbacaccccdadccdccdcdbaccbcc
acdbadcbddcdccdaacbddacaddccadcadccbadcccdcbaaaddacbacacdcbdadcbbacdadaddcbdbdbdcaabbcbdbbdadddcdaba
bdcaacabdddaabbadcbbbaccababdcbdcbcddcaabbddccdbbaabbcabdddcacabdcbddcdaaddacadbdcbbdbbabdcbdaabacdc
bcbaccdcdabacdcbcaddbadacacacbdaacabccbcccbbbdbaddbddcacacbbaadcacccaaddbcdbabddaccadbbbbddbcbbabcaa
bcdcdbcdaddcabdbcbaccbcabbcbaccdacdcabdadadaabaddcdaccdbabccacacbcdabacaaabbcabbdaadbacbdabdccccbabd
badcaacdbdbabdbbabdddbcdaddcdcaaadccbccdbdbabddacdbadcdcadbddcdddacbcdbadccadabadacadccbcacacdddbcbd
ddcdcccaadbcadababaaaadcdbabcdbdbdddcbbbdcbcaaacadacabdacacaccdcdbccabbdadcdddcbcaaaccaddaabcdcabdaa
daabaaabbabddacbacaddbaabcaaadbcdaaacddcddddbdacadadbdaaaddcddaabadaccddaaccdbacbaaaccbbccadccdbdaba
bdddbdddbcccababaccaddddcdacaaaacbaabacdacacacddbabbddabcaacbadbbaccadccdcbbbddbbcaddadccadcaabdcdbc
cbbddaaadacadbbdcddbcdbcaadbcabaaabcccccdbbddccbabbddbbbbabaacbdbcdaccdaacadbdaacabdacadabddbccabbdb
dcdbdacabccadcdccccbabadacacbdbadabccbbbacccdbdaabddcbbabddcacbcacccdcddccccddaacadaacdbabddcacdbddc
cabbbaddcdddabcbacaccadcdabcddccbbdaddbcabaadbdccdaacbbdaccdbcdbcdbaddaccadacbdcadbdacdbbcbddaaabbca
cadaccacbdcbaabcbbcaaaccbbdcacaadcaddcddbbaabbccaaccdaadabcababbcbbacaddbbbdaccdbbcabcaddadcdccddbdd
bbbbbbabadbabdabcccbdccddacbddcdddbccacdbdbbdccddacccdbdacdabbbbaddbccdaabbddbbcdaacdacdcaddbacabbcd
addbdcacbcbddddaddddbcddabdbbcadbcccaddbcabcbdbaaccccadabcbdaadcdbdcdacbbddcdcaabdabaddbabaddbadbaab
dbbbddbabcbbcaaddbddcadbbdddabdaacdcdaadbbdcddabadcbcbaacadccbbdcababdaabbabbccdcccdadbadccdbacbcbac
bcbcbaccaadacabdbbddddcdbcbdddcaacccdbcccbdacdadabccccabbadbbaddbaaabaaabbcbabcdbccabdacbabbbcbdacad
cbacaaaadabaaaccdccbbabccacdccadddcbacaaaddccdadadbdccdcabaaccacdbbaaddccbbacdcbacdadabcddbcaacccaca
adbbbadcbbbaadcdabbbabbabdadabbaaccdcdbccdbcdcdababacdccacdccaccbacaacccbcbacdbadddccbdbbddcdbbcccac
dbacccdbddcdbbaadddbbbaadbbbdcccdabdcabcaaabacdbbbdbcacadcadbcccbdcaacacbdbadcccaadcdaabcbaddabcaddc
acadabddcbddbcddbbaaadccbcccacdbddbbdbcabddddacbcdaacdcdacdbcbaaaacbccaabacdddbdbcbcdadddccdbbaaddad
dcacbbacdbbdcdcbdacbcbabcaaaaddcaabccaabbdaccabcdcaccdbddaabaaddadacccadacccacabccdcbabacdadccababbd
dacbbbbdacabaddacaabcddbdbcbdbaabadddddadcbdbdcacdbbadddcbadbdadcadaccccaadccbcadbbbddccdcdccdcaacbb
dbabddbdccbcacaadcbccadcdbcadadbbabdbcbbcabcbccdbcdcadaadcadbbdbadddbdbbbadbdbdcdccdadbadaaaabcaacbd
dbccdcccbacaacaadbabbacadaadcbcaaaabacacabbcbcccdddadcbcdcbbbadbcadcbbdbcccdadabcddabdcdddadcdadabca
bbacbbcaadcaadaccbbddddbacbbddcaaadcaaaabdaddbcccccbdcacdcbabcdbdaaaabcaaababaadbbbbaaaddbbdbcbabdcb
accdaadabddcdbbabbcdbbcadaaacadaacbcbaacaaacbaacdbadaacaacdcddbcbbdbabbabcaddbacabacaabbdbaccdbdcdad
acbcabcddacbcddbcdbdacbdccdcdaabbccbcbbadbbdbbbaadabaddcadcaaaccadcbbcaccadddbccbdaaccccccaacdddaacb
daacbbcbcbcdcdddcbbaddddabdabbcbadbacadcbaabbdbdbcbdadaadccaaccdddddabccbbbbbcaacadadadabcaddcbaabca
aadabcccdcdbbdbccdadacacbabdddbcabcbbcaccdbdddacbacaaadbdbacbcbcdbcacbcbcddbdadacacdacbddcdbbdcdbcac
cddaddbabcaddbabaccbadcbdbacdcacaacdcdddbbbaabacaccccaacaddcadcbbaabcdadabdcdccbaabdccddddcaadcdddbd
dacdbccccccdbccaddbbaadaabddbcbacadaaacabadaddcabbddababdaccdddbcbaccacccacdadbdbcbcbacabcddcdbbdbaa
cadddbdaccddcadccaaacccdbdbbccbdbbbbdbcaaadbabacabacdadbababcdbcbaabdddddbdaadccbdacdaccadcaddccaaac
cdbabbbcbbddacbddcccaacccaccbabbabbabacdddabbcdbccaaadcacbcdbccbbbdcaccadbadbacbaaaabcacdcbbdbadcadd
adbaddbcdccdbbcacababdbddbddcabdaacbcbbbabcccdbbdbbabaaccbdabcabadcabdbbccddcddcabdbcbdbddacadcbbcba
cbbcddbcbccbcabbbdcbccbccbbbcddcadbddcacacdcacbbaabbdcdadcccdaabdbbaabadcbccddaabbdcdaddaaadbaadaaad

你可能感兴趣的:(UVa 10975 - Dueue's Quiz)