Điều chỉnh chuỗi

Xem dạng PDF

Gửi bài giải

Điểm: 0,15 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Nguồn bài:
HSG Hòa Bình 2020-2021
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Cho n chuỗi ký tự S1,S2,...,Sn khác rỗng, có độ dài có thể khác nhau và chỉ chứa các chữ cái tiếng Anh in thường.

Bạn có thể thực hiện phép di chuyển sau đây: Lấy một ký tự c bất kỳ trong chuỗi Si và chèn ký tự c này vào một vị trí bất kỳ trong chuỗi Sj. Sau khi lấy ký tự c trong chuỗi Si , ký tự c sẽ bị xóa khỏi chuỗi Si(1i,jn,ij).

Bạn được phép thực hiện di chuyển trên với số lần tùy ý (có thể 0 lần).

Hỏi sau khi thực hiện các di chuyển như vậy, bạn có thể làm n chuỗi ký tự đã cho trở nên hoàn toàn bằng nhau hay không.

Ví dụ:

  • Với n=2,s1= "abcade", s2= "cbed" thì câu trả lời là YES.
  • Với n=2,s1= "abcad", s2="cbed" thì câu trả lời là NO.

Bạn phải trả lời q truy vấn độc lập.

Dữ liệu:

Dòng đầu tiên của đầu vào chứa số nguyên q(1q50) là số truy vấn. Tiếp theo là q truy vấn, mỗi truy vấn gồm:

  • Dòng thứ nhất chứa số nguyên dương n(1n10) là số chuỗi ký tự.
  • Dòng thứ i trong n dòng tiếp theo chứa chuỗi ký tự si, chỉ gồm các chữ cái tiếng Anh in thường. Mỗi chuỗi có không quá 104 ký tự.

Kết quả:

  • Ghi ra q dòng, trong đó dòng thứ i ghi ra từ YES hoặc NO là câu trả lời cho truy vấn thứ i.

Ràng buộc:

  • 70% số test ứng với 70% số điểm của bài có 1n2 và các chuỗi si(1in) có độ dài không quá 50.
  • 30% số test ứng với 30% số điểm của bài có 1n10 và các chuỗi si(1in) có độ dài không quá 105.

Ví dụ:

Sample Input
Copy
3
2
aabb 
cc
2
ab
ab
2
ab
a
Sample Output
Copy
YES
YES
NO

Giải thích

Trong test ví dụ Có 3 truy vấn:

  • Truy vấn 1: n=2,s1= "aabb", s2="cc". Bạn có thể lấy 1 ký tự 'a', một ký tự 'b' từ chuỗi s1 chèn vào s2, sau đó lấy một ký tự 'c' từ s2 và chèn vào s1. Câu trả lời là YES.
  • Truy vấn 2: n=2,s1=s2= "ab" đã hoàn toàn bằng nhau, vì vậy bạn không cần thực hiện di chuyển nào. Câu trả lời là YES.
  • Truy vấn 3: n=2,s1="ab" s2="b", bạn không thể thực hiện di chuyển nào để hai chuỗi này trở nên bằng nhau, câu trả lời là NO.

Bình luận

Hãy đọc nội quy trước khi bình luận.


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