排列算式
题号:NC214860
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

给出n数字,对于这些数字是否存在一种计算顺序,使得计算过程中数字不会超过3也不会小于0?

输入描述:

首行给出一个正整数代表测试数据组数

每组测试数据第一行一个正整数

第二行包含n个以空格分隔的数字

输入保证每一个数字都是 −3, −2, −1, +0, +1, +2, +3 的其中一个。

输出描述:

每组测试数据输出一行,“Yes” or “No”
示例1

输入

复制
2
4
+3 +2 -1 -2
5
+3 +2 +1 +0 +2

输出

复制
Yes
No

说明

第一组依照 +3,−2,+2,−1 的顺序由左至右计算总和,过程会依序算得 3, 1, 3, 2,满足题目要求

很显然第二组不存在满足要求的计算顺序