Ngoài tần suất từng chữ cái đơn (monogram), phân tích tần suất bigram (cặp 2 chữ cái liên tiếp) cũng là công cụ hữu ích trong thám mã cổ điển, ví dụ để nhận diện các cặp phổ biến trong tiếng Anh như TH, HE, IN, ...
Cho một văn bản, sau khi chuẩn hóa (chỉ giữ chữ cái A…Z, không phân biệt hoa/thường, loại bỏ ký tự khác) ta được chuỗi S=s1s2…sN. Các bigram của S là s1s2,s2s3,…,sN−1sN (có thể chồng lấn lên nhau, tổng cộng N−1 bigram).
Hãy tìm bigram xuất hiện nhiều lần nhất trong S. Nếu có nhiều bigram cùng đạt số lần xuất hiện lớn nhất, chọn bigram nhỏ nhất theo thứ tự từ điển.
Ví dụ: văn bản banana chuẩn hóa thành BANANA, các bigram là BA, AN, NA, AN, NA. AN và NA cùng xuất hiện 2 lần; theo thứ tự từ điển AN nhỏ hơn NA, vậy kết quả là AN 2.
Một dòng duy nhất chứa văn bản, độ dài tối đa 105 ký tự (có thể rỗng).
Gọi N là số chữ cái sau chuẩn hóa. Nếu N<2 (không đủ để tạo bigram), in ra undefined. Ngược lại in một dòng theo định dạng <BIGRAM> <SỐ_LẦN> (bigram gồm 2 chữ in hoa, cách số lần xuất hiện bởi một khoảng trắng).
Ví dụ:
Đầu vào:
A
Đầu ra:
undefined
Đầu vào:
Đầu ra:
undefined
Đang tải editor...