给定一个非负整数数组 AA,如果该数组每对相邻元素之和是一个完全平方数,则称这一数组为正方形数组。
返回 AA 的正方形排列的数目。
两个排列 A1A1 和 A2A2 不同的充要条件是存在某个索引 ii,使得 A1[i]≠A2[i]A1[i]≠A2[i]。
输入格式
第一行包含一个整数 nn,表示数组 AA 的长度。
第二行包含 nn 个整数 A[i]A[i]。
输出格式
一个整数,表示 AA 的正方形排列的数目。
数据范围
1≤n≤121≤n≤12,
0≤A[i]≤1090≤A[i]≤109。
输入样例:
3
1 17 8
输出样例:
2
样例解释
[1,8,17][1,8,17] 和 [17,8,1][17,8,1] 都是有效的排列。
| 难度:简单 |
| 时/空限制:1s / 64MB |
| 总通过数:542 |
| 总尝试数:1642 |
| 来源:上海交通大学考研机试题 |
| 算法标签 |
挑战模式
/*Where there is light, in my heart.*/
/*SUMMER_TRAINING DAY 17*/
#include<bits/stdc++.h>
#in

给定一个非负整数数组,如果每对相邻元素之和是一个完全平方数,就称为正方形数组。该程序计算数组的不同正方形排列数量。输入包含数组长度和数组元素,输出是正方形排列的数目。示例中,长度为3的数组有2种正方形排列。题目来源于上海交通大学考研机试题,难度简单。
最低0.47元/天 解锁文章
168

被折叠的 条评论
为什么被折叠?



