zoukankan      html  css  js  c++  java
  • HAOI2011 向量

    题目链接:戳我

    其实我们观察一下这八个衍生的向量,可以知道本质上它们只有4个。

    ((a,b),(-a,b),(b,a),(b,-a))

    之后就是

    [egin{cases} an+am+bp+bq=x\ bn-bm+ap-aq=y end{cases} ]

    合并同类项——

    [egin{cases}(n+m)a+(p+q)b=x\(p-q)a+(n-m)b=yend{cases} ]

    之后裴蜀定理,存在整数解的充要条件是(gcd(a,b)|x)&&(gcd(a,b)|y)

    但是注意这个只是((n+m),(n-m),(p+q),(p-q))有整数解的判断!具体的我们还需要它们对应的,同奇偶

    所以分类讨论——

    • 都是偶数

    [egin{cases}frac{n+m}{2}a+frac{p+q}{2}b=frac{x}{2}\frac{p-q}{2}a+frac{n-m}b=frac{y}{2}end{cases} ]

    (gcd(2*a,2*b)|x) and (gcd(2*a,2*b)|y)

    • 一奇一偶(这里以n+m和n-m为奇数为例)

    [egin{cases}frac{n+m+1}{2}a+frac{p+q}{2}b=frac{x+a}{2}\frac{p-q}{2}a+frac{n-m+1}b=frac{y+b}{2}end{cases} ]

    (gcd(2*a,2*b)|(x+a)) and (gcd(2*a,2*b)|(y+b))
    or
    (gcd(2*a,2*b)|(x+y)) and (gcd(2*a,2*b)|(y+a))

    • 两奇

    [egin{cases}frac{n+m+1}{2}a+frac{p+q+1}{2}b=frac{x+a+b}{2}\frac{p-q+1}{2}a+frac{n-m+1}b=frac{y+a+b}{2}end{cases} ]

    (gcd(2*a+2*b)|(x+a+b)) and (gcd(2*a+2*b)|(y+a+b))

    代码如下:

    #include<iostream>
    #include<cstring>
    #include<cstdio>
    #include<algorithm>
    #include<cmath>
    using namespace std;
    int n; 
    long long a,b,x,y;
    inline long long gcd(long long x,long long y){return y==0?x:gcd(y,x%y);}
    int main()
    {
        #ifndef ONLINE_JUDGE
        freopen("ce.in","r",stdin);
        #endif
        scanf("%d",&n);
        for(int i=1;i<=n;i++)
        {
            scanf("%lld%lld%lld%lld",&a,&b,&x,&y);
            long long cur2=gcd(2*a,2*b);
            if(x%cur2==0&&y%cur2==0) printf("Y
    ");
            else if((x+a)%cur2==0&&(y+b)%cur2==0) printf("Y
    ");
            else if((x+b)%cur2==0&&(y+a)%cur2==0) printf("Y
    ");
            else if((x+a+b)%cur2==0&&(y+a+b)%cur2==0) printf("Y
    ");
            else printf("N
    ");
        }
        return 0;
    }
    
  • 相关阅读:
    纹理贴图的模式设置
    vs debug或者release文件夹下的 .exe文件
    subpixel的概念
    点乘
    设置开机时自动开启和关闭的软件
    CF553E Kyoya and Train
    CF960G Bandit Blues
    玩游戏
    「SWTR03」Counting Trees
    CF623E Transforming Sequence
  • 原文地址:https://www.cnblogs.com/fengxunling/p/10459597.html
Copyright © 2011-2022 走看看