AT_abc369_c.[ABC369C] Count Arithmetic Subarrays

普及-

通过率:0%

AC君温馨提醒

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

题目描述

给定一个长度为 NN 的正整数序列 A=(A1,A2,…,AN)A=(A_1,A_2,\dots,A_N)。

请你求出有多少对整数 (l,r)(l,r) 满足 1≤l≤r≤N1\leq l\leq r\leq N,并且数列 (Al,Al+1,…,Ar)(A_l,A_{l+1},\dots,A_r) 是等差数列。

这里,数列 (x1,x2,…,x∣x∣)(x_1,x_2,\dots,x_{|x|}) 是等差数列,指存在某个 dd,使得对于所有 1≤i<∣x∣1\leq i<|x|,都有 xi+1−xi=dx_{i+1}-x_i=d。特别地,长度为 11 的数列总是等差数列。

输入格式

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

NN A1A_1 A2A_2 …\dots ANA_N

输出格式

请输出答案。

输入输出样例

  • 输入#1

    4
    3 6 9 3

    输出#1

    8
  • 输入#2

    5
    1 1 1 1 1

    输出#2

    15
  • 输入#3

    8
    87 42 64 86 72 58 44 30

    输出#3

    22

说明/提示

限制条件

  • 1≤N≤2×1051\leq N \leq 2\times 10^5
  • 1≤Ai≤1091\leq A_i \leq 10^9
  • 输入均为整数

样例解释 1

满足条件的整数对 (l,r)(l,r) 有 (1,1),(2,2),(3,3),(4,4),(1,2),(2,3),(3,4),(1,3)(1,1),(2,2),(3,3),(4,4),(1,2),(2,3),(3,4),(1,3) 共 88 种。实际上,当 (l,r)=(1,3)(l,r)=(1,3) 时,(Al,…,Ar)=(3,6,9)(A_l,\dots,A_r)=(3,6,9) 是等差数列,所以满足条件;而当 (l,r)=(2,4)(l,r)=(2,4) 时,(Al,…,Ar)=(6,9,3)(A_l,\dots,A_r)=(6,9,3) 不是等差数列,因此不满足条件。

样例解释 2

所有满足 1≤l≤r≤51\leq l\leq r\leq 5 的整数对 (l,r)(l,r) 都满足条件。

由 ChatGPT 4.1 翻译

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

首页