qhdxau - Xâu
Dữ liệu vào: standard input
Dữ liệu ra: standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: admin

XÂU ĐỊNH DẠNG

Cho 2 xâu ký tự S và T trong đó S chỉ bao gồm các ký tự 'a' -> 'z' còn T chỉ bao gồm các ký tự 'a' -> 'z' và 2 ký tự đặc biệt là '?' và '*'.

Một ký tự '*' trong xâu T có thể đại diện cho 1 số lượng bất kỳ (có thể bằng 0) các ký tự 'a' -> 'z'.

Một ký tự '?' trong xâu T có thể đại diện cho đúng 1 ký tự trong số các ký tự 'a' -> 'z'.

Một xâu X gọi là thỏa mãn định dạng T nếu ta có thể thay các ký tự '*' và '?' trong xâu T để thu được xâu X.

Ví dụ:

T = '*bc?' sẽ có các xâu X thỏa mãn như 'abca' , 'bca', 'bcd', 'aaaaabcz', ...
Trọng số của một xâu được tính bằng tổng trọng số của các ký tự có trong đó với quy ước 'a' = 1, 'b' = 2, 'c' = 3, ... 'z' = 26.

  • Yêu cầu: Hãy tìm xâu X là xâu con của xâu S mà X thỏa mãn định dạng T và có trọng số là nhỏ nhất.
  • Dữ liệu vào: Từ file văn bản ST.INP có cấu trúc như sau:
    • Gồm duy nhất 1 dòng chứa 2 xâu T và S ( 1 ≤ |S| ≤ 104, |T| ≤ 103 )
  • Kết quả: Ghi ra file văn bản ST.OUT gồm duy nhất một dòng ghi trọng số của xâu X tìm được, nếu không có xâu X nào thỏa mãn thì ghi ra số -1.
  • Ví dụ:

ST.INP

ST.OUT

Giải thích

a*c?a axcbaabcbax

9

abcba có trọng số nhỏ hơn axcba

Ví dụ

Back to Top