CF1942F Farmer John's Favorite Function

Description

[ΩΩPARTS - Camellia](https://soundcloud.com/user-838515264/camellia-parts-ooparts) ⠀ Farmer John has an array $ a $ of length $ n $ . He also has a function $ f $ with the following recurrence: - $ f(1) = \sqrt{a_1} $ ; - For all $ i > 1 $ , $ f(i) = \sqrt{f(i-1)+a_i} $ . Note that $ f(i) $ is not necessarily an integer. He plans to do $ q $ updates to the array. Each update, he gives you two integers $ k $ and $ x $ and he wants you to set $ a_k = x $ . After each update, he wants to know $ \lfloor f(n) \rfloor $ , where $ \lfloor t \rfloor $ denotes the value of $ t $ rounded down to the nearest integer.

Input Format

The first line contains $ n $ and $ q $ ( $ 1 \leq n, q \leq 2 \cdot 10^5 $ ), the length of $ a $ and the number of updates he will perform. The second line contains $ n $ integers $ a_1, a_2, \ldots, a_n $ ( $ 0 \leq a_i \leq 10^{18} $ ). The next $ q $ lines each contain two integers $ k $ and $ x $ ( $ 1 \leq k \leq n $ , $ 0 \leq x \leq 10^{18} $ ), the index of the update and the element he will replace $ a_k $ with.

Output Format

For each update, output an integer, $ \lfloor f(n) \rfloor $ , on a new line.

Explanation/Hint

In the first test case, the array after the first update is $ [4, 14, 0, 7, 6] $ . The values of $ f $ are: - $ f(1)=2 $ ; - $ f(2)=4 $ ; - $ f(3)=2 $ ; - $ f(4)=3 $ ; - $ f(5)=3 $ . Since $ \lfloor f(5) \rfloor = 3 $ , we output $ 3 $ . The array after the second update is $ [3, 14, 0, 7, 6] $ . The values of $ f $ , rounded to $ 6 $ decimal places, are: - $ f(1)\approx 1.732051 $ ; - $ f(2)\approx 3.966365 $ ; - $ f(3)\approx 1.991573 $ ; - $ f(4)\approx 2.998595 $ ; - $ f(5)\approx 2.999766 $ . Since $ \lfloor f(5) \rfloor = 2 $ , we output $ 2 $ .