With Atcoder API of Lazy Segment Tree, Lazy Seg Tree Template
I am trying the problem where we need to support query to increment a range with a given value.
The Atcoder API implementation seems to fail here, where I have an array.
[3, 2, 4, 5, 1, 1, 5, 3]
and I want to do a range update over the range [1,4] ( 0 based indexing) and add a value 1 to it.
The sum should ideally change to 16 after the update and the array should look like
[3, 3, 5, 6, 2, 1, 5, 3]
The query function , the .prod() function of Atcoder API seems to return result 15,
You can try running this code for your reference to understand the ambiguity happening here.
I am using CPP20 and I am pretty sure (almost 99%) that it is a bug in their implementation,
just want someone to acknowledge it or maybe tell what am I missing here.
cc yosupo
UPD -> It is resolved but yeah things are kinda confusing with this template.
UPD 2-> This template is quite useful if you ever gone through the Polynomial queries question in CSES section about adding AP to a range . It is one among the toughest ones.
Here is the complete structure to AC it using AtCoder Template.