某机构举办球票大奖赛。获奖选手有机会赢得若干张球票。
主持人拿出N张卡片(上面写着1~N的数字),打乱顺序,排成一个圆圈。你可以从任意一张卡片开始顺时针数数:1,2,3.....如果数到的数字刚好和卡片上的数字相同,则把该卡片收入囊中,从下一个卡片重新数数。直到再无法收获任何卡片,游戏结束。囊中卡片数字的和就是赢得球票的张数。
比如:卡片排列是:123我们从1号卡开始数,就把1号卡拿走。再从2号卡开始,但数的数字无法与卡片对上,很快数字越来越大,不可能再拿走卡片了。因此这次我们只赢得了1张球票。
还不算太坏!如果我们开始就傻傻地从2或3号卡片数起,那就一张卡片都拿不到了。
如果运气好,卡片排列是213那我们可以顺利拿到所有的卡片!
本题的目标就是:已知顺时针卡片序列。随便你从哪里开始数,求最多能赢多少张球票(就是收入囊中的卡片数字之和)
输入数据:第一行一个整数N(N<100),表示卡片数目第二行N个整数,表示顺时针排列的卡片
输出数据:一行,一个整数,表示最好情况下能赢得多少张球票
比如:用户输入:3123
程序应该输出:1
比如:用户输入:3213
程序应该输出:6
answer:重点在于循环模拟进退位,还要注意打表后环位
1#include23/**4@author:dgw5*/6usingnamespacestd;7typedeflonglongLL;89constintmaxn=1e3;1011intm[maxn],pnum=0;12intinq[maxn];13intn;1415intf()16{intans=0;1718for(inti=0;i=cnt)33{34flag=false;35break;36}37}38if(flag)39break;40intk=start%n;41if(inq[k]==cnt)42{43inq[k]=-1;44re+=cnt;45cnt=1;46}47elseif(inq[k]!=-1)48{49cnt++;50}51start++;52}5354ans=max(ans,re);55}56returnans;57}5859intmain()60{61cin>>n;62for(inti=0;i>m[i];65}6667cout<小明写了一个有趣的程序,给定一串数字。它可以输出这串数字拼出放大的自己的样子。
比如“2016”会输出为:222220000016666220011620016666662001662001662200166222222200000111166666
请仔细分析代码,填写划线部分缺少的内容。
#include#include#defineZIW8#defineZIH7voidf(intn){charcc[100];inti,j;chardi[][ZIH][ZIW]={{"00000","00","00","00","00","00","00000"},{"1","11","1","1","1","1","1111"},{"22222","22","2","2","2","22","2222222"},{"33333","33","3","3333","3","33","33333"},{"44","44","44","44","44","4444444","4"},{"55555","5","555555","5","5","55","55555"},{"6666","6","666666","66","66","66","66666"},{"7777777","77","7","7","7","7","7"},{"88888","88","88","88888","88","88","88888"},{"99999","99","99","999999","9","99","99999"}};sprintf(cc,"%d",n);for(i=0;i注意:只提交划线部分缺少的代码,不要添加任何题面已有代码或符号。也不要提交任何说明解释文字等。
1#include2#include3#defineZIW84#defineZIH75voidf(intn)6{7charcc[100];8inti,j;9chardi[][ZIH][ZIW]=10{11{"00000",12"00",13"00",14"00",15"00",16"00",17"00000"},18{"1",19"11",20"1",21"1",22"1",23"1",24"1111"},25{"22222",26"22",27"2",28"2",29"2",30"22",31"2222222"},32{"33333",33"33",34"3",35"3333",36"3",37"33",38"33333"},39{"44",40"44",41"44",42"44",43"44",44"4444444",45"4"},46{"55555",47"5",48"555555",49"5",50"5",51"55",52"55555"},53{"6666",54"6",55"666666",56"66",57"66",58"66",59"66666"},60{"7777777",61"77",62"7",63"7",64"7",65"7",66"7"},67{"88888",68"88",69"88",70"88888",71"88",72"88",73"88888"},74{"99999",75"99",76"99",77"999999",78"9",79"99",80"99999"}};8182sprintf(cc,"%d",n);83//printf("%s",cc[0]);8485for(i=0;i