题目信息

题目类型
国赛
题目年份
2025
题目题型
编程题
关 键 词
最长平方乘积子序列

题目题干

第三题:最长平方乘积子序列

题目描述

给定一个包含 n 个正整数的序列 A = [a₁, a₂, …, aₙ]。需从中找出一个子序列,使得该子序列中任意两个不同元素的乘积都是一个完全平方数。求满足条件的最长子序列的长度。1ur100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

说明

  • 子序列:从原序列中删除零个或多个元素,其余元素保持原有顺序得到的序列(例如,[2, 3, 18] 是 [2, 8, 3, 18, 12] 的一个子序列)。
  • 完全平方数:一个整数可以表示为另一个整数的平方(例如,36 = 6²,是完全平方数)。

输入格式

  • 第一行包含一个整数 n,表示序列的长度。
  • 第二行包含 n 个用空格隔开的正整数 a₁、a₂、…、aₙ,表示序列中的元素。

输出格式

输出一个整数,表示满足条件的最长子序列的长度。1ur100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输入输出样例

输入
输出
51ur100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
2 8 3 18 12
3

样例解释

满足条件的子序列为 [2, 8, 18],其任意两个元素的乘积(2×8=16、2×18=36、8×18=144)均为完全平方数,长度为 3。1ur100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

数据范围

对于 100% 的数据,满足 1 ≤ n ≤ 10⁵,1 ≤ aᵢ ≤ 10⁷。1ur100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

答案解析

相关题目

第四题:区间选点最小成本题目描述给定 n 个闭区间 [Lᵢ, Rᵢ]。需在数轴上选择一个整数点的集合 P = {p₁, p₂, …, pₖ},满足以下两个条件: 对于每一个给定的区间 [Lᵢ, Rᵢ]
第三题:最长平方乘积子序列 ​​​​​​​ 题目描述 给定一个包含 n 个正整数的序列 A = [a₁, a₂, …, aₙ]。需从中找出一个子序列,使得该子序列中任意两个不同元素的乘积都是一个完全平
第二题:三角形数阵填充 题目描述 在一个包含 12 个圆圈的三角形数阵中,有 4 个红色圆圈是需要填充的未知数,8 个白色圆圈内的正整数已知。需找到一种填充红色圆圈的方案,所填数字必须为正整数,并满足
第一题:字符串匹配 题目描述 给你两个字符串 S 和 T。你需要找出 S 中有多少个连续子串,能够与字符串 T 相匹配。匹配规则如下: 进行匹配的 S 的子串,其长度必须与 T 的长度完全相同。
完成寒假试卷题目描述 寒假期间小明需要做完n张试卷,但他每天最多能做完m 张,请计算出小明做完n张试卷最少需要多少天? 输入 一行输入两个整数 n 和 m ,分别表示要完成的试卷张数,及每天最多能做
包含7的回文数题目描述 给定两个整数a,b,请统计a到b之间(包含a和b)有多少个包含数字7的回文数。 例如:a=6,b=80,6到80之间的回文数有6、7、8、 9、11、22、33、44、55、
ABB子串子串:是指一个字符串中连续的一段字符序列。如:字符串“Hello,World!”中,"Hello"、"ello"、"World"、
数列分割题目描述 给定一个由n个整数组成的数列,请将其分割成左右两部分, 要求左半部分子数列的和与右半部分子数列的和最接近,请输出这两部分子数列和的差值(取非负值)。 例如:n=5,数列中的5个整数
旋转二维矩阵题目描述 给定一个n×n 的二维整数矩阵,你需要对这个矩阵的每一“圈层”的元素进行交错旋转,规则如下: 圈层的定义:矩阵从最外层开始,向内逐层定义“圈层”。最外层的元素构成第一圈层,移除
交换字符题目描述 给定一个字行串 S,其中仅包含字符‘A’和字符‘B’。你每次可以选择交换两个位置相邻的字符,请计算如果要使奇数位上(位置从1开始)字符'A'的数量等于偶数位置上字

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
  • 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。

猜你喜欢