DZY và dãy Fibonacci

Đề bài

Mô tả

Cho dãy Fibonacci được định nghĩa F1=1, F2=1, Fn=Fn1+Fn2 với mọi n>2.

Cho một mảng gồm n số nguyên a1,a2,,anm truy vấn. Mỗi truy vấn thuộc một trong hai loại:

  1. Cập nhật "1 l r": với mỗi i thỏa lir, cộng thêm Fil+1 vào ai.
  2. Truy vấn "2 l r": in ra giá trị (al+al+1++ar)mod(109+9).

Hãy xử lý tất cả các truy vấn theo thứ tự.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên nm.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an.
  • m dòng tiếp theo, mỗi dòng mô tả một truy vấn theo định dạng nêu trên. Đảm bảo 1lrn.

Dữ liệu ra

Với mỗi truy vấn loại 2, in ra một dòng chứa giá trị tổng modulo 109+9.

Ràng buộc

  • 1n,m3·105
  • 1ai109

Ví dụ

Input Output Giải thích
4 4
1 2 3 4
1 1 4
2 1 4
1 2 4
2 1 3
17
12
Sau truy vấn 1: mảng cộng thêm F1,F2,F3,F4=1,1,2,3 vào các vị trí 1..4, mảng thành [2,3,5,7]. Truy vấn 2 in tổng 2+3+5+7=17. Sau truy vấn 3: cộng F1,F2,F3=1,1,2 vào các vị trí 2..4, mảng thành [2,4,6,9]. Truy vấn 4 in tổng 2+4+6=12.
2 2
1 2
2 1 2
2 1 2
3
3
Không có cập nhật, mỗi truy vấn đều in tổng cả mảng 1+2=3.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0