其他分享
首页 > 其他分享> > cf1100 没看懂题意

cf1100 没看懂题意

作者:互联网

https://codeforces.com/contest/1726/problem/B

英文
the bitwise XOR of all elements in a (which are strictly less than ai) is 0.
在a中比ai小的所有元素小于0
首先n>m一定无法构造。然后异或和为0,代表着小于ai的aj一定有偶数个,因为aj^aj=0。为了方便,我们首先用1填充,如果n%1=1,最后在1序列末尾加上一个m-(n-1)即可;如果n%2=0,最后需要加上的2个(m-(n-2))/2,但如果(m-(n-2))%1==1,我们也无法构造,因为这样始终会有两个数无法凑成一对

#include<stdio.h>
 
int T,n,m;
 
int main() {
    scanf("%d",&T);
    while (T--) {
        scanf("%d%d",&n,&m);
        if (m<n) puts("No");
        else if (n&1) {
            puts("Yes");
            for (int i=1; i<n; ++i)
                printf("1 ");
            printf("%d\n",m-n+1);
        }
        else if (m&1) puts("No");
        else {
            puts("Yes");
            for (int i=2; i<n; ++i)
                printf("1 ");
            printf("%d %d\n",(m-n>>1)+1,(m-n>>1)+1);
        }
    }
    return 0;
}

标签:aj,题意,ai,没看,cf1100,n%,int,无法,scanf
来源: https://www.cnblogs.com/liang302/p/16685290.html