当前位置:网站首页>Hdu4876zcc love cards (multi check questions)
Hdu4876zcc love cards (multi check questions)
2022-07-07 21:04:00 【Full stack programmer webmaster】
Hello everyone , I meet you again , I'm the king of the whole stack .
ZCC loves cards
Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 2362 Accepted Submission(s): 590
Problem Description
ZCC loves playing cards. He has n magical cards and each has a number on it. He wants to choose k cards and place them around in any order to form a circle. He can choose any several consecutive cards the number of which is m(1<=m<=k) to play a magic. The magic is simple that ZCC can get a number x=a1⊕a2…⊕am, which ai means the number on the ith card he chooses. He can play the magic infinite times, but once he begin to play the magic, he can’t change anything in the card circle including the order. ZCC has a lucky number L. ZCC want to obtain the number L~R by using one card circle. And if he can get other numbers which aren’t in the range [L,R], it doesn’t matter. Help him to find the maximal R.
Input
The input contains several test cases.The first line in each case contains three integers n, k and L(k≤n≤20,1≤k≤6,1≤L≤100). The next line contains n numbers means the numbers on the n cards. The ith number a[i] satisfies 1≤a[i]≤100. You can assume that all the test case generated randomly.
Output
For each test case, output the maximal number R. And if L can’t be obtained, output 0.
Sample Input
4 3 1
2 3 4 5
Sample Output
7
Hint
⊕ means xor
Author
Zhenhai middle school
Source
2014 Multi-University Training Contest 2
The question : to n Number . Choose from k Number , this k The number can be arranged randomly , Once the order is set, it cannot be changed , In this definite order . elect m(m<=k) The value obtained by the number XOR x, All in this order x Find a maximum value of R, Among these numbers, there is a continuous range L~R.
#include<stdio.h>
#include<string.h>
int n,k,L,ans[25];
int a[13],aa[13],R,flag[150];
int vist[10];
void find(int tk)
{
if(tk==k-1)
{
memset(flag,0,sizeof(flag));
for(int i=0;i<k-1;i++)
a[i+k]=a[i];
int maxa=0;
for(int i=0;i<k;i++)// Enumerate the XOR values of consecutive segments of a definite sequence
{
int x=a[i]; flag[x]=1; if(maxa<x)maxa=x;
for(int j=i+1;j-i+1<=k;j++)
{
x^=a[j]; flag[x]=1;if(maxa<x)maxa=x;
}
}
int r=0;
for(int i=L;i<=maxa;i++)// Find this maximum R, Make these numbers exist L~R The number of ranges exists .
if(flag[i]==0)break;
else r=i;
if(r>R)R=r;
return ;
}
tk++;
for(int i=0;i<k;i++)
if(vist[i]==0)
{
a[tk]=aa[i]; vist[i]=1; find(tk); vist[i]=0;
}
}
bool panduan()// Relax the conditions ( Random order ) infer
{
memset(flag,0,sizeof(flag));
int maxa=0;
for(int i=1;i<(1<<k);i++)
{
int x=0;
for(int j=0;(1<<j)<=i;j++)
if((1<<j)&i)x^=aa[j];
flag[x]=1;
if(maxa<x)maxa=x;
}
int r=0;
for(int i=L;i<=maxa;i++)
if(flag[i]==0)break;
else r=i;
return r>R;
}
void CNM(int tk,int i)
{
if(tk==k-1)
{
if(panduan())
find(-1);
return ;
}
tk++;
for(int j=i+1;j<n;j++)
{
aa[tk]=ans[j]; CNM(tk,j);
}
}
int main()
{
while(scanf("%d%d%d",&n,&k,&L)>0)
{
R=0; memset(vist,0,sizeof(vist));
for(int i=0;i<n;i++)
scanf("%d",&ans[i]);
CNM(-1,-1);
printf("%d\n",R);
}
}
Publisher : Full stack programmer stack length , Reprint please indicate the source :https://javaforall.cn/116456.html Link to the original text :https://javaforall.cn
边栏推荐
- 使用枚举实现英文转盲文
- 目标:不排斥 yaml 语法。争取快速上手
- 数值法求解最优控制问题(〇)——定义
- 万字总结数据存储,三大知识点
- 恶魔奶爸 A3阶段 近常速语流初接触
- Helix QAC 2020.2新版静态测试工具,最大限度扩展了标准合规性的覆盖范围
- CodeSonar通过创新型静态分析增强软件可靠性
- Onespin | solve the problems of hardware Trojan horse and security trust in IC Design
- Small guide for rapid formation of manipulator (11): standard nomenclature of coordinate system
- Validutil, "Rethinking the setting of semi supervised learning on graphs"
猜你喜欢
Tensorflow2.x下如何运行1.x的代码
H3C s7000/s7500e/10500 series post stack BFD detection configuration method
Apifox interface integrated management new artifact
如何满足医疗设备对安全性和保密性的双重需求?
Mysql子查询关键字的使用方式(exists)
Is embedded system really safe? [how does onespin comprehensively solve the IC integrity problem for the development team]
How does codesonar help UAVs find software defects?
ERROR: 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your
The latest version of codesonar has improved functional security and supports Misra, c++ parsing and visualization
Codesonar Webinar
随机推荐
OneSpin 360 DV新版发布,刷新FPGA形式化验证功能体验
[award publicity] issue 22 publicity of the award list in June 2022: Community star selection | Newcomer Award | blog synchronization | recommendation Award
Deep learning model compression and acceleration technology (VII): mixed mode
恶魔奶爸 B3 少量泛读,完成两万词汇量+
万字总结数据存储,三大知识点
写了个 Markdown 命令行小工具,希望能提高园友们发文的效率!
阿里云有奖体验:如何通过ECS挂载NAS文件系统
[matrix multiplication] [noi 2012] [cogs963] random number generator
Make this crmeb single merchant wechat mall system popular, so easy to use!
I have to use my ID card to open an account. Is the bank card safe? I don't understand it
How does codesonar help UAVs find software defects?
[paper reading] maps: Multi-Agent Reinforcement Learning Based Portfolio Management System
Lex & yacc of Pisa proxy SQL parsing
【函数递归】简单递归的5个经典例子,你都会吗?
如何挑选基金产品?2022年7月份适合买什么基金?
使用高斯Redis实现二级索引
开户还得用身份证银行卡安全吗,我是小白不懂
H3C s7000/s7500e/10500 series post stack BFD detection configuration method
MySQL约束之默认约束default与零填充约束zerofill
Cantata9.0 | new features