AT_joi2011yo_d.1 年生 (A First Grader)

通过率:0%

AC君温馨提醒

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

题目描述

JOI 君是一名小学一年级学生。JOI 君非常喜欢刚学会的加法和减法,每当看到一串数字时,他会在最后两个数字之间插入一个等号“=”,并在其余的数字之间必须插入“+”或“-”,从而组成一个等式来玩。例如,从 8 3 2 4 8 7 2 4 0 8 8 可以组成等式 8+3-2-4+8-7-2-4-0+8=8。

JOI 君在组成等式后,会计算等式是否成立。不过,JOI 君还不认识负数,也无法计算超过 2020 的数。因此,只有那些在从左到右计算左边表达式的过程中,所有中间结果都在 00 到 2020 之间的等式,JOI 君才能判断其是否为正确等式。例如,8+3-2-4-8-7+2+4+0+8=8 虽然是正确等式,但在中间计算 8+3-2-4-8 时会出现负数,所以 JOI 君无法判断这个等式是否正确。

给定一串数字,请编写程序,求出 JOI 君能够组成并判断为正确的等式的个数。

输入格式

输入包含两行。第一行是一个整数 NN(3≤N≤1003 \leq N \leq 100),表示数字的个数。第二行包含 NN 个用空格分隔的整数,每个整数在 00 到 99 之间。

在给定的 60%60\% 的测试数据中,JOI 君能够组成并判断为正确的等式的个数不会超过 231−12^{31}-1。在所有给定的输入数据中,JOI 君能够组成并判断为正确的等式的个数不会超过 263−12^{63}-1。

输出格式

输出一个整数,表示 JOI 君能够组成并判断为正确的等式的个数。

输入输出样例

  • 输入#1

    11
    8 3 2 4 8 7 2 4 0 8 8

    输出#1

    10
  • 输入#2

    40
    1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1

    输出#2

    7069052760

说明/提示

样例解释 1

在输入样例 11 中,JOI 君能够组成 1010 个正确的等式:

  • 8+3−2−4+8−7−2−4−0+8=88+3-2-4+8-7-2-4-0+8=8
  • 8+3−2−4+8−7−2−4+0+8=88+3-2-4+8-7-2-4+0+8=8
  • 8+3+2+4−8−7+2−4−0+8=88+3+2+4-8-7+2-4-0+8=8
  • 8+3+2+4−8−7+2−4+0+8=88+3+2+4-8-7+2-4+0+8=8
  • 8+3+2−4+8−7+2+4−0−8=88+3+2-4+8-7+2+4-0-8=8
  • 8+3+2−4+8−7+2+4+0−8=88+3+2-4+8-7+2+4+0-8=8
  • 8−3+2+4−8+7+2+4−0−8=88-3+2+4-8+7+2+4-0-8=8
  • 8−3+2+4−8+7+2+4+0−8=88-3+2+4-8+7+2+4+0-8=8
  • 8−3+2−4+8+7+2−4−0−8=88-3+2-4+8+7+2-4-0-8=8
  • 8−3+2−4+8+7+2−4+0−8=88-3+2-4+8+7+2-4+0-8=8

因此输出 1010。

样例解释 2

在输入样例 22 中,注意答案可能超出 3232 位有符号整数的范围。

由 ChatGPT 4.1 翻译

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

首页