Just do it
来源:互联网 发布:机器人离线编程软件 编辑:程序博客网 时间:2024/06/05 04:39
Just do it
Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others)
Total Submission(s): 1420 Accepted Submission(s): 831
Problem Description
There is a nonnegative integer sequencea1...n of length n . HazelFan wants to do a type of transformation called prefix-XOR, which means a1...n changes into b1...n , where bi equals to the XOR value of a1,...,ai . He will repeat it for m times, please tell him the final sequence.
Input
The first line contains a positive integerT(1≤T≤5) , denoting the number of test cases.
For each test case:
The first line contains two positive integersn,m(1≤n≤2×105,1≤m≤109) .
The second line containsn nonnegative integers a1...n(0≤ai≤230−1) .
For each test case:
The first line contains two positive integers
The second line contains
Output
For each test case:
A single line containsn nonnegative integers, denoting the final sequence.
A single line contains
Sample Input
21 113 31 2 3
Sample Output
11 3 1
Source
2017 Multi-University Training Contest - Team 7
Recommend
liuyiding | We have carefully selected several similar problems for you: 6216 6215 6214 6213 6212
打表找规律,发现他们的系数如下:
11 1 1 11 1
21 2 3 45 6
31 3 6 1015 21
41 4 10 2035 56
51 5 15 3570 126
..............................................
..............................................
i.......c(m+i-2,i-1).................
发现他们的系数是杨辉三角
我们只需要系数的奇偶,c(m,n) :if((m&n)==n) 则c(m,n)是一个奇数,一个组合数的性质
代码如下:
#include<stdio.h>#include<string.h>const int N=2*1e5+5;int a[N],b[N];int main(){int t,n,m;scanf("%d",&t);while(t--){scanf("%d%d",&n,&m);memset(b,0,sizeof(b));for(int i=1;i<=n;i++)scanf("%d",&a[i]);for(int i=1;i<=n;i++){int mm=m+i-2,nn=i-1;if((mm&nn)==nn){for(int j=i;j<=n;j++){b[j]^=a[j-i+1];}}}for(int i=1;i<=n;i++){if(i==1)printf("%d",b[i]);elseprintf(" %d",b[i]);}puts("");}return 0;}
阅读全文
0 0
- Just do it
- Just do it!
- Just do it!
- Just do it!
- just do it!
- Just do it!
- Just do it...
- Just do it
- Just do it!
- Just do it
- Just do it!
- just do it
- Just do it
- Just do it!
- just do it
- just do it
- Just do it
- Just do it
- selenium 中PageObject思想学习+部分unittest方法
- 远程桌面到 Ubuntu 虚拟机
- 实用的Eclipse快捷键
- 【JAVA开发之架构专题】10.NIO通信架构
- ckeditor的简单使用以及多张图片上传插件的制作
- Just do it
- Easy Problemset Gym100851E
- 二叉树的最长路径和(Binary Tree Maximum Path Sum)
- 最小局域网实现tftp
- 错误信息:Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
- excel数据导入导出的模块
- Linux-第五单元总结
- Android Fingerprint完全解析(三) :Fingerprint Hal层分析
- Android数据存储之SQLite