信息学竞赛典型例题程序汇集_第1页
信息学竞赛典型例题程序汇集_第2页
信息学竞赛典型例题程序汇集_第3页
信息学竞赛典型例题程序汇集_第4页
信息学竞赛典型例题程序汇集_第5页
已阅读5页,还剩48页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

信息学竞赛复习1斐波拉契数列(1000000以内的数字)INCLUDE“STDIOH”INCLUDE“STDLIBH”VOIDMAINLONGFIB11,FIB21,FIB0PRINTF“1000000以内的数字NN“PRINTF“DNDN“,FIB1,FIB2WHILEFIB0CURRENTWHILECURRENTLENCURRENTLENIFACURRENT1MIFMNACURRENT0REMAINPRINTF“D,“,CURRENTM0SYSTEM“PAUSE“(2)约瑟夫问题_数组环INCLUDE“STDIOH“INCLUDE“STDLIBH“VOIDMAININTA100INTI,LEN,N/I循环LEN总数N每次数几个INTCUR,M,REMAIN/CUR当前是哪个M计数REMAIN剩下几个/INTT1,T2FORI0I0CURACURMIFMN1PRINTF“D,“,ACUR/T1ACUR/T2AACURACURAACURREMAINM0SYSTEM“PAUSE“(3)约瑟夫问题_链表INCLUDE“STDIOH“INCLUDE“STDLIBH“STRUCTPEOPLEINTNUMSTRUCTPEOPLENEXTTYPEDEFSTRUCTPEOPLENODENODECREATEINTMINTINODEH,P1,P2HP1P2NODEMALLOCSIZEOFNODEHNUM1FORI1INEXTP1P1NUMI1P2P1P1NEXTHRETURNHNODEFINDOUTNODETP,INTNINTINODEPPTPFORI1INEXTRETURNPNODEMOVEAWAYNODETPNODEC,P1,P2CTPP1CNEXTP2P1NEXTCNEXTP2PRINTF“D,“,P1NUMFREEP1RETURNP2VOIDMAINNODEPINTLEN,I,NPRINTF“请输入约瑟夫问题节点总数“LEN41/SCANF“D“,PRINTF“请输入每次数的节点数字“N3/SCANF“D“,PCREATELENFORI1INUM1FORI1INEXTP1P1PRIORP2P1NUMI1P2P1P1NEXTHHPRIORP1RETURNHNODEFINDOUTNODETP,INTNINTINODEPPTPFORI1INEXTRETURNPNODEMOVEAWAYNODETPNODEC,P1,P2CTPP1CPRIORP2CNEXTP1NEXTP2P2PRIORP1PRINTF“D,“,CNUMFREECRETURNP2VOIDMAINNODEPINTLEN,I,NPRINTF“请输入约瑟夫问题节点总数“LEN41/SCANF“D“,PRINTF“请输入每次数的节点数字“N3/SCANF“D“,PCREATELENFORI1IINCLUDEVOIDMAININTSUM0/统计个数INTB/起数INTA6INTHAVE7INTJINTTEMPBFORB10000B0SUMPRINTF“SUMDN“,SUMSYSTEM“PAUSE“(2)统计含有2个数字7,但不能被7整除的5位整数的个数INCLUDEINCLUDEVOIDMAININTSUM0/统计个数INTB/起数INTA6INTHAVE7INTJINTTEMPBFORB10000BINCLUDEVOIDMAININTI,J,KFORI1IINCLUDEVOIDMAININTI,J,KFORI1IVOIDMAININTSUM0INTA,B,C,DINTI,J,IR,JR,M,NINTARR5INTFLAGFORI10IVOIDMAININTSUM0INTA,B,C,D,E,FINTI,J,IR,JR,M,NINTARR7INTFLAGFORI100IVOIDMAININTSINTA,B,C,D,E,FINTARR7INTFLAG,I,JINTSUM0FORS11SVOIDMAININTSINTA,B,C,D,E,FINTARR7INTFLAG,I,JINTSUM0FORS11SB|AC|BCFLAG1IFDE|DF|EFFLAG1/没有重复的数字进入且符合倒数条件IFFLAG0PRINTF“SDAD,BD,CD,DD,ED,FDN“,S,A,B,C,D,E,F7八皇后问题(1)穷举法INCLUDEINCLUDEINCLUDEDEFINEN8/定义棋盘大小VOIDMAINVOIDINTNUMOFTIMES0INTCOUNT0INTAN1INTFLAGINTI1,I2,I3,I4,I5,I6,I7,I8,X,Y,PPRINTF“D皇后问题的穷举法解决“,NFORI11I1“/第2种显示方法PRINTF“第D种解法N“,COUNTFORI0IINCLUDEINCLUDEDEFINEN8VOIDMAININTNUMOFTIMES0INTCOUNT0/解法的个数(计数器)INTAN1/I,AI分别代表第I行和这行中皇后放置的列数INTFLAG/标记0或1,0代表有冲突;1代表没有冲突INTI,J/循环变量INTMM1AM1/从第1行开始第1行从第1列开始放置皇后WHILEA11I/检查当前行放置位置,与之前的所有行有没有冲突IFAMAI|ABSAMAIMIFLAG1BREAKIFFLAG0PRINTF“第D种解法“,COUNTFORI1I1/AMN,已经测试完这一行的所有列,到达最后一列/M1,不是第1行M/退回上1行AM/右移1列PRINTF“共运行计算D次N“,NUMOFTIMESPRINTF“共找到D种方案NN“,COUNTSYSTEM“PAUSE“8桥本分数式(1)穷举法INCLUDEINCLUDE/桥本分数式求解VOIDMAININTSUM0,RUNCOUNTINTI1,I2,I3,I4,I5,I6,I7,I8,I9INTFLAGINTA11INTM,N,JINTLEFT,RIGHT,ABFORI11I11JIFAIAJSIGN0BREAK/有重复的数字,终止测试AIAJIFSIGN1IIFAMAIFLAG1IFFLAG0A56A510A6A89A810A9IFA11MAMPRINTF“NTIMESDN“,TIMESPRINTF“NSUMDN“,SUM9神奇的古尺一个古尺,总长36寸,因年代久远,中间标注的刻度只剩下8个,但是这个尺子还是可以一次性度量136之间的任意长度,请确定这8个刻度的位置。(1)穷举法优化INCLUDEINCLUDEVOIDMAININTTESTTIMES0INTA10/刻度数组INTB37/长度检测数组INTI1,I2,I3,I4,I5,I6,I7,I8INTI,JINTFLAG,SIGN/头尾A00A936FORI11I10IFORJI1J0JBAIAJ1/检测B数组是否全部1SIGN0FORI1IINCLUDEDEFINELEN36DEFINEN7VOIDMAININTTESTTIMES0,SUM0INTAN2/刻度数组INTBLEN1/长度检测数组INTI,J/循环变量INTM,QINTFLAG,SIGN/头尾A00AN1LENM1A11WHILEA122/SYSTEM“PAUSE“/PRINTF“ID,ADDN“,I,I,AI/FORI1I0IFORJI1J0JBAIAJ1/检测B数组是否全部1SIGN0FORI1ILENN1MAMPRINTF“程序共检测了D种组合N“,TESTTIMESPRINTF“共有D符合条件N“,SUMSYSTEM“PAUSE“10别出心裁的情侣拍照8对情侣,参加聚会后拍照,主持人要求如下每对情侣不得相邻,每对情侣都是男左女右排队,编号为1的情侣之间有1个人,编号为2的情侣之间有2个人,依次类推,编号为8的情侣之间有8个人分析/A数组代表位置A1A8/数组的值表示对应的人/A12表示第1个位置是编号为2个男生/4对情侣编号为18/14为男生,58为女生/1和5为1对/2和6为1对/3和7为1对/4和8为1对(1)回溯法优化INCLUDEINCLUDEINCLUDEDEFINEN8VOIDMAININTTESTTIMES0INTSUM0INTA2N1INTI/循环变量INTFLAGINTM/回溯变量INTLOVERS/统计已经安排的情侣人数,当LOVERS2N时,全部安排好FORI1I0I/不重复IFAMAIFLAG1BREAK/判断1对情侣是否可以排好/MAM1,女生位置是否超出范围/AMAM10,女生位置是否已经有人IFFLAG0/改动AM之前IFMAM1INCLUDEINCLUDEDEFINEN8VOIDMAININTTESTTIMES0INTSUM0INTA2N1INTI/循环变量INTFLAGINTM/回溯变量M1A11/循环条件A10I/不重复IFAMAIFLAG1BREAK/男左女右IFABSAIAMNBREAK/情侣间隔的人数等于编号数IFABSAIAMNBREAKIFFLAG0FORI1I2NAMPRINTF“程序共检测了D种组合N“,TESTTIMESPRINTF“共找到D种组合符合要求N“,SUMSYSTEM“PAUSE“11四大湖泊/我国有4大淡水湖。A说洞庭湖最大,洪泽最小。鄱阳湖第三。B说洪泽湖最大,洞庭湖最小,鄱阳湖第二。太湖第三。C说洪泽湖最小,洞庭湖第三。D说鄱阳湖最大,太湖最小,洪泽湖第二,洞庭湖第三。4个人每人仅答对了一个,请你编程给出4个湖从大到小的顺序。(1)INCLUDEINCLUDEVOIDMAININTA,B,C,DFORA1AINCLUDEVOIDMAININTJINTARR5INTI1INTFLAGINTA,B,C,DARR11WHILEARRI0JIFARRJARRIFLAG1BREAKAARR1BARR2CARR3DARR4/输出IFFLAG0IFFLAG0ARRISYSTEM“PAUSE“(3)优化INCLUDEINCLUDEVOIDMAININTA,B,C,DFORA1AINCLUDEVOIDMAININTRUNTIMES0INTSUM0INTFLAGINTA11INTM,N,I,JINTLEFT,RIGHT,AB/初始条件设定I1A11WHILEAI1J/检查当前行放置位置,与之前的所有行有没有冲突IFAIAJFLAG1BREAK/检查重复完成IFFLAG0FORJ1J1/AI9,已经测试完这一位置的所有可能的数字/I1,不是第1个位置IAI/检测下一个数字,一直到9为止PRINTF“共运行计算D次N“,RUNTIMESPRINTF“共找到D种方案NN“,SUMSYSTEM“PAUSE“13装错信封/某人给5个朋友写信,同时写了5个朋友的信封问每个信封和信都不相符的情况有多少(1)穷举法INCLUDEINCLUDEDEFINEN5VOIDMAININTTESTTIMES0INTSUM0INTAN1/信封数组A11,对应INTI1,I2,I3,I4,I5INTI,JINTFLAGFORI11I1INCLUDEDEFINEN5VOIDMAININTTESTTIMES0INTSUM0INTAN1/信封数组A11,对应INTI,J/循环变量INTFLAGINTM/回溯变量M1A11WHILEA10IIFAIAMFLAG1BREAK/增加条件,减少搜索范围FORIMI0IIFAIIFLAG1BREAKIFFLAG0FORI1INAMPRINTF“程序共检测了D种组合N“,TESTTIMESPRINTF“共找到D种组合符合要求N“,SUMSYSTEM“PAUSE“14汉诺塔(1)汉诺塔移动步骤INCLUDEINCLUDEVOIDMOVECHARX,CHARYPRINTF“CCN“,X,Y/将N个盘从A座借助B座,移到C座VOIDHANOIINTN,CHARA,CHARB,CHARCIFN1MOVEA,CELSEHANOIN1,A,C,BMOVEA,CHANOIN1,B,A,CINTMAININTM4HANOIM,1,2,3SYSTEM“PAUSE“(2)汉诺塔移动次数计算INCLUDEINCLUDE/将N个盘从A座借助B座,移到C座DOUBLETINTMDOUBLESIFM1S1ELSES2TM11RETURNSINTMAININTM64PRINTF“0F“,TMSYSTEM“PAUSE“15水手分椰子5个水手带着1只猴子来到一座荒岛,见岛上有大量椰子,他们便把这些椰子平均分成5堆。夜深人静,一个水手偷偷起来拿走了一堆椰子,把剩下的椰子又平均分成5堆,结果多出一只椰子丢给猴子吃掉了,过了一会儿,另一个水手也偷偷起来,拿走了一堆椰子后,再把剩下的椰子平均分成5堆,结果还是多了一只,丢给猴子吃了。就这个多事的月黑风高的夜晚,5个水手都偷偷藏起一堆,重分了椰子,每次都多出一只椰子让猴子占了便宜。第二天一早,岛上依然平均堆放着5堆椰子。问原先的椰子最少要有多少只INCLUDEINCLUDEINCLUDEDEFINEN5VOIDMAININTTIMES0INTI0DOUBLEY,K,XYK1WHILEIINCLUDEDEFINEN5VOIDMAININTI,JINTTEMP1,TEMP2INTMINTQUANTITY/U是整数划分式的个数,如4QUANTITY5INTNEWI/增加的新项目编号STATICINTA80021/初始化,全部置为0FORI0I0PRINTF“D“,AIJJPRINTF“N“PRINTF“N“SYSTEM“PAUSE“17最长非降子序列(1)递推法INCLUDEINCLUDEDEFINEN10VOIDMAININTAN47,36,52,46,45,28,46,69,14,42INTBNINTMAX,LENINTI,JBN11LEN1FORIN2I0IMAX0FORJI1JMAXMAXBJBIMAX1IFBILENLENBIFORI0IINCLUDEINTA1047,36,52,46,45,28,46,69,14,42INTN10INTBINTIINTJ,RETURNVALUEINTMAXINTTEMPIFIN1RETURNVALUE1ELSEMAX0FORJI1JMAXMAXTEMPRETURNVALUEMAX1RETURNRETURNVALUEVOIDMAININTI,LEN,JINTTEMPFORI0ILENLENTEMPPRINTF“N最长序列3DN“,LENJLENFORI0IINCLUDEINCLUDEVOIDMAININTN,I,J,TINTA5050,B5050CHARLORR5050SRANDINTTIME0N5FORI1I1IFORJ1JINCLUDEINCLUDEVOIDMAININTN,I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论