解决思路:考虑前四个向量
(
a
,
b
)
,
(
a
,
−
b
)
,
(
−
a
,
b
)
,
(
−
a
,
−
b
)
\small (a,b), (a,-b), (-a,b), (-a,-b)
(a,b),(a,−b),(−a,b),(−a,−b),设共取出
n
\small n
n个向量,
a
,
−
a
,
b
,
−
b
\small a,-a,b,-b
a,−a,b,−b的个数分别为
x
a
1
,
x
a
2
,
y
b
1
,
y
b
2
x_{a1},x_{a2},y_{b1},y_{b2}
xa1,xa2,yb1,yb2。
∴
{
x
a
1
+
x
a
2
=
n
y
b
1
+
y
b
2
=
n
\small \therefore \begin{cases} \ x_{a1}+x_{a2}=n\\ \ y_{b1}+y_{b2}=n\\ \end{cases}
∴{xa1+xa2=nyb1+yb2=n
n
\small n
n个向量之和为
(
a
x
a
1
−
a
x
a
2
,
b
y
b
1
−
b
y
b
2
)
\small (ax_{a1}-ax_{a2},by_{b1}-by_{b2})
(axa1−axa2,byb1−byb2) 设
x
1
=
x
a
1
−
x
a
2
\small x_1=x_{a1}-x_{a2}
x1=xa1−xa2,
y
1
=
y
b
1
−
y
b
2
\small y_1=y_{b1}-y_{b2}
y1=yb1−yb2,结论:
x
1
≡
y
1
\small x_1\equiv y_1
x1≡y1 证明
n
≡
p
\small n\equiv p
n≡p,
p
\small p
p的取值为
0
\small 0
0或
1
\small 1
1
∴
{
x
a
1
+
x
a
2
≡
p
y
b
1
+
y
b
2
≡
p
\small \therefore \begin{cases} \ x_{a1}+x_{a2}\equiv p\\ \ y_{b1}+y_{b2}\equiv p\\ \end{cases}
∴{xa1+xa2≡pyb1+yb2≡p
∴
{
x
a
1
+
x
a
2
−
2
x
a
2
≡
p
y
b
1
+
y
b
2
−
2
y
b
2
≡
p
\small \therefore \begin{cases} \ x_{a1}+x_{a2}-2x_{a2}\equiv p\\ \ y_{b1}+y_{b2}-2y_{b2}\equiv p\\ \end{cases}
∴{xa1+xa2−2xa2≡pyb1+yb2−2yb2≡p
∴
{
x
a
1
−
x
a
2
≡
p
y
b
1
−
y
b
2
≡
p
\small \therefore \begin{cases} \ x_{a1}-x_{a2}\equiv p\\ \ y_{b1}-y_{b2}\equiv p\\ \end{cases}
∴{xa1−xa2≡pyb1−yb2≡p
∴
x
1
≡
y
1
≡
p
\small \therefore x_1\equiv y_1\equiv p
∴x1≡y1≡p 证毕 结论:
n
\small n
n个向量之和为
(
a
x
1
,
b
y
1
)
\small (ax_1,by_1)
(ax1,by1),
x
1
≡
y
1
\small x_1\equiv y_1
x1≡y1 同理考虑后四个向量
(
b
,
a
)
,
(
b
,
−
a
)
,
(
−
b
,
a
)
,
(
−
b
,
−
a
)
\small (b,a), (b,-a), (-b,a), (-b,-a)
(b,a),(b,−a),(−b,a),(−b,−a),设共取出
m
\small m
m个向量,设
m
\small m
m个向量之和为
(
b
y
2
,
a
x
2
)
\small (by_2,ax_2)
(by2,ax2),且
y
2
≡
x
2
\small y_2\equiv x_2
y2≡x2 八个向量之和为
(
a
x
1
+
b
y
2
,
b
y
1
+
a
x
2
)
\small (ax_1+by_2,by_1+ax_2)
(ax1+by2,by1+ax2),
x
1
≡
y
1
\small x_1\equiv y_1
x1≡y1,
y
2
≡
x
2
\small y_2\equiv x_2
y2≡x2
∴
{
a
x
1
+
b
y
2
=
x
x
1
≡
y
1
b
y
1
+
a
x
2
=
y
y
2
≡
x
2
\small \therefore \begin{cases} \ ax_1+by_2=x~~~~~~\small x_1\equiv y_1\\ \ by_1+ax_2=y~~~~~~\small y_2\equiv x_2\\ \end{cases}
∴{ax1+by2=xx1≡y1by1+ax2=yy2≡x2
∴
{
a
x
1
+
b
y
2
=
x
x
1
≡
y
1
a
x
2
+
b
y
1
=
y
y
2
≡
x
2
\small \therefore \begin{cases} \ ax_1+by_2=x~~~~~~\small x_1\equiv y_1\\ \ ax_2+by_1=y~~~~~~\small y_2\equiv x_2\\ \end{cases}
∴{ax1+by2=xx1≡y1ax2+by1=yy2≡x2 情况一:
x
1
≡
y
1
≡
0
\small x_1\equiv y_1\equiv 0
x1≡y1≡0,
y
2
≡
x
2
≡
0
\small y_2\equiv x_2\equiv 0
y2≡x2≡0
∴
{
a
x
1
+
b
y
2
=
x
a
x
2
+
b
y
1
=
y
\small \therefore \begin{cases} \ ax_1+by_2=x\\ \ ax_2+by_1=y\\ \end{cases}
∴{ax1+by2=xax2+by1=y 将同余
0
\small 0
0的项提出
2
\small 2
2
∴
{
2
a
x
1
′
+
2
b
y
2
′
=
x
2
a
x
2
′
+
2
b
y
1
′
=
y
\small \therefore \begin{cases} \ 2ax_1'+2by_2'=x\\ \ 2ax_2'+2by_1'=y\\ \end{cases}
∴{2ax1′+2by2′=x2ax2′+2by1′=y 有解的条件是
(
2
a
,
2
b
)
∣
x
\small (2a,2b)\mid x
(2a,2b)∣x,
(
2
a
,
2
b
)
∣
y
\small (2a,2b)\mid y
(2a,2b)∣y 情况二:
x
1
≡
y
1
≡
0
\small x_1\equiv y_1\equiv 0
x1≡y1≡0,
y
2
≡
x
2
≡
1
\small y_2\equiv x_2\equiv 1
y2≡x2≡1
∴
{
a
x
1
+
b
y
2
=
x
a
x
2
+
b
y
1
=
y
\small \therefore \begin{cases} \ ax_1+by_2=x\\ \ ax_2+by_1=y\\ \end{cases}
∴{ax1+by2=xax2+by1=y 将同余
0
\small 0
0的项提出
2
\small 2
2
∴
{
2
a
x
1
′
+
b
y
2
=
x
a
x
2
+
2
b
y
1
′
=
y
\small \therefore \begin{cases} \ 2ax_1'+by_2=x\\ \ ax_2+2by_1'=y\\ \end{cases}
∴{2ax1′+by2=xax2+2by1′=y
∴
{
2
a
x
1
′
+
b
(
y
2
+
1
)
=
x
+
b
a
(
x
2
+
1
)
+
2
b
y
1
′
=
y
+
a
\small \therefore \begin{cases} \ 2ax_1'+b(y_2+1)=x+b\\ \ a(x_2+1)+2by_1'=y+a\\ \end{cases}
∴{2ax1′+b(y2+1)=x+ba(x2+1)+2by1′=y+a
∴
{
2
a
x
1
′
+
2
b
y
2
′
=
x
+
b
2
a
x
2
′
+
2
b
y
1
′
=
y
+
a
\small \therefore \begin{cases} \ 2ax_1'+2by_2'=x+b\\ \ 2ax_2'+2by_1'=y+a\\ \end{cases}
∴{2ax1′+2by2′=x+b2ax2′+2by1′=y+a 有解的条件是
(
2
a
,
2
b
)
∣
(
x
+
b
)
\small (2a,2b)\mid (x+b)
(2a,2b)∣(x+b),
(
2
a
,
2
b
)
∣
(
y
+
a
)
\small (2a,2b)\mid (y+a)
(2a,2b)∣(y+a) 同理 情况三:有解的条件是
(
2
a
,
2
b
)
∣
(
x
+
a
)
\small (2a,2b)\mid (x+a)
(2a,2b)∣(x+a),
(
2
a
,
2
b
)
∣
(
y
+
b
)
\small (2a,2b)\mid (y+b)
(2a,2b)∣(y+b) 情况四:有解的条件是
(
2
a
,
2
b
)
∣
(
x
+
a
+
b
)
\small (2a,2b)\mid (x+a+b)
(2a,2b)∣(x+a+b),
(
2
a
,
2
b
)
∣
(
y
+
a
+
b
)
\small (2a,2b)\mid (y+a+b)
(2a,2b)∣(y+a+b)
AC代码
//优化#pragma GCC optimize(2)//C#include<string.h>#include<stdio.h>#include<stdlib.h>#include<math.h>//C++//#include<unordered_map>#include<algorithm>#include<iostream>#include<istream>#include<iomanip>#include<climits>#include<cstdio>#include<string>#include<vector>#include<cmath>#include<queue>#include<stack>#include<map>#include<set>//宏定义#define N 1010#define DoIdo main//#define scanf scanf_s#define it set<ll>::iterator//定义+命名空间typedeflonglong ll;typedefunsignedlonglong ull;const ll mod =998244353;const ll INF =1e18;constint maxn =1e6+10;usingnamespace std;//全局变量//函数区
ll max(ll a, ll b){return a > b ? a : b;}
ll min(ll a, ll b){return a < b ? a : b;}
ll gcd(ll a, ll b){return!b ? a :gcd(b, a % b);}//主函数intDoIdo(){
ios::sync_with_stdio(false);
cin.tie(NULL), cout.tie(NULL);int T;
cin >> T;while(T--){
ll a, b, x, y;
cin >> a >> b >> x >> y;
ll g =gcd(2* a,2* b);bool jg =0;if(x % g ==0&& y % g ==0) jg =1;if((x + a)% g ==0&&(y + b)% g ==0) jg =1;if((x + b)% g ==0&&(y + a)% g ==0) jg =1;if((x + a + b)% g ==0&&(y + a + b)% g ==0) jg =1;if(jg) cout <<"Y"<< endl;else cout <<"N"<< endl;}return0;}//分割线---------------------------------QWQ/*
*/