CF1610D.Not Quite Lee

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Lee couldn't sleep lately, because he had nightmares. In one of his nightmares (which was about an unbalanced global round), he decided to fight back and propose a problem below (which you should solve) to balance the round, hopefully setting him free from the nightmares.

A non-empty array b1,b2,,bmb_1, b_2, \ldots, b_m is called good, if there exist mm integer sequences which satisfy the following properties:

  • The ii -th sequence consists of bib_i consecutive integers (for example if bi=3b_i = 3 then the ii -th sequence can be (1,0,1)(-1, 0, 1) or (5,4,3)(-5, -4, -3) but not (0,1,1)(0, -1, 1) or (1,2,3,4)(1, 2, 3, 4) ).
  • Assuming the sum of integers in the ii -th sequence is sumisum_i , we want sum1+sum2++summsum_1 + sum_2 + \ldots + sum_m to be equal to 00 .

You are given an array a1,a2,,ana_1, a_2, \ldots, a_n . It has 2n12^n - 1 nonempty subsequences. Find how many of them are good.

As this number can be very large, output it modulo 109+710^9 + 7 .

An array cc is a subsequence of an array dd if cc can be obtained from dd by deletion of several (possibly, zero or all) elements.

输入格式

The first line contains a single integer nn ( 2n21052 \le n \le 2 \cdot 10^5 ) — the size of array aa .

The second line contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n ( 1ai1091 \le a_i \le 10^9 ) — elements of the array.

输出格式

Print a single integer — the number of nonempty good subsequences of aa , modulo 109+710^9 + 7 .

输入输出样例

  • 输入#1

    4
    2 2 4 7

    输出#1

    10
  • 输入#2

    10
    12391240 103904 1000000000 4142834 12039 142035823 1032840 49932183 230194823 984293123

    输出#2

    996

说明/提示

For the first test, two examples of good subsequences are [2,7][2, 7] and [2,2,4,7][2, 2, 4, 7] :

For b=[2,7]b = [2, 7] we can use (3,4)(-3, -4) as the first sequence and (2,1,,4)(-2, -1, \ldots, 4) as the second. Note that subsequence [2,7][2, 7] appears twice in [2,2,4,7][2, 2, 4, 7] , so we have to count it twice.

Green circles denote (3,4)(-3, -4) and orange squares denote (2,1,,4)(-2, -1, \ldots, 4) .For b=[2,2,4,7]b = [2, 2, 4, 7] the following sequences would satisfy the properties: (1,0)(-1, 0) , (3,2)(-3, -2) , (0,1,2,3)(0, 1, 2, 3) and (3,2,,3)(-3, -2, \ldots, 3)

首页