trang chủ / bài tập / findrepl

Find and Replace

Đề bài

Mô tả

Bessie sử dụng phần mềm soạn thảo văn bản có tính năng "tìm và thay thế". Với mỗi thao tác, cô chọn một ký tự c1 và thay tất cả các lần xuất hiện của c1 bằng một ký tự khác c2. Ví dụ, với xâu "aAbBa", thay 'a' bằng 'B' được "BAbBB".

Bảng chữ cái gồm 52 ký tự (a-z và A-Z). Cho T truy vấn, mỗi truy vấn gồm xâu đầu vào và xâu đầu ra có cùng độ dài. Hãy tìm số thao tác tối thiểu để biến đổi xâu đầu vào thành xâu đầu ra, hoặc 1 nếu không thể.

Dữ liệu vào

  • Dòng đầu: số nguyên T (1T10)
  • T cặp dòng tiếp theo: mỗi cặp gồm xâu đầu vào và xâu đầu ra

Dữ liệu ra

Với mỗi truy vấn, in ra số thao tác tối thiểu hoặc 1.

Ràng buộc

  • 1T10
  • Tổng độ dài tất cả các xâu 105
  • Các ký tự thuộc a-z hoặc A-Z

Ví dụ

Input Output Giải thích
4
abc
abc
BBC
ABC
abc
bbc
ABCD
BACD
0
-1
1
3
Xâu 1: đã giống nhau. Xâu 2: B phải ánh xạ sang cả A và B, không thể. Xâu 3: thay a bằng b. Xâu 4: cần 3 thao tác qua ký tự trung gian.

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