区间乘积
类型:程序题

题目描述

小杨有一个包含 $n$ 个正整数的序列 $A = [a_1,a_2,\cdots,a_n]$。

小杨想知道有多少对 $<l,r>(1 \le l \le r \le n)$ 满足 $a_l \times a_{l+1} \times \cdots \times a_r$ 为完全平方数。

一个正整数 $x$ 为完全平方数当且仅当存在一个正整数 $y$ 使得 $x = y \times y$。

输入格式

第一行包含一个正整数 $n$,代表正整数个数。

第二行包含 $n$ 个正整数 $a_1,a_2,\ldots,a_n$,代表序列 $A$。

输出格式

输出一个整数,代表满足要求的 $<l,r>$ 数量。

输入样例 1

5
3 2 4 3 2

输出样例 1

2

样例解释 1

满足条件的 $<l,r>$ 有 $<3,3>$ 和 $<1,5>$。

数据范围

子任务编号 数据点占比 $n$ $a_i$
1 20% $\le 10^5$ $1 \le a_i \le 2$
2 40% $\le 100$ $1 \le a_i \le 30$
3 40% $\le 10^5$ $1 \le a_i \le 30$

对于全部数据,保证有 $1 \le n \le 10^5$,$1 \le a_i \le 30$。

代码编辑器 加载中...
测试用例输入
{{resultStatus.text}}
乐编题库AI助手
人工客服
微信扫码联系客服
历史对话
{{ s.title || '未命名对话' }}
{{ s.created_at }}
暂无历史对话
我能帮助你什么?