Dãy đèn (OLP MT&TN 2022 CT)
Thuận có một dãy đèn gồm đèn, các đèn được đánh số từ \(1\) đến \(n\). Mỗi đèn có ba trạng thái, trạng thái sáng màu xanh hoặc sáng màu đỏ hoặc tắt. Ban đầu tất cả các đèn đều ở trạng thái tắt. Tương ứng với đèn thứ có công tắc thứ \(i (1 \le i \le n)\), khi tác động vào công tắc này trạng thái đèn thứ \(i\) sẽ thay đổi như sau:
- Nếu đèn đang ở trạng thái tắt sẽ chuyển sang trạng thái sáng màu xanh;
- Nếu đèn đang ở trạng thái sáng màu xanh sẽ chuyển sang trạng thái sáng màu đỏ;
- Nếu đèn đang ở trạng thái sáng màu đỏ sẽ chuyển sang trạng thái tắt.
Thuận đã thực hiện một dãy gồm \(t\) lần tác động vào các công tắc và nhận được dãy đèn gồm \(a\) đèn ở trạng thái sáng màu xanh và \(b\) đèn ở trạng thái sáng màu đỏ. Là người yêu thích Tin học, Thuận muốn tính xem có bao nhiêu dãy gồm đúng \(t\) thao tác để từ trạng thái ban đầu (tất cả các đèn ở trạng thái tắt), sau khi thực hiện dãy thao tác có \(a\) đèn ở trạng thái sáng màu xanh và \(b\) đèn ở trạng thái sáng màu đỏ.
Yêu cầu: Cho các số nguyên \(n, t, a, b\), gọi là số dãy gồm thao tác để từ trạng thái ban đầu nhận được dãy có \(a\) đèn ở trạng thái sáng màu xanh và \(b\) đèn ở trạng thái sáng màu đỏ. Hãy tính \(S \% (10^9 + 7)\), trong đó \(\%\) là phép toán chia lấy dư.
Input
Vào từ thiết bị vào chuẩn gồm một dòng chứa bốn số nguyên \(n, t, a, b\) cách nhau bởi dấu cách \((0 \le a, b; a + b \le n)\);
Output
- Ghi ra thiết bị ra chuẩn một số nguyên duy nhất là giá trị \(S \% (10^9 + 7)\)
Scoring
- Subtask #1 (\(30\%\) số điểm): \(n, t \le 6\);
- Subtask #2 (\(30\%\) số điểm): \(n, t \le 60\);
- Subtask #3 (\(40\%\) số điểm): \(n, t \le 600\);
Example
Test 1
Input
2 3 1 1
Output
6
Note
Sáu dãy gồm 3 thao tác (vào các công tắc) thỏa mãn:
1, 1, 2
1, 2, 1
1, 2, 2
2, 1, 1
2, 1, 2
2, 2, 1
Tính tổng (OLP MT&TN 2021 CT)
Trang https://lqdoj.edu.vn/ đang là một trang học lập trình của nhiều học sinh, đó cũng là trang mà Hồng luyện tập để chuẩn bị cho kỳ thi Tin học trẻ. Hàng ngày, mẹ giao nhiệm vụ dạy em Phúc luyện tập về phép cộng, để có nhiều thời gian code, Hồng đã nghĩ ra loại bài tập cho em Phúc như sau: Chọn một số nguyên dương \(n\), em Phúc cần phải cộng liên tiếp các số \(n\) cho tới khi tất cả các chữ số của tổng nhận được đều bằng nhau và trả lời số lượng số đã cộng. Ví dụ, nếu \(n=37\) thì em Phúc cần cộng ba số 37 để nhận được tổng là 111 có các chữ số giống nhau.
Nhằm lựa chọn số nguyên dương \(n\) để em Phúc không phải cộng quá nhiều và kiểm tra câu trả lời của em Phúc, Hồng muốn xây dựng một chương trình tính số lượng số cần cộng với một số nguyên dương \(n\).
Input
- Vào từ thiết bị vào chuẩn gồm một dòng chứa một số nguyên dương \(n (n<10^3)\).
Output
- Ghi ra thiết bị ra chuẩn một dòng chứa một số nguyên là số lượng số cần cộng. Trường hợp số \(n\) đã gồm các chữ số giống nhau chỉ cần ghi số 1, trường hợp không tồn tại tổng có các chữ số giống nhau ghi -1.
Scoring
- Subtask \(1\) (\(40\%\) số điểm): số lần cộng không vượt quá \(10^6\);
- Subtask \(2\) (\(60\%\) số điểm): không có ràng buộc nào thêm.
Example
Test 1
Input
37
Output
3
Test 2
Input
11
Output
1
Test 3
Input
100
Output
-1
Bảng chữ cái (OLP MT&TN 2022 CT)
Thuận có một bảng gồm \(r\) hàng và \(c\) cột, mỗi ô trên bảng có ghi một chữ cái in hoa. Để làm giảm kích thước của bảng, Thuận muốn xóa đi một số cột của bảng này hoặc giữ nguyên, nhưng phải bảo đảm rằng, sau khi xóa, nếu ghép các kí tự trên một hàng để tạo thành xâu kí tự, \(r\) xâu kí tự tạo bởi \(r\) hàng phải đôi một phân biệt.
Yêu cầu: Hãy cho biết Thuận có bao nhiêu cách xóa (hoặc giữ nguyên) các cột để thỏa mãn điều kiện này. Hai cách được gọi là khác nhau nếu tồn tại một cột trong cách này không bị xóa còn trong cách kia thì bị xóa.
Input
Vào từ thiết bị vào chuẩn có khuôn dạng:
- Dòng đầu tiên chứa hai số nguyên \(r (r \le 1000)\) và \(c\) là số hàng và số cột của bảng;
- Trong \(r\) dòng tiếp theo, mỗi dòng chứa \(c\) chữ cái in hoa mô tả bảng.
Output
Ghi ra thiết bị ra chuẩn một dòng chứa một số nguyên là số cách đếm được thỏa mãn điều kiện.
Scoring
- Subtask \(1\) (\(26\%\) số điểm): \(c \le 10\);
- Subtask \(2\) (\(32\%\) số điểm): \(c \le 15\);
- Subtask \(3\) (\(42\%\) số điểm): \(c \le 20\).
Example
Test 1
Input
3 3
ACD
BCE
BAD
Output
4
Note
Thuận cần phải giữ lại ít nhất 2 cột. Ví dụ, nếu xóa cột 2 (giữ lại các cột 1 và 3) khi đó, các xâu kí tự AD, BE, BD tạo bởi 3 hàng là đôi một phân biệt.
A Plus B
Tudor is sitting in math class, on his laptop. Clearly, he is not paying attention in this situation. However, he gets called on by his math teacher to do some problems. Since his math teacher did not expect much from Tudor, he only needs to do some simple addition problems. However, simple for you and I may not be simple for Tudor , so please help him!
Input Specification
The first line will contain an integer ~N~ (~1 \le N \le 100\,000~), the number of addition problems Tudor needs to do. The next ~N~ lines will each contain two space-separated integers whose absolute value is less than ~1\,000\,000\,000~, the two integers Tudor needs to add.
Output Specification
Output ~N~ lines of one integer each, the solutions to the addition problems in order.
Sample Input
2
1 1
-1 0
Sample Output
2
-1