Cho dãy số \(A\ \)gồm \(N\) các số nguyên dương \(A_{1},\ A_{2},\ \ldots,\ A_{N}.\) Gọi dãy B là sự kết hợp của \(10^{100}\) dãy A ban đầu.
Yêu cầu: Tính tổng các số ít nhất của dãy B từ trái sang phải cho đến khi nào tổng đó vượt quá 1 số \(X\). Nói cách khác, hãy tìm 1 số nguyên \(k\) nhỏ nhất sao cho: \(\sum_{i = 1\ }^{k}B_{i} > X.\)
Dữ liệu:
Dòng đầu tiên chứa số nguyên \(N\)
Dòng tiếp theo chứa \(N\) số nguyên \(A_{i}\)
Dòng cuối ghi giá trị \(X\).
Kết quả: Ghi một số nguyên là đáp án của bài toán.
Ràng buộc:
\(1 \leq N \leq 10^{5}\)
\(1 \leq A_{i} \leq 10^{9}\)
\(1 \leq X \leq 10^{18}\)
Tất cả các giá trị trong đầu vào là số nguyên.
Ví dụ:
Input | Output |
---|---|
3 3 5 2 26 | 8 |
Giải thích: Chúng ta có dãy B = (3,5,2,3,5,2,3,5,2, ......), với 8 phần tử đầu tiên của dãy B sẽ thỏa mãn yêu cầu của đề bài vì: \(\sum_{i = 1}^{8}B_{i} = 28 > 26.\)
Code tích cực |
---|
Trong 24h |
|
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38907 |