Submission #67316562


Source Code Expand

Copy
from collections import Counter
T=int(input())
for _ in range(T):
N=int(input())
A=list(map(int, input().split()))
if N <= 2:
print("Yes")
continue
B=sorted(abs(a) for a in A)
ok=True
for i in range(N-2):
if B[i+1] * B[i+1] != B[i] * B[i+2]:
ok=False
break
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
from collections import Counter

T=int(input())
for _ in range(T):
    N=int(input())
    A=list(map(int, input().split()))


    if N <= 2:
        print("Yes")
        continue


    B=sorted(abs(a) for a in A)


    ok=True
    for i in range(N-2):
        if B[i+1] * B[i+1] != B[i] * B[i+2]:
            ok=False
            break
    if not ok:
        print("No")
        continue


    cntA=Counter(A)
    f=False


    for b in (B, B[::-1]):
        for s in (1, -1):
            cand=[s*v for v in b]
            if Counter(cand)==cntA:
                f=True
                break
        if f:
            break

        for st in (1, -1):
            cand=[]
            s=st
            for v in b:
                cand.append(s*v)
                s*=-1
            if Counter(cand)==cntA:
                f= True
                break
        if f:
            break

    print("Yes" if f else "No")

Submission Info

Submission Time
Task D - Make Geometric Sequence
User kotafuku
Language Python (PyPy 3.10-v7.3.12)
Score 425
Code Size 967 Byte
Status AC
Exec Time 296 ms
Memory 157564 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 425 / 425
Status
AC × 1
AC × 32
Set Name Test Cases
Sample 00_sample_00.txt
All 00_sample_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt, 01_random_23.txt, 01_random_24.txt, 01_random_25.txt, 01_random_26.txt, 01_random_27.txt, 01_random_28.txt, 01_random_29.txt, 01_random_30.txt, 02_handmade_31.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 68 ms 76996 KiB
01_random_01.txt AC 256 ms 89604 KiB
01_random_02.txt AC 260 ms 110092 KiB
01_random_03.txt AC 220 ms 114508 KiB
01_random_04.txt AC 277 ms 87208 KiB
01_random_05.txt AC 272 ms 97532 KiB
01_random_06.txt AC 185 ms 85928 KiB
01_random_07.txt AC 117 ms 130496 KiB
01_random_08.txt AC 269 ms 87616 KiB
01_random_09.txt AC 278 ms 88724 KiB
01_random_10.txt AC 240 ms 88768 KiB
01_random_11.txt AC 253 ms 104864 KiB
01_random_12.txt AC 269 ms 87664 KiB
01_random_13.txt AC 288 ms 88324 KiB
01_random_14.txt AC 265 ms 86832 KiB
01_random_15.txt AC 268 ms 89952 KiB
01_random_16.txt AC 293 ms 88464 KiB
01_random_17.txt AC 277 ms 87416 KiB
01_random_18.txt AC 261 ms 87316 KiB
01_random_19.txt AC 159 ms 157564 KiB
01_random_20.txt AC 215 ms 88044 KiB
01_random_21.txt AC 253 ms 108992 KiB
01_random_22.txt AC 296 ms 89576 KiB
01_random_23.txt AC 244 ms 88004 KiB
01_random_24.txt AC 207 ms 127236 KiB
01_random_25.txt AC 271 ms 87436 KiB
01_random_26.txt AC 282 ms 87840 KiB
01_random_27.txt AC 249 ms 91564 KiB
01_random_28.txt AC 245 ms 109028 KiB
01_random_29.txt AC 272 ms 86620 KiB
01_random_30.txt AC 211 ms 88076 KiB
02_handmade_31.txt AC 69 ms 76768 KiB


2025-07-06 (Sun)
00:13:13 +09:00