Thằng bờm và Phú ông
Bờm thắng phú ông trong một cuộc đánh cược và buộc phú ông phải đãi rượu. Phú ông bèn bày ra một dãy \(𝑛\) chai
chứa đầy rượu, và nói với Bờm rằng có thể uống bao nhiêu tuỳ ý, nhưng đã chọn chai nào thì phải uống hết và
không được uống ở \(𝑘\) chai liền nhau bởi đó là điều xui xẻo.
Bạn hãy chỉ cho Bờm cách uống được nhiều rượu nhất.
Input
- Dòng 1 chứa hai số nguyên \(1 \le 𝑛 \le 4 \times 10^5; 2 \le 𝑘 \le 4 \times 10^5\)
- Dòng 2 chứa các số nguyên dương (\(\le 10^6\)) là dung tích của các chai rượu phú ông bày ra, theo thứ tự liệt kê
từ chai thứ nhất tới chai thứ \(𝑛\)
Output
- Dòng 1 ghi số chai được chọn và lượng rượu tối đa có thể uống.
- Dòng 2 ghi chỉ số của các chai được chọn theo thứ tự tăng dần
Example
Test 1
Input
6 3
6 10 10 13 10 10
Output
4 40
2 3 5 6
Pascal's Triangle Problem
Trong toán học, tam giác Pascal là một mảng tam giác của các hệ số nhị thức. Các hàng của tam giác Pascal được liệt kê theo quy ước bắt đầu bằng hàng \(n = 0\) ở trên cùng (hàng \(0\)). Các mục trong mỗi hàng được đánh số từ đầu bên trái với \(k = 0\) và thường được đặt so le so với các số trong các hàng liền kề. Tam giác có thể được xây dựng theo cách sau: Trong hàng \(0\) (hàng trên cùng), có một số \(1\) duy nhất. Mỗi số của mỗi hàng tiếp theo được xây dựng bằng cách thêm số ở trên và bên trái với số ở trên và sang bên phải, coi các mục trống là \(0\). Ví dụ: số ban đầu trong hàng đầu tiên (hoặc bất kỳ số nào khác) là \(1\) (tổng của \(0\) và \(1\)), trong khi các số \(1\) và \(3\) trong hàng thứ ba được thêm vào để tạo ra số \(4\) ở hàng thứ tư.
Ta gọi \(P(n)=A[0,n-1]+A[1,n-2]+...+A[C(n/2)-1,n-C(n/2)]\)
Trong đó :
- \(n\) là số nhập trong input
- \(A[i,j]\) là số thứ \(i\) của hàng thứ \(j\) (Tính từ trái qua phải, số đầu tiên là số thứ 0)
- \(C(x)\) = Giá trị của \(x\) khi làm tròn lên. Ví dụ \(C(2.5) = 3\).
- \(A[i,j]\) = \(A[j,i]\)
Yêu cầu : Nhập số \(n\). Hãy xuất \(P(n)\). Bạn phải trả lời \(t\) câu hỏi
Input
- Dòng đầu nhập số \(t\) là số truy vấn \((t \leq 10^5)\)
- \(t\) dòng tiếp theo, mỗi dòng là mỗi số nguyên dương \(n\) \((n \leq 10^{18})\)
Output
- Xuất ra \(t\) dòng, mỗi dòng là kết quả \(P(n)\) tìm được. Vì \(P(n)\) có thể rất lớn nên hãy in ra \(P(n)\) chia lấy dư cho \(10^9+7\)
Scoring
- Subtask \(1\) (\(40\%\) số điểm): \(T = 1\), \(\dfrac{1}{2}\) số test trong số này : \(N \leq 10^6\)
- Subtask \(2\) (\(60\%\) số điểm): \(T \leq 10^5\), \(\dfrac{1}{2}\) số test trong số này : \(N \leq 10^6\)
Example
Test 1
Input
2
1
2
Output
1
1
CSES - Coin Combinations II | Kết hợp đồng xu II
Xét một hệ thống tiền tệ với \(n\) loại đồng xu. Mỗi đồng xu có giá trị là một số nguyên dương. Hãy tính số cách khác nhau, không kể thứ tự để tạo ra tổng tiền \(x\) từ những đồng này.
Ví dụ: nếu các đồng xu là \(\{2, 3, 5\}\) và tổng mong muốn là \(9\), có \(3\) cách:
- \(2+2+5\)
- \(3+3+3\)
- \(2+2+2+3\)
Input
Định dạng đầu vào:
- Dòng đầu tiên chứa hai số nguyên \(n\) và \(x\): số lượng đồng xu và tổng số tiền mong muốn.
- Dòng thứ hai chứa \(n\) số nguyên riêng biệt \(c_1, c_2, \ldots, c_n\): giá trị của mỗi đồng xu.
Output
- In một số nguyên duy nhất: số lượng cách, chia lấy dư cho \(10 ^ 9 + 7\).
Constraints
- \(1\leq n \leq 100\)
- \(1\leq x \leq 10^6\)
- \(1\leq c_i \leq 10^6\)
Example
Sample input
3 9
2 3 5
Sample output
3
Sub-array
LƯU Ý: LÀM CẨN THẬN VÌ BÀI NÀY RẤT DỄ RUNTIME ERROR
Cho dãy A có N phần tử. Giá trị của một dãy con liên tiếp trong A là tích ba chỉ số: Giá trị nhỏ nhất của dãy con
, Giá trị lớn nhất của dãy con
và Độ dài dãy con
. Ví dụ, mảng A=[1,2,3,4] có dãy con là [1,2,3] thì giá trị của dãy là 9 (GTNN = 1, GTLN = 3, Size = 3). Nhiệm vụ của bạn là tính tổng tất cả các giá trị của các dãy con đó.
Input
- Dòng đầu là số nguyên dương N, là số phần tử của mảng A (1\(\leq\)N\(\leq\)\(10^6\))
- Dòng thứ hai là các số nguyên \(A_{1}\),\(A_{2}\),...,\(A_{N}\) (các giá trị \(A_{i}\) không vượt qua \(10^9\))
Output
- Một dòng duy nhất sau khi modulo 1e9.
Scoring
- Subtask \(1\) (\(50\%\) số điểm): N nhỏ hơn 5000
- Subtask \(2\) (\(50\%\) số điểm): Không có ràng buộc gì thêm
Example
Test 1
Input
2
1
3
Output
16