CodeForces 768C Jon Snow and his Favourite Number 暴力 空间换时间
来源:互联网 发布:uuu网络加速器 编辑:程序博客网 时间:2024/05/16 15:58
题意:给定一个长度 为n个数得数组a,一个数字x,一个数字k;现在对数组进行以下步骤,1.将数字从小到大排序,2.将奇数位置的数与x异或,偶数位置不变。会得到一个新的数组。一个这样的两个步骤称为操作,求进行k次后,最大值和最小值。
思路:点击打开链接 这样的做法长姿势了
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int INF = 1<<30;const int maxn = 1090;int num[2][maxn];int main(){int n,x,k;//freopen("in.txt","r",stdin);while(scanf("%d%d%d",&n,&k,&x)!=EOF){int buf,ma,mi;ma=-INF;mi=INF;for(int i=0;i<n;i++){scanf("%d",&buf);num[0][buf]++;if(ma<buf)ma=buf;if(mi>buf)mi=buf;}for(int i=0;i<k;i++){int now=1;//正在判断now个数 用来确定奇偶 memset(num[(i+1)&1],0,sizeof(num[(i+1)&1]));for(int j=mi;j<=ma;j++){if(num[i&1][j]==0)continue;int a = j^x;if((num[i&1][j]&1)==0)//j有偶数个 {num[(i+1)&1][a]+=num[i&1][j]/2;//异或后a有一半放到奇数位置上,一半一要异或,一半不要异或 num[(i+1)&1][j]+=num[i&1][j]/2;}else if(now&1)//j处在奇数位置上 {num[(i+1)&1][a]+=(num[i&1][j]/2)+1;//now位置处变为a , 剩下的又是偶数个 ,所以a多一个 num[(i+1)&1][j]+=num[i&1][j]/2;}else //j处在第偶数个位置上 {num[(i+1)&1][a]+=num[i&1][j]/2;num[(i+1)&1][j]+=(num[i&1][j]/2)+1;//j 要多一个,少一个异或的 }now+=num[i&1][j];}ma=-INF;mi=INF;for(int kk=0;kk<maxn;kk++){if(num[(i+1)&1][kk]){if(ma<kk)ma=kk;if(mi>kk)mi=kk;}}}printf("%d %d\n",ma,mi);}}
0 0
- CodeForces 768C Jon Snow and his Favourite Number 暴力 空间换时间
- Codeforces 768C Jon Snow and his Favourite Number 构造
- Codeforces 768C Jon Snow and his Favourite Number
- 【codeforces 768C】Jon Snow and his Favourite Number
- codeforces 768C Jon Snow and his Favourite Number 【思维】
- Codeforces 768C Jon Snow and his Favourite Number【思维】
- CodeForces 768C Jon Snow and his Favourite Number
- Codeforces Round #399:C. Jon Snow and his Favourite Number
- C. Jon Snow and his Favourite Number
- codeforces 768 C Jon Snow and his Favourite Number(循环节)
- Codeforces768C Jon Snow and his Favourite Number
- Codeforces768C-Jon Snow and his Favourite Number
- Jon Snow and his Favourite Number
- Codeforces Round #399 (Div. 1 + Div. 2, combined)C. Jon Snow and his Favourite Number
- Codeforces 387C George and Number 暴力
- Codeforces 768D Jon and Orbs
- codeforces 768D Jon and Orbs
- Codeforces 768D Jon and Orbs (DP)
- WebStudy02_jQuery
- java.lang.Exception: No tests found matching Method test5(com.crosudd.test.TestMybatis) from org.jun
- ros中常见各坐标系之间衔接关系
- iOS UITableView 使用总结
- WebStudy03_HTML5+CSS3
- CodeForces 768C Jon Snow and his Favourite Number 暴力 空间换时间
- k8s kubernetes 高可用https and http集群实战 HA
- WebStudy04_AngularJS
- 使用Java Socket实现简单的聊天功能
- 使用Struts2+Hibernate(HQL)添加数据、查询数据
- 【深度学习】RNN的梯度消失/爆炸与正交初始化
- WebStudy05_移动端+less+bootstrap+zepto
- VR系列——Oculus Rift 介绍指南:七、使用演示场景测试Rift
- drbd安装及配置