Xâu điệp viên

Đề bài

Mô tả

Cho n xâu a1,a2,,an, tất cả đều có cùng độ dài m và chỉ gồm các chữ cái latin thường.

Hãy tìm một xâu s độ dài m sao cho mỗi xâu đã cho khác s tại nhiều nhất một vị trí. Nói cách khác, với mỗi i tồn tại không quá một chỉ số j thoả mãn ai[j]s[j].

Xâu s cần tìm có thể trùng với một trong các xâu đã cho, hoặc khác tất cả chúng. Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.

Ví dụ, với hai xâu abac và zbab thì abab là một đáp án hợp lệ: nó khác xâu thứ nhất đúng một vị trí (ký tự cuối) và khác xâu thứ hai đúng một vị trí (ký tự đầu).

Dữ liệu vào

  • Dòng đầu chứa số nguyên t là số lượng bộ dữ liệu.
  • Mỗi bộ dữ liệu gồm: dòng đầu chứa hai số nguyên dương nm là số lượng xâu và độ dài mỗi xâu; n dòng tiếp theo, mỗi dòng chứa một xâu ai độ dài m gồm các chữ cái latin thường.

Dữ liệu ra

Với mỗi bộ dữ liệu, in ra trên một dòng xâu s tìm được. Nếu không tồn tại xâu nào thoả mãn, in ra 1.

Ràng buộc

  • 1t100
  • 1n10
  • 1m10
  • Mỗi xâu ai có đúng m ký tự, là chữ cái latin thường.

Ví dụ

Input Output Giải thích
5
2 4
abac
zbab
2 4
aaaa
bbbb
3 3
baa
aaa
aab
2 2
ab
bb
3 1
a
b
c
zbac
-1
aaa
ab
a
Bộ 1: zbac khác abac ở vị trí 1, khác zbab ở vị trí 4; abab cũng là đáp án hợp lệ. Bộ 2: aaaa và bbbb khác nhau ở cả 4 vị trí nên không có đáp án. Bộ 3: aaa khác baa và aab mỗi xâu đúng một vị trí. Bộ 5: khi m=1 mọi xâu một ký tự đều hợp lệ vì luôn khác không quá một vị trí.
3
1 3
abc
3 3
aaa
aab
aba
3 2
aa
bb
cc
abc
aaa
-1
Bộ 1: chỉ có một xâu nên lấy luôn xâu đó. Bộ 2: aaa khác aab và aba mỗi xâu một vị trí. Bộ 3: ba xâu đôi một khác nhau ở cả hai vị trí nên không có đáp án.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0