CF2103A.Common Multiple

入门

通过率:0%

AC君温馨提醒

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

题目描述

给定一个整数数组 a1,a2,…,ana_1, a_2, \ldots, a_n。我们称数组 x1,x2,…,xmx_1, x_2, \ldots, x_m 是美丽的,如果存在一个数组 y1,y2,…,ymy_1, y_2, \ldots, y_m 满足以下条件:

  • yy 数组中的元素互不相同(即对于所有 1≤i<j≤m1 \le i < j \le m 有 yi≠yjy_i \neq y_j)
  • 对于所有 1≤i≤m1 \le i \le m,xix_i 和 yiy_i 的乘积都相同(即对于所有 1≤i<j≤m1 \le i < j \le m 有 xi⋅yi=xj⋅yjx_i \cdot y_i = x_j \cdot y_j)

你的任务是找出数组 aa 的最长子序列 ∗^{\text{∗}} 的长度,使得这个子序列是美丽的。

∗^{\text{∗}} 序列 bb 是序列 aa 的子序列,当且仅当 bb 可以通过从 aa 中删除任意数量(可以是零个或全部)的元素得到。

输入格式

每个测试包含多个测试用例。第一行输入测试用例数量 tt(1≤t≤5001 \le t \le 500)。接下来是各测试用例的描述。

每个测试用例的第一行包含一个整数 nn(1≤n≤1001 \le n \le 100)——数组 aa 的长度。

每个测试用例的第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n(1≤ai≤n1 \le a_i \le n)——数组 aa 的元素。

注意题目没有对所有测试用例的 nn 之和做出限制。

输出格式

对于每个测试用例,输出数组 aa 的最长美丽子序列的长度。

输入输出样例

  • 输入#1

    3
    3
    1 2 3
    5
    3 1 4 1 5
    1
    1

    输出#1

    3
    4
    1

说明/提示

在第一个测试用例中,整个数组 a=[1,2,3]a = [1, 2, 3] 已经是美丽的。一个可能的 yy 数组是 [6,3,2][6, 3, 2],这满足条件因为:

  • yy 数组元素互不相同
  • 1⋅6=2⋅3=3⋅2=61 \cdot 6 = 2 \cdot 3 = 3 \cdot 2 = 6

在第二个测试用例中,子序列 [3,1,4,5][3, 1, 4, 5] 是美丽的。一个可能的 yy 数组是 [20,60,15,12][20, 60, 15, 12]。可以证明整个数组 a=[3,1,4,1,5]a = [3, 1, 4, 1, 5] 不是美丽的,因此最长的美丽子序列长度是 44。

翻译由 DeepSeek V3 完成

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

首页