AT_arc048_c.[ARC048C] 足の多い高橋君

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

高桥君有 NN 条腿,第 ii 条腿由 LiL_i 块骨头首尾相连组成。所有腿的一端都连接在高桥君的躯干上,而躯干本身没有骨头。

这次高桥君打算在自己所有腿的所有骨头上写上 00 或 11 这两个字符中的一个。

高桥君对写字符的方式有很强的执着:对于任意两条不同的腿 A,BA,B,如果从 AA 的远离躯干的一端出发,经过躯干,再到 BB 的远离躯干的一端,沿途依次读取骨头上的字符,所得的字符串是回文串,则高桥君会感到满意,并且只有在这种情况下才会满意。

请你求出高桥君感到满意的写法有多少种,并将答案对 109+710^9+7 取模后输出。

输入格式

输入按以下格式从标准输入读入。

NN
L1L_1
L2L_2
⋮\vdots
LNL_N

  • 第 11 行包含一个整数 NN,表示高桥君的腿的数量,1≤N≤1000001 \leq N \leq 100000。
  • 接下来的 NN 行,每行包含一个整数 LiL_i,表示第 ii 条腿的长度,1≤Li≤1091 \leq L_i \leq 10^9。

输出格式

输出一个整数,表示高桥君感到满意的写法数对 109+710^9+7 取模的结果。

输出最后请不要忘记换行。

输入输出样例

  • 输入#1

    3
    2
    4
    8

    输出#1

    8
  • 输入#2

    8
    2
    1
    4
    3
    6
    5
    8
    7

    输出#2

    4
  • 输入#3

    5
    700000000
    20000000
    9000000
    600000000
    30000000

    输出#3

    861838989

说明/提示

样例解释 1

对于 33 条腿,从远离躯干的一端开始读取每条腿的字符串,例如 (01,0111,01111111)(01,0111,01111111) 等都满足条件。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页