Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [An toan thong tin] Bóc nhiều lớp Base64

    Bóc lớp Base64 lặp

    Một chuỗi được Base64-encode k lần liên tiếp (k ≥ 0). Đặc điểm: văn bản gốc KHÔNG phải là chuỗi Base64 hợp lệ-có-thể-giải (chứa ký tự ngoài bảng Base64, ví dụ có dấu cách hoặc ký tự đặc biệt). Hãy giải mã lặp: chừng nào chuỗi hiện tại còn là Base64 hợp lệ (chỉ gồm A-Za-z0-9+/=, độ dài bội 4, và decode ra UTF-8 hợp lệ) thì tiếp tục decode; in ra văn bản cuối cùng cùng số lớp đã bóc, dạng <text>|<k>.

    Ví dụ

    Input:  U0dWc2JHOGdkMjl5YkdRaA==
    Output: Hello world!|2
    
    • Định dạng đầu vào:

      Một dòng chuỗi b.

    • Ràng buộc đầu vào:

      0 ≤ len(b) ≤ 4000.

    • Định dạng đầu ra:

      Một dòng: <văn bản cuối>|<số lớp>.

    Ví dụ:

    Đầu vào:

    U0dWc2JHOGdkMjl5YkdRaA==

    Đầu ra:

    Hello world!|2

    Giải thích:

    Bóc 2 lớp Base64 -> 'Hello world!' (có dấu cách nên dừng).

    Đang tải editor...