Đề 21 - Bài 1: Mật mã ước số

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 5

Đội thám hiểm vũ trụ phát hiện ra một tàn tích của người ngoài hành tinh. Để mở cửa kho báu, họ cần nhập vào một "tần số năng lượng" đặc biệt. Máy quét cho biết tần số này là một số nguyên nằm trong đoạn từ L đến R có nhiều ước số dương nhất. Nếu có nhiều số cùng có số lượng ước số lớn nhất, hệ thống sẽ chấp nhận số có giá trị nhỏ nhất. Hãy giúp đội thám hiểm tìm ra tần số này.

Input: Một dòng duy nhất chứa hai số nguyên L và R (1 <= L <= R <= 10^5).

Output: Số nguyên tìm được thỏa mãn điều kiện.

Ví dụ:

Input:
1 10
Output:
6

(Giải thích: Trong đoạn [1, 10], các số 6, 8, 10 đều có 4 ước số. Số 6 nhỏ nhất nên được chọn).


Đề 21 - Bài 2: Tín hiệu độc nhất

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 5

Trạm thu phát sóng nhận được một chuỗi tín hiệu vô tuyến S gồm các chữ cái in thường. Để giải mã thông điệp cốt lõi, hệ thống cần trích xuất ra một đoạn tín hiệu liên tiếp dài nhất mà trong đó không có bất kỳ ký tự nào bị lặp lại (mỗi ký tự chỉ xuất hiện tối đa 1 lần). Hãy xác định độ dài của đoạn thông điệp cốt lõi đó.

Input: Một xâu S chỉ gồm chữ cái in thường (Độ dài <= 10^5).

Output: Độ dài của đoạn tín hiệu không lặp ký tự dài nhất.

Ví dụ:

Input:
abcabcbb
Output:
3

(Giải thích: Đoạn tín hiệu dài nhất là abc, bca hoặc cab).


Đề 21 - Bài 4: Lát gạch hoa

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 5

Để khôi phục lại sảnh chính của một ngôi đền cổ có kích thước 2 x N (2 hàng, N cột), các kiến trúc sư sử dụng những viên gạch hoa hình chữ nhật có kích thước 1 x 2. Có thể đặt gạch nằm ngang (chiếm 1x2 ô) hoặc nằm dọc (chiếm 2x1 ô). Hãy tính xem có bao nhiêu cách khác nhau để lát kín toàn bộ sảnh đền này? Kết quả có thể rất lớn nên hãy in ra phần dư khi chia cho 10^9+7.

Input: Một số nguyên dương N (1 <= N <= 10^6).

Output: Số cách lát gạch modulo 10^9+7.

Ví dụ:

Input:
3
Output:
3

(Giải thích: 3 cách gồm: 3 viên dọc; 1 viên dọc 2 viên ngang; 2 viên ngang 1 viên dọc).


Tối ưu bộ nhớ đệm (Min Deletions to Make Frequencies Unique)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 5

Một bộ nhớ đệm lưu trữ các tiến trình dưới dạng một chuỗi S. Bộ nhớ này được coi là "ổn định" nếu không có bất kỳ 2 loại tiến trình (ký tự) nào có số lần xuất hiện (tần suất) bằng nhau. Em có quyền xóa bớt một số tiến trình ra khỏi bộ nhớ. Hãy tìm số lượng tiến trình ít nhất cần xóa để bộ nhớ đạt trạng thái ổn định.

Dữ liệu vào: Xâu S chỉ gồm chữ cái in thường (1 <= len(S) <= 10^5).

Kết quả ra: Số lượng ký tự ít nhất cần xóa.

Ví dụ:

Input:
aaabbbcc
Output:
2

(Tần suất ban đầu: a=3, b=3, c=2. Xóa 1 chữ b và 1 chữ c. Tần suất mới: a=3, b=2, c=1. Các tần suất đều khác nhau).