AT_1_ttpc2024_1_k.Sum is One

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

给定一个由 00 和 11 组成的长度为 NN 的数列 A=(A1,A2,…,AN)A = (A_1, A_2, \dots, A_N)。定义一个包含 N(N−1)2\frac{N (N - 1)}{2} 个顶点的简单无向图 G=(V,E)G = (V, E) 如下:

  • 对于满足 1≤i<j≤N1 \leq i < j \leq N 的任意整数对 (i,j)(i, j),(i,j)∈V(i, j) \in V。我们将这个顶点称为顶点 (i,j)(i, j)。
  • 对于满足 1≤i<j<k≤N1 \leq i < j < k \leq N 且 Ai+Aj+Ak=1A_i + A_j + A_k = 1 的任意整数三元组 (i,j,k)(i, j, k),存在一条连接顶点 (i,j)(i, j) 和顶点 (j,k)(j, k) 的边。
  • 除此之外的顶点对之间没有边。

请计算图 GG 的连通分量个数。

共有 TT 个测试用例,对于每个测试用例,请分别求解答案。

输入格式

输入从标准输入以以下格式给出:

TT
case1\text{case}_1
case2\text{case}_2
⋮\vdots
caseT\text{case}_T

其中,casei\text{case}_i 表示第 ii 个测试用例。每个测试用例的格式如下:

NN
A1A_1 A2A_2 ⋯\cdots ANA_N

输出格式

对于每个测试用例,输出答案。

输入输出样例

  • 输入#1

    4
    5
    1 0 0 1 0
    5
    1 1 1 1 1
    12
    0 0 1 1 1 0 0 0 1 0 1 0
    20
    0 0 1 0 0 1 1 1 0 0 1 0 0 1 1 1 1 0 1 1

    输出#1

    4
    10
    13
    58

说明/提示

约束

  • 所有输入均为整数
  • 1≤T≤1051 \leq T \leq 10^5
  • 3≤N≤1063 \leq N \leq 10^6
  • AiA_i 为 00 或 11 (1≤i≤N1 \leq i \leq N)
  • 单个输入中所有测试用例的 NN 的总和不超过 10610^6

部分分

如果在满足以下约束的数据集上正确解答,则可以获得 3030 分:

  • 1≤T≤10001 \leq T \leq 1000
  • 3≤N≤50003 \leq N \leq 5000
  • 单个输入中所有测试用例的 NN 的总和不超过 50005000

样例解释 1

对于第一个测试用例,连通分量如下:

  • {(1,2),(2,3),(2,4),(2,5),(3,4),(4,5)}\lbrace (1,2), (2,3), (2,4), (2,5), (3,4), (4,5) \rbrace
  • {(1,3),(3,5)}\lbrace (1,3), (3,5) \rbrace
  • {(1,4)}\lbrace (1,4) \rbrace
  • {(1,5)}\lbrace (1,5) \rbrace

对于第二个测试用例,图中没有边,因此连通分量的个数为 1010。

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

首页