Tổng riêng

Đề bài

Mô tả

Cho mảng a gồm n số nguyên, đánh chỉ số từ 1 đến n. Định nghĩa phép thao tác gồm hai bước:

  1. Xây dựng mảng tổng riêng sn phần tử, với si=j=1iaj (tổng tiền tố).
  2. Gán ai=si với mọi i.

Hãy tìm mảng a sau khi thực hiện đúng k lần phép thao tác trên. Vì các giá trị có thể rất lớn, hãy in ra mỗi phần tử theo modulo 109+7.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nk.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an.

Dữ liệu ra

In ra n số nguyên, lần lượt là các phần tử của mảng a sau khi áp dụng k lần phép thao tác, mỗi phần tử lấy theo modulo 109+7, cách nhau bằng dấu cách.

Ràng buộc

  • 1n2000
  • 0k109
  • 0ai109

Ví dụ

Input Output Giải thích
3 1
1 2 3
1 3 6 Sau 1 lần lấy tổng riêng: s1=1, s2=1+2=3, s3=1+2+3=6.
5 0
3 14 15 92 6
3 14 15 92 6 k=0 nên mảng không thay đổi.
4 1
3 20 3 4
3 23 26 30 Tổng riêng: 3, 3+20=23, 23+3=26, 26+4=30.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.400 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.2 gforth 0.7.3 gfortran 12.2.0 go 1.27.0 groovyc 5.1.1 javac 25.0.4 node 26.8.1 julia 1.12.7 kotlinc 2.4.10 lean 4.33.1 sbcl 2.2.9 lua 5.4.9 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.10 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.14.7 racket 8.7 ruby 4.0.6 rustc 1.98.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.3.3 tclsh 8.6 bun 1.4.0 deno 2.9.6 v 0.5.2 zig 0.16.0