#3333. [GESP202403三级] 完全平方数

[GESP202403三级] 完全平方数

题目描述

小杨同学有一个包含 nn 个非负整数的序列 AA ,他想要知道其中有多少对下标组合 <ii, jj> (1i,jn1 \leq i,j \leq n , ii <\lt jj ) ,使得 Ai+AjA_{i} + A_{j} 是完全平方数。

如果 xx 是完全平方数,则存在非负整数 yy 使得 yy=xy * y = x

输入格式

第一行一个非负整数 nn ,表示非负整数个数。

第二行包含 nn 个非负整数 A1,A2,...,AnA_{1}, A_{2}, ... , A_{n} ,表示序列 AA 包含的非负整数。

输出格式

输出一个非负整数,表示和是完全平方数的非负整数对数。

样例

5
1 4 3 3 5
3

数据范围

对于全部数据,保证有 1n10001 \leq n \leq 1000 , 0Ai1050 \leq A_{i} \leq 10^{5}

来源

GESP 2024年03月 C++三级T2