#include <iostream>
using namespace std;
typedef long long ll;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t;
cin>>t;
while(t--){
ll l,r;
cin>>l>>r;
ll sum=(l+r)*(r-l+1)/2;
int m;
cin>>m;
while(m--){
ll x;
cin>>x;
ll tem=sum%x;
if(tem==0)cout<<"0\n";
else cout<<"1\n";
}
}
return 0;
}
在模意义下取考虑问题(一个圈)
在开始与每次删去后(每次均是x倍数)故在模x意义下同余
如果模x为0 则可以整除,如果模x为v不为0,那么找到某个值模x为v 去掉后模x为0就可全部删掉 这时只剩下一个数
注意int会越界 故用long long (long long= int *int 在int *int过程中结果为int后才转为longlong )要么全程longlong要么(long long)转换

京公网安备 11010502036488号