思路
- 当 与
同号时候,肯定是 `Yes`。毕竟一直加就行了。
- 当 的时候,保证肯定有一种方法可以,输出 `Yes`(注意一定要特判
不等于
)。
- 当 的时候也可以,一直加也可以。
- 全部不满足,输出 `No`。
代码
#include<bits/stdc++.h>
using namespace std;
int t;
int n,x,a[10];
int main() {
scanf("%d",&t);
while(t--) {
scanf("%d%d",&n,&x);
bool k = 0;
for(int i = 1;i <= n;i++) {
scanf("%d",&a[i]);
if(a[i] != a[i - 1] and i != 1) {
k = 1;
}
if((x > 0 and a[i] > 0) or (x < 0 and a[i] < 0)) {
k = 1;
}
if(abs(x) % abs(a[i])) {
k = 1;
}
}
if(k) printf("Yes\n");
else printf("No\n");
}
}