Submission #67362216
Source Code Expand
function main(stdin) {
// eslint-disable-next-line unused-imports/no-unused-vars, no-unused-vars
const { next, nextstr, nextbig, nexts, nextssort, nextm, xArray } = makeInputReader(stdin)
const t = next()
const res = []
function isS(nums) {
// 1
if (nums.every(num => num === nums[0])) {
return true
}
// -1
const pl = nums.filter(num => num === nums[0]).length
const nl = nums.filter(num => num === -nums[0]).length
const n = nums.length
if (pl + nl === n && Math.min(pl, nl) === Math.floor(n / 2)) {
return true
}
for (let i = 1; i < nums.length - 1; i++) {
if (BigInt(nums[i]) * BigInt(nums[i]) !== BigInt(nums[i - 1]) * BigInt(nums[i + 1])) {
return false
}
}
return true
}
for (let tt = 0; tt < t; tt++) {
const n = next()
const nums = nexts(n)
nums.sort((a, b) => Math.abs(a) - Math.abs(b))
res.push(isS(nums) ? 'Yes' : 'No')
}
return res.join('\n')
}
function makeInputReader(input) {
const cin = input.trim().split(/ |\n/)
let cid = 0
function createNDArray(shape, fillFn) {
if (shape.length === 0)
return fillFn()
const [dim, ...rest] = shape
return Array.from({ length: dim }, () => createNDArray(rest, fillFn))
}
return {
next: () => Number(cin[cid++]),
nextstr: () => cin[cid++],
nextbig: () => BigInt(cin[cid++]),
nexts: (n, addNum = 0, parse = true) =>
parse ? cin.slice(cid, cid += n).map(s => Number(s) + addNum) : cin.slice(cid, cid += n),
nextssort: (n, parse = true, desc = false) =>
parse
? cin.slice(cid, cid += n).map(Number).sort((a, b) => desc ? b - a : a - b)
: cin.slice(cid, cid += n).sort((a, b) => desc ? b.localeCompare(a) : a.localeCompare(b)),
nextm: (h, w, parse = true) => {
const res = []
for (let i = 0; i < h; i++) {
const row = cin.slice(cid, cid += w)
res.push(parse ? row.map(Number) : row)
}
return res
},
xArray: createNDArray,
}
}
if (require.main === module) {
const fs = require('node:fs')
const input = fs.readFileSync('/dev/stdin', 'utf8')
console.log(main(input))
}
module.exports = { main }
Submission Info
| Submission Time |
|
| Task |
D - Make Geometric Sequence |
| User |
xhksun |
| Language |
JavaScript (Node.js 18.16.1) |
| Score |
425 |
| Code Size |
2258 Byte |
| Status |
AC |
| Exec Time |
178 ms |
| Memory |
82072 KiB |
Judge Result
| Set Name |
Sample |
All |
| Score / Max Score |
0 / 0 |
425 / 425 |
| Status |
|
|
| 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 |
39 ms |
42776 KiB |
| 01_random_01.txt |
AC |
124 ms |
63092 KiB |
| 01_random_02.txt |
AC |
178 ms |
79836 KiB |
| 01_random_03.txt |
AC |
158 ms |
78064 KiB |
| 01_random_04.txt |
AC |
149 ms |
79644 KiB |
| 01_random_05.txt |
AC |
161 ms |
81484 KiB |
| 01_random_06.txt |
AC |
81 ms |
58668 KiB |
| 01_random_07.txt |
AC |
93 ms |
73776 KiB |
| 01_random_08.txt |
AC |
147 ms |
78696 KiB |
| 01_random_09.txt |
AC |
148 ms |
81728 KiB |
| 01_random_10.txt |
AC |
117 ms |
71988 KiB |
| 01_random_11.txt |
AC |
175 ms |
81040 KiB |
| 01_random_12.txt |
AC |
147 ms |
78636 KiB |
| 01_random_13.txt |
AC |
148 ms |
79748 KiB |
| 01_random_14.txt |
AC |
147 ms |
79200 KiB |
| 01_random_15.txt |
AC |
167 ms |
78436 KiB |
| 01_random_16.txt |
AC |
147 ms |
78688 KiB |
| 01_random_17.txt |
AC |
148 ms |
81724 KiB |
| 01_random_18.txt |
AC |
131 ms |
74788 KiB |
| 01_random_19.txt |
AC |
104 ms |
79528 KiB |
| 01_random_20.txt |
AC |
107 ms |
62684 KiB |
| 01_random_21.txt |
AC |
176 ms |
81648 KiB |
| 01_random_22.txt |
AC |
149 ms |
80024 KiB |
| 01_random_23.txt |
AC |
120 ms |
73140 KiB |
| 01_random_24.txt |
AC |
162 ms |
76072 KiB |
| 01_random_25.txt |
AC |
148 ms |
82072 KiB |
| 01_random_26.txt |
AC |
149 ms |
81820 KiB |
| 01_random_27.txt |
AC |
143 ms |
79224 KiB |
| 01_random_28.txt |
AC |
177 ms |
81436 KiB |
| 01_random_29.txt |
AC |
147 ms |
81536 KiB |
| 01_random_30.txt |
AC |
116 ms |
65012 KiB |
| 02_handmade_31.txt |
AC |
39 ms |
42824 KiB |