雅礼NOIP试题1
NOIP提高组初赛历年试题及答案求解题篇(完整资料).doc

【最新整理,下载后即可编辑】NOIP提高组初赛历年试题及答案求解题篇问题求解题(每次2题,每题5分,共计10分。
每题全部答对得5分,没有部分分)注:答案在文末提高组的问题求解题的知识点大多涉及计数问题、鸽巢原理、容斥问题、逻辑推理、递推问题、排列组合问题等。
NOIP2011-1.平面图可以画在平面上,且它的边仅在顶点上才能相交的简单无向图。
4个顶点的平面图至少有6条边,如图所示。
那么,5个顶点的平面图至多有_________条边。
NOIP2011-2.定义一种字符串操作,一次可以将其中一个元素移到任意位置。
举例说明,对于字符串“BCA”可以将A移到B 之前,变字符串“ABC”。
如果要将字符串“DACHEBGIF”变成“ABCDEFGHI”最少需要_________次操作。
NOIP2012-1. 本题中,我们约定布尔表达式只能包含p,q, r三个布尔变量,以及“与”(∧)、“或”(∨)、“非”(¬)三种布尔运算。
如果无论p, q,r如何取值,两个布尔表达式的值总是相同,则称它们等价。
例如,(p∨q)∨r和p∨(q∨r)等价,p∨¬p 和q∨¬q 也等价;而p∨q 和p∧q不等价。
那么,两两不等价的布尔表达式最多有_________个。
NOIP2012-2. 对于一棵二叉树,独立集是指两两互不相邻的节点构成的集合。
例如,图1有5个不同的独立集(1个双点集合、3个单点集合、1个空集),图2有14个不同的独立集。
那么,图3有_________个不同的独立集。
NOIP2013-1. 某系统自称使用了一种防窃听的方式验证用户密码。
密码是n个数s1,s2,…,sn,均为0或1。
该系统每次随机生成n个数a1,a2,…,an,均为0或1,请用户回答(s1a1+s2a2+…+snan)除以2的余数。
如果多次的回答总是正确,即认为掌握密码。
该系统认为,即使问答的过程被泄露,也无助于破解密码——因为用户并没有直接发送密码。
湖南省长沙市2020年雅礼中学理实班自主招生考试数学模拟试题(PDF版)

解析:如图,连接 OE,∵∠PEF=90°﹣∠OEB=90°﹣∠OBE=∠OFB=∠EFP,
﹣1=31 克,26﹣1﹣2=23 克,26﹣1﹣6=19 克,26﹣2﹣6=18 克除去重复的外,7 种
③当天平两端放四个砝码时,可称量重物的克数有:26+1+2﹣6=23 克,26+2+6﹣1=33
克,26+1+6﹣2=31 克,26+1﹣2﹣6=19 克,26+2﹣1﹣6=21 克,26+6﹣1﹣2=29 克,
机动车辆数如图所示.图中 x1,x2,x3 分别表示该时段单位时间通过路段 AB,BC,CA
的机动车辆数(假设单位时间内在上述路段中同一路段上驶入与驶出的车辆数相等),则
有(
)
A.x1>x2>x3
B.x1>x3>x2
C.x2>x3>x1
解析:依题意,有 x1=50+x3﹣55=x3﹣5=>x1<x3,
湖南省雅礼中学初升高自招卷
1.如图,AB 为半圆 O 的直径,C 是半圆上一点,且∠COA=60°,设扇形 AOC、△COB、
弓形 BmC 的面积为 S1、S2、S3,则它们之间的关系是(
A.S1<S2<S3
B.S2<S1<S3
)
C.S1<S3<S2
D.S3<S2<S1
解析:作 OD⊥BC 交 BC 与点 D,
;
랐
,即:(x,y)=(16,19)
;
,即:(x,y)=(34,136);
ᚰ
,即:(x,y)=(68,170);
ͳ랐
ᚰ
,即:(x,y)=(158,332)
;
5
.
⑦
⑧
�
高中信息技术 NOIP 试题与解题报告NOIP 初赛试题(共20页)

NOIP 2021试题(shìtí)与解题报告NOIP 2021初赛试题〔普及组 C++语言〕●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题〔一共20题,每一小题1.5分,一共计30分。
每一小题有且仅有一个正确选项。
〕1.2E+03表示〔〕。
B. 5C. 8D. 20002.一个字节〔byte〕由〔〕个二进制位组成。
A. 8B. 16C. 32D. 以上都有可能3.以下逻辑表达式的值恒为真的是〔〕。
A. P∨(¬P∧Q)∨(¬P∧¬Q)B. Q∨(¬P∧Q)∨(P∧¬Q)C. P∨Q∨(P∧¬Q)∨(¬P∧Q)D. P∨¬Q∨(P∧¬Q)∨(¬P∧¬Q) 4.Linux下可执行文件的默认扩展名为〔〕。
A. exeB. comC. dllD. 以上都不是5.假如树根算第1层,那么一棵n层的二叉树最多有〔〕个结点。
A. 2n-1B. 2nC. 2n+1D. 2n+16.提出(tí chū)“存储程序〞的计算机工作原理的是〔〕。
A. 克劳德·香农B. 戈登·摩尔C. 查尔斯·巴比奇D. 冯·诺依曼7.设X、Y、Z分别代表三进制下的一位数字,假设等式XY + ZX = XYX在三进制下成立,那么同样在三进制下,等式XY * ZX = 〔〕也成立。
A. YXZB. ZXYC. XYZD. XZY 8.Pascal语言、C语言和C++语言都属于〔〕。
A. 面向对象语言B. 脚本语言C. 解释性语言D. 编译性语言9.前缀表达式“+ 3 * 2 + 5 12”的值是〔〕。
A. 23B. 25C. 37D. 65 10.主存储器的存取速度比HY处理器〔CPU〕的工作速度慢得多,从而使得后者的效率受到影响。
而根据部分性原理,CPU所访问的存储单元通常都趋于聚集在一个较小的连续区域中。
雅礼数学试题及答案

雅礼数学试题及答案一、选择题(每题3分,共30分)1. 下列哪个选项是偶数?A. 1B. 2C. 3D. 4答案:B2. 如果一个三角形的内角和为180°,那么这个三角形是:A. 锐角三角形B. 直角三角形C. 钝角三角形D. 不能确定答案:D3. 圆的周长公式是:A. C = 2πrB. C = πr²C. A = πr²D. A = 1/2πr²答案:A4. 以下哪个数是质数?A. 1B. 2C. 4D. 9答案:B5. 一个数的平方根是它本身,这个数是:A. 0B. 1C. -1D. 2答案:A6. 一个数的立方根是它本身,这个数可以是:A. 0B. 1C. -1D. 所有选项答案:D7. 以下哪个是二次方程的解?A. x = 2B. x = -2C. x = 1D. x = 08. 一个数的绝对值是它本身,这个数是:A. 正数B. 负数C. 零D. 所有选项答案:A9. 一个函数的零点是函数值为零的点,以下哪个不是二次函数的零点?A. x = 2B. x = -2C. x = 1D. x = 0答案:B10. 一个数的对数是它本身,这个数是:A. 1B. 10C. eD. π答案:C二、填空题(每题2分,共20分)1. 一个数的平方等于16,这个数是______。
答案:±42. 一个直角三角形的两条直角边分别为3和4,斜边的长度是______。
答案:53. 圆的半径为5,其面积是______。
答案:25π4. 一个数的立方是27,这个数是______。
答案:35. 一个数的对数以10为底,值为2,这个数是______。
答案:1006. 一个数的绝对值是5,这个数可以是______。
7. 一个二次方程的判别式为4,这个方程有两个______。
答案:实数根8. 一个数的平方根是2,这个数是______。
答案:49. 一个数的立方根是-2,这个数是______。
2014年湖南省长沙市雅礼中学理实班自主招生考试数学试卷和解析答案(一)

2014年湖南省长沙市雅礼中学理实班自主招生考试数学试卷(一)一、选择题(共5小题,每小题5分,满分25分)1.(5分)如图,AB为半圆O地直径,C是半圆上一点,且∠COA=60°,设扇形AOC、△COB、弓形BmC地面积为S1、S2、S3,则它们之间地关系是()A.S1<S2<S3B.S2<S1<S3C.S1<S3<S2D.S3<S2<S12.(5分)如图,表示阴影区域地不等式组为()A.B.C.D.3.(5分)正实数a,b,c,d满足a+b+c+d=1,设p=+++,则()A.p>5 B.p=5C.p<5 D.p与5地大小关系不确定4.(5分)函数y=ax2+bx+c图象地大致位置如图所示,则ab,bc,2a+b,(a+c)2﹣b2,(a+b)2﹣c2,b2﹣a2等代数式地值中,正数有()A.2个 B.3个 C.4个 D.5个5.(5分)如图为某三岔路口交通环岛地简化模型,在某高峰时刻,单位时间进出路口A,B,C地机动车辆数如图所示.图中x1,x2,x3分别表示该时段单位时间通过路段AB,BC,CA地机动车辆数(假设单位时间内在上述路段中同一路段上驶入与驶出地车辆数相等),则有()A.x1>x2>x3B.x1>x3>x2C.x2>x3>x1D.x3>x2>x1二、填空题(共10小题,每小题6分,满分60分)6.(6分)已知不等式ax+3≥0地正整数解为1,2,3,则a地取值范围是.7.(6分)在一个3×3地方格表中填有1~9这9个数字,现将每行中数字最大地那个格子涂红色,数字最小地那个格子涂绿色.设M为三个红色方格中数字最小地那个数,m是三个绿色方格中数字最大地那个数,则M﹣m可以有个不同地值.8.(6分)如图,用红,蓝,黄三色将图中区域A、B、C、D着色,要求有公共边界地相邻区域不能涂相同地颜色.满足恰好A涂蓝色地概率为.9.(6分)方程2x2﹣xy﹣3x+3y+2006=0地正整数解(x,y)为.10.(6分)如图,已知直角坐标系中四点A(﹣2,4),B(﹣2,0),C(2,﹣3),D(2,0)、设P是x轴上地点,且PA、PB、AB所围成地三角形与PC、PD、CD所围成地三角形相似,请写出所有符合上述条件地点P地坐标:.11.(6分)以[x]表示不超过x地最大整数(例如:[π]=3,[﹣]=﹣4),记A=[x]+[2x]+[3x]+[4x].在所有地正整数中,有些数是A取不到地,把所有A取不到地正整数从小到大排起来,第30个数是.12.(6分)现有长144cm地铁丝,要截成n小段(n>2),每段地长度为不小于1cm地整数,如果其中任意三小段都不能拼成三角形,则n地最大值为.13.(6分)已知方程a2x2﹣(3a2﹣8a)x+2a2﹣13a+15=0(其中a为非负整数)至少有一个整数根.那么a=.14.(6分)用标有1克,2克,6克,26克地砝码各一个,在一架无刻度地天平上称量重物,如果天平两端均可放置砝码,那么可以称出地不同克数(正整数地重物)有种.15.(6分)如图,AB,CD是圆O地直径,且AB⊥CD,P为CD延长线上一点,PE切圆O于E,BE交CD于F,AB=6cm,PE=4cm,则EF地长为cm.三、解答题(共1小题,满分15分)16.(15分)k、a、b为正整数,k被a2、b2整除所得地商分别为m,m+116.(1)若a,b互质,证明a2﹣b2与a2、b2都互质;(2)当a,b互质时,求k地值.(3)若a,b地最大公约数为5,求k地值.2014年湖南省长沙市雅礼中学理实班自主招生考试数学试卷(一)参考答案与试题解析一、选择题(共5小题,每小题5分,满分25分)1.(5分)如图,AB为半圆O地直径,C是半圆上一点,且∠COA=60°,设扇形AOC、△COB、弓形BmC地面积为S1、S2、S3,则它们之间地关系是()A.S1<S2<S3B.S2<S1<S3C.S1<S3<S2D.S3<S2<S1【解答】解:作OD⊥BC交BC与点D,∵∠COA=60°,∴∠COB=120°,则∠COD=60°.=;∴S扇形AOCS扇形BOC=.在三角形OCD中,∠OCD=30°,∴OD=,CD=,BC=R,=,S弓形==,∴S△OBC>>,∴S2<S1<S3.故选B.2.(5分)如图,表示阴影区域地不等式组为()A.B.C.D.【解答】解:∵x≥0表示直线x=0右侧地部分,2x+y≤5表示直线y=﹣2x+5左下方地部分,3x+4y≥9表示直线y=﹣x+右上方地部分,故根据图形可知:满足阴影部分地不等式组为:.故选D.3.(5分)正实数a,b,c,d满足a+b+c+d=1,设p=+++,则()A.p>5 B.p=5C.p<5 D.p与5地大小关系不确定【解答】解:∵a,b,c,d均为正数,且a+b+c+d=1,∴必有0<a,b,c,d<1∵p=+++,事实上我们在xOy坐标系中作出函数f(x)=地图象,显然可以发现其图象一定在点(0,1)和(1,2)这两点连线地上方,而这两点连线地方程为y=x+1,∴可以发现在(0,1)上恒有>x+1,当然这样只是画图所得,未必准确,∴还要严格证明,证之如下:上式两边平方得:3x+1>x2+2x+1,∴x2﹣x≤x(x﹣1)<0,而此时x∈(0,1),可见上式显然成立.所以我们有:>a+1,>b+1,>c+1,>d+1,以上四式相加得p=+++>a+b+c+d+4=5,即有P>5.故选A.4.(5分)函数y=ax2+bx+c图象地大致位置如图所示,则ab,bc,2a+b,(a+c)2﹣b2,(a+b)2﹣c2,b2﹣a2等代数式地值中,正数有()A.2个 B.3个 C.4个 D.5个【解答】解:观察图形,显然,a<0,c<0,b>0,∴ab<0,bc<0,由,得b<﹣2a,所以2a+b<0;由a﹣b+c<0得(a+c)2﹣b2=(a+b+c)(a﹣b+c)<0;由a+b+c>0得a+b>﹣c>0,因此(a+b)2﹣c2>0,|b|>|a|,b2﹣a2>0.综上所述,仅有(a+b)2﹣c2,b2﹣a2为正数.故选A.5.(5分)如图为某三岔路口交通环岛地简化模型,在某高峰时刻,单位时间进出路口A,B,C地机动车辆数如图所示.图中x1,x2,x3分别表示该时段单位时间通过路段AB,BC,CA地机动车辆数(假设单位时间内在上述路段中同一路段上驶入与驶出地车辆数相等),则有()A.x1>x2>x3B.x1>x3>x2C.x2>x3>x1D.x3>x2>x1【解答】解:依题意,有x1=50+x3﹣55=x3﹣5=>x1<x3,同理,x2=30+x1﹣20=x1+10=>x1<x2,同理,x3=30+x2﹣35=x2﹣5=>x3<x2.故选C.二、填空题(共10小题,每小题6分,满分60分)6.(6分)已知不等式ax+3≥0地正整数解为1,2,3,则a地取值范围是﹣1≤a<﹣.【解答】解:不等式ax+3≥0地解集为:(1)a>0时,x≥﹣,正整数解一定有无数个.故不满足条件.(2)a=0时,无论x取何值,不等式恒成立;(3)当a<0时,x≤﹣,则3≤﹣<4,解得﹣1≤a<﹣.故a地取值范围是﹣1≤a<﹣.7.(6分)在一个3×3地方格表中填有1~9这9个数字,现将每行中数字最大地那个格子涂红色,数字最小地那个格子涂绿色.设M为三个红色方格中数字最小地那个数,m是三个绿色方格中数字最大地那个数,则M﹣m可以有8个不同地值.【解答】解:∵因为M与m分别是红色方格与绿色方格中地数,故M﹣m≠0.∴M﹣m可能有8个不同地值:﹣4,﹣3,﹣2,﹣1,1,2,3,4.故M﹣m可以有8个不同地值.故答案为:8.8.(6分)如图,用红,蓝,黄三色将图中区域A、B、C、D着色,要求有公共边界地相邻区域不能涂相同地颜色.满足恰好A涂蓝色地概率为.【解答】解:要使有公共边界地相邻区域不能涂相同地颜色,则当A涂红时,可有A红、B蓝、C黄、D红;A红、B蓝、C黄、D蓝;A红、B黄、C蓝、D红;A红、B黄、C蓝、D黄共4种情况,;当A涂蓝时,同理也有4种情况;当A涂黄时也有4种情况.∴恰好A涂蓝色地概率为=.故答案为.9.(6分)方程2x2﹣xy﹣3x+3y+2006=0地正整数解(x,y)为(4,2026);(8,442);(16,19);(34,136);(68,170);(158,332);(406,820);(2018,4040).【解答】解:∵2x2﹣xy﹣3x+3y+2006=0,∴(2x2﹣6x)﹣(xy﹣3y)+(3x+9)=﹣2015,∴(x﹣3)(2x﹣y+3)=﹣2015,∴(x﹣3)(y﹣3﹣2x)=5×13×31,∴①,解得,即:(x,y)=(4,2026);②,解得,即:(x,y)=(8,442);③,解得,即:(x,y)=(16,19);④,解得,即:(x,y)=(34,136);⑤,解得,即:(x,y)=(68,170);⑥,解得,即:(x,y)=(158,332);⑦,解得,即:(x,y)=(406,820);⑧,解得,即:(x,y)=(2018,4040);故答案为:(4,2026);(8,442);(16,19);(34,136);(68,170);(158,332);(406,820);(2018,4040).10.(6分)如图,已知直角坐标系中四点A(﹣2,4),B(﹣2,0),C(2,﹣3),D(2,0)、设P是x轴上地点,且PA、PB、AB所围成地三角形与PC、PD、CD所围成地三角形相似,请写出所有符合上述条件地点P地坐标:(,0),(14,0),(4,0),(﹣4,0).【解答】解:设OP=x(x>0),分三种情况:一、若点P在AB地左边,有两种可能:①此时△ABP∽△PDC,则PB:CD=AB:PD,则(x﹣2):3=4:(x+2)解得x=4,∴点P地坐标为(﹣4,0);②若△ABP∽△CDP,则AB:CD=PB:PD,则(﹣x﹣2):(2﹣x)=4:3解得:x=14,与假设在B点左边矛盾,舍去.二、若点P在AB与CD之间,有两种可能:①若△ABP∽△CDP,则AB:CD=BP:PD,∴4:3=(x+2):(2﹣x)解得:x=,∴点P地坐标为(,0);②若△ABP∽△PDC,则AB:PD=BP:CD,∴4:(2﹣x)=(x+2):3,方程无解;三、若点P在CD地右边,有两种可能:①若△ABP∽△CDP,则AB:CD=BP:PD,∴4:3=(2+x):(x﹣2),∴x=14,∴点P地坐标为(14,0),②若△ABP∽△PDC,则AB:PD=BP:CD,∴4:(x﹣2)=(x+2):3,∴x=4,∴点P地坐标为(4,0);∴点P地坐标为(,0)、(14,0)、(4,0)、(﹣4,0).11.(6分)以[x]表示不超过x地最大整数(例如:[π]=3,[﹣]=﹣4),记A=[x]+[2x]+[3x]+[4x].在所有地正整数中,有些数是A取不到地,把所有A取不到地正整数从小到大排起来,第30个数是77.【解答】解:∵随着x增大,[x],[2x],[3x],[4x]中有时候只有一个数会增加1,如x=0.25时,在x<0.25时,[x],[2x],[3x]都是0,[4x]是1,A=0+0+0+1=1;当4x=1时,有时几个数同时增加1,使得中间数有跳过.如当0.25<x<0.5,A=0+0+1+1=2,当x=0.5时,A=0+1+1+2,中间就跳过了3.如当0.5<x<1,A=0+1+2+3,当x=1,A=1+2+3+4,中间跳过3,7,8,9.再增加也是这个规律,每隔10会有一个循环.∴从小到大排列,第30个数应该是,30除以4等于7余2,∴第30个数是为77.故答案为:77.12.(6分)现有长144cm地铁丝,要截成n小段(n>2),每段地长度为不小于1cm地整数,如果其中任意三小段都不能拼成三角形,则n地最大值为10.【解答】解:∵每段地长为不小于1(cm)地整数,∴最小地边最小是1,∵三条线段不能构成三角形,则第二段是1,第三段是2,第四段与第二、第三段不能构成三角形,则第四边最小是3,第五边是5,依次是8,13,21,34,55,再大时,各个小段地和大于150cm,不满足条件.上述这些数之和为143,与144相差1,故可取1,1,2,3,5,8,13,21,34,56,这时n地值最大,n=10.故答案为:1013.(6分)已知方程a2x2﹣(3a2﹣8a)x+2a2﹣13a+15=0(其中a为非负整数)至少有一个整数根.那么a=1,3或5.【解答】解:显然a≠0.故原方程为关于x地二次方程.△=[﹣(3a2﹣8a)]2﹣4a2(2a2﹣13a+15),=[a(a+2)]2是完全平方式.故x=即x1==2﹣,x2==1﹣.当2﹣是整数时,a=1,3;当1﹣是整数时,a=1,5.综上所述,a=1,3或5.14.(6分)用标有1克,2克,6克,26克地砝码各一个,在一架无刻度地天平上称量重物,如果天平两端均可放置砝码,那么可以称出地不同克数(正整数地重物)有28种.【解答】解:(1)当一端放砝码,另一端不放砝码时:①当天平一端只放一个砝码时,可称量重物地克数有:1克,2克,6克,26克4种;②当天平地一端只放两个砝码时,当天平一端只放一个砝码时,可称量重物地克数有:1+2=3克,1+6=7克,1+26=27克,2+6=8克,2+26=28克,6+26=32克6种;③当天平一端只放三个砝码时,可称量重物地克数有:1+2+6=9克,1+2+26=29克,1+6+26=33课,2+6+26=34克共4种;④当天平一端放四个砝码时,可称量重物地克数有1+2+6+26=35克共1种(2)当两端都放砝码时:①当两端都有一个砝码时,可称量地重物地克数有:2﹣1=1克,6﹣1=5克,6﹣2=4克,26﹣1=25克,26﹣1=24克,26﹣6=20克除去和上面重复地外,共5种;②当两端共有三个砝码时,可称量地重物地克数有:6+1﹣2=5克,6+2﹣1=7克,1+26﹣2=25克,2+26﹣1=27克,26+1﹣6=22克,6+26﹣2=30克,26+1﹣6=21克,26+6﹣1=31克,26﹣1﹣2=23克,26﹣1﹣6=19克,26﹣2﹣6=18克除去重复地外,共有7种③当天平两端放四个砝码时,可称量重物地克数有:26+1+2﹣6=23克,26+2+6﹣1=33克,26+1+6﹣2=31克,26+1﹣2﹣6=19克,26+2﹣1﹣6=21克,26+6﹣1﹣2=29克,26﹣1﹣2﹣6=17克除重复地外共1种.所以共有4+6+4+1+5+7+1=28(种)故答案为:28.15.(6分)如图,AB,CD是圆O地直径,且AB⊥CD,P为CD延长线上一点,PE切圆O于E,BE交CD于F,AB=6cm,PE=4cm,则EF地长为cm.【解答】解:如图,连接OE,∵∠PEF=90°﹣∠OEB=90°﹣∠OBE=∠OFB=∠EFP,∴PF=PE=4,在Rt△OPE中,由勾股定理可得OP2=PE2+OE2,∴OP2=32+42=25,解得OP=5cm,∴OF=OP﹣PF=5﹣4=1(cm),DF=OD﹣OF=2cm,CF=OF+OC=4cm,在Rt△OBF中,由勾定理可得BF2=OB2+OF2,即BF2=32+12=10,∴FB=cm,又由相交弦定理可知BF•EF=CF•DF,∴EF==cm,故答案为:.三、解答题(共1小题,满分15分)16.(15分)k、a、b为正整数,k被a2、b2整除所得地商分别为m,m+116.(1)若a,b互质,证明a2﹣b2与a2、b2都互质;(2)当a,b互质时,求k地值.(3)若a,b地最大公约数为5,求k地值.【解答】解:(1)设s为a2﹣b2与a2地最大公约数,则a2﹣b2=su,a2=sv,u,v是正整数,∴a2﹣(a2﹣b2)=b2=s(v﹣u),可见s是b2地约数,∵a,b互质,∴a2,b2互质,可见s=1.即a2﹣b2与a2互质,同理可证a2﹣b2与b2互质;(2)由题知:ma2=(m+116)b2,m(a2﹣b2)=116b2,∴(a2﹣b2)|116b2,∵(a2﹣b2,b2)=(a2,b2)=1,∴(a2﹣b2)|116,所以a2﹣b2是116地约数,116=2×2×29,a2﹣b2=(a﹣b)(a+b),而a﹣b和a+b同奇偶性,且a,b互质,∴a2﹣b2要么是4地倍数,要么是一个大于3地奇数,∴(a﹣b)(a+b)=29 或(a﹣b)(a+b)=116,∴a﹣b=1,a+b=29或a﹣b=1,a+b=116或a﹣b=2,a+b=58或a﹣b=4,a+b=29,解得只有一组解符合条件,a=15,b=14,∴m(152﹣142)=116×142,∴m=4×142=784,∴k=784×152=176400;(3)设a=5x,b=5y,即x,y地最大公约数为1,则m(a2﹣b2)=116b2,∴即m(25x2﹣25y2)=116(5y)2,∴m(x2﹣y2)=116(y)2,∵x ,y 互质,则有:m=24×72, ∴x=15,y=14, a=75,b=70,m=784, k=784×752=4410000.赠送:初中数学几何模型举例【模型四】 几何最值模型: 图形特征:l运用举例:1. △ABC中,AB=6,AC=8,BC=10,P为边BC上一动点,PE⊥AB于E,PF⊥AC于F,M为AP的中点,则MF的最小值为EM FB2.如图,在边长为6的菱形ABCD中,∠BAD=60°,E为AB的中点,F为AC上一动点,则EF+BF的最小值为_________。
noip-初赛模拟试题1(c语言含答案)演示教学

NOIP 初赛模拟试题(2小时C语言普及组)姓名成绩一、选择题(共20题,每题1.5分,共计30分。
)1.微型计算机的性能主要取决于()。
A)内存B)主板C)中央处理器D)硬盘E)显示器2.设T是一棵有n个顶点的树,以下说法不正确的是()。
A.T是联通的,无环的。
B.T是联通的,有n-1条边。
C.T是无环的,有n-1条边。
D.以上都不对。
3.能将高级语言程序转换为目标程序的是( ).A)调试程序B) 连接程序C)编辑程序D)编译程序4.若A=45,B=38,C=78则A^ B & C=( )A)38 B)18 C)11 D)455.计算机病毒传染的必要条件之一是( ) 。
A)在内存中运行病毒程序B)对磁盘进行读写操作C)在内存中运行含有病毒的可执行程序D)复制文件E)删除文件6. TCP/IP协议共有( )层协议A)3 B)4 C)5 D)6 E)77.192.168.0.1是属于( ).A)A类地址B)B类地址C)C类地址D)D类地址E)E类地址8.对给定的整数序列(54,73,21,35,67,78,63,24,89)进行从小到大的排序时,采用快速排序的第一趟扫描的结果是( ).A)(24,21,35,54,67, 78,63,73,89)B)(24,35,21,54,67, 78,63,73,89)C)(24,21,35,54,67, 63,73,78,89)D)(21,24,35,54,63, 67,73,78,89)9.一棵n个结点的完全二叉树,则二叉树的高度h为( ).A)n/2 B)log2n C)(log2n)/2 D) [log2n]+1 E)2n-110.下图对该图进行广度优先拓朴排序得到的顶点序列正确的是( ).A)1,2,3,4,5,6B)1,3,2,4,5,6C)1,3,2,4,6,5D)1,2,3,4,6,5,E)1,3,2,4,5,6A)采用二进制表示数据和指令;B)采用”存储程序”工作方式C)计算机硬件有五大部件(运算器、控制器、存储器、输入和输出设备)D)结构化程序设计方法12.下列不属于输入设备的是( ).A)打印机B)扫描仪C)光笔D)鼠标13.算式(1000)10-(101)16 - (11)8的结果是( ).A)(891)10 B)(886)8C)(10111000011)2D)(2DE)1614.下面关于算法的不正确的说法是( )A)算法必须有输出B)算法必须在计算机上用某种语言实现C)算法不一定有输入D)算法必须在有限步执行后能结束E)算法的每一步骤必须有确切的定义15.下列关于十进制数100的正确说法是( ).A)原码为01101100BB)反码为64H C)反码为9BH D)补码为65H16.关于windows系统中的窗口和对话框的说法正确的是( ).A)对话框能移动和改变大小B)窗口不能移动,能改变大小C)对话框只能移动,不能改变大小D)对话框不能移动但能改变大小E)窗口能移动和但不能改变大小17.若A=true,B=false,C=true,D=false,以下逻辑运算表达式真的有()A.(A∧B)∨(C∧D∨¬A)B.((¬A∧B)∨C)∧¬BC.(B∨C∨D)∧D∧¬AD. ¬A∧(D∨¬ C) ∧B18.下列关于排序说法不正确的是( ).A)插入排序、冒泡排序是稳定的B)选择排序的时间复杂性为O(n2)C)选择排序、希尔排序、快速排序、堆排序是不稳定的D)希尔排序、快速排序、堆排序的时间复杂性为O(nlog2n)E)占用内存空间大的是归并排序。
长沙市雅礼中学招生考试试卷
长沙市雅礼中学理科实验班招生试题数学一、选择题(共8小题,每小题5分,满分40分)1、下列四个图形中,每个小正方形都标上了颜色.若要求一个正方体两个相对面上的颜色都一样,那么不可能是这一个正方体的展开图的是()A、B、C、D、2、某工厂第二季度的产值比第一季度的产值增长了x%,第三季度的产值又比第二季度的产值增长了x%,则第三季度的产值比第一季度的产值增长了()A、2x%B、1+2x%C、(1+x%)x%D、(2+x%)x%3、甲从一个鱼摊上买了三条鱼,平均每条a元,又从另一个鱼摊上买了两条鱼,平均每条b元,后来他又以每条元的价格把鱼全部卖给了乙,结果发现赔了钱,原因是()A、a>bB、a<bC、a=bD、与a和b的大小无关4、若D是△ABC的边AB上的一点,∠ADC=∠BCA,AC=6,DB=5,△ABC的面积是S,则△BCD的面积是()A、B、C、D、5、(2007•玉溪)如图,AE⊥AB且AE=AB,BC⊥CD且BC=CD,请按照图中所标注的数据,计算图中实线所围成的图形的面积S是()A、50B、62C、65D、686、如图,两个标有数字的轮子可以分别绕轮子的中心旋转,旋转停止时,每个轮子上方的箭头各指着轮子上的一个数字,若左图轮子上方的箭头指着的数字为a,右图轮子上方的箭头指的数字为b,数对(a,b)所有可能的个数为n,其中a+b恰为偶数的不同个数为m,则等于()A、B、C、D、7、如图,甲、乙两动点分别从正方形ABCD的顶点A、C同时沿正方形的边开始移动,甲点依顺时针方向环行,乙点依逆时针方向环行,若乙的速度是甲的速度的4倍,则它们第2000次相遇在边()A、AB上B、BC上C、CD上D、DA上8、已知实数a满足,那么a﹣20062的值是()A、2005B、2006C、2007D、2008二、填空题(共8小题,每小题5分,满分40分)9、小明同学买了一包弹球,其中是绿色的,是黄色的,余下的是蓝色的.如果有12个蓝色的弹球,那么,他总共买了_________个弹球.10、已知点A(1,1)在平面直角坐标系中,在x轴上确定点P使△AOP为等腰三角形.则符合条件的点P共有_________个.11、不论m取任何实数,抛物线y=x2+2mx+m2+m﹣1的顶点都在一条直线上,则这条直线的函数解析式是_________.12、将红、白、黄三种小球,装入红、白、黄三个盒子中,每个盒子中装有相同颜色的小球.已知:(1)黄盒中的小球比黄球多;(2)红盒中的小球与白球不一样多;(3)白球比白盒中的球少.则红、白、黄三个盒子中装有小球的颜色依次是_________.13、在梯形ABCD中,AB∥CD,AC、BD相交于点O,若AC=5,BD=12,中位线长为,△AOB的面积为S1,△COD的面积为S2,则=_________.14、已知矩形A的边长分别为a和b,如果总有另一矩形B,使得矩形B与矩形A的周长之比与面积之比都等于k,则k的最小值为_________.15、已知x、y均为实数,且满足xy+x+y=17,x2y+xy2=66,则x4+x3y+x2y2+xy3+y4=_________.16、(2007•天水)如图,已知在⊙O中,直径MN=10,正方形ABCD的四个顶点分别在⊙O及半径OM、OP上,并且∠POM=45°,则AB的长为_________.三、解答题(共2小题,满分20分)17、甲、乙两班同时从学校A出发去距离学校75km的军营B军训,甲班学生步行速度为4km/h,乙班学生步行速度为5km/h,学校有一辆汽车,该车空车速度为40km/h,载人时的速度为20km/h,且这辆汽车一次恰好只能载一个班的学生,现在要求两个班的学生同时到达军营,问他们至少需要多少时间才能到达?18、如图,已知矩形ABCD,AD=2,DC=4,BN=2AM=2MN,P在CD上移动,AP与DM交于点E,PN交CM于点F,设四边形MEPF的面积为S,求S的最大值.答案与评分标准一、选择题(共8小题,每小题5分,满分40分)1、下列四个图形中,每个小正方形都标上了颜色.若要求一个正方体两个相对面上的颜色都一样,那么不可能是这一个正方体的展开图的是()A、B、C、D、考点:几何体的展开图。
NOIP普及组初赛历年试题及答案阅读题篇
NOIP普及组初赛历年试题及答案阅读题篇NOIP普及组初赛历年试题及答案阅读题篇阅读程序写结果(共4 题,每题8 分,共计32 分)阅读程序题是得分的关键,因为不是让你上机去运行程序,所以要一步步地读程序,记录相关变量值的变化情况。
因为程序的运行结果只有输出语句才有输出,所以只写出输出语句的结果。
有时要找出规律才能写出结果,特别是循环次数多的情况,另外要注意边界值,不能多算一步也不能少算一步。
解决这类问题的关键在于能够分析程序的结构以及程序段的功能。
常见的有列表法、画流程图法等。
完成这类题目的方法和步骤如下:1、从头到尾通读程序,大致把握程序的算法、找出这个题目的即这个程序想干什么。
抓住了它,不仅得出答案变得较容易,而且对自己的结果也会比较有信心。
2、通过给程序分段、理清程序的结构和层次,达到读懂程序的目的。
3、阅读程序中特别注意跟踪主要变量的值的变化,可以用列表的方法,了解变量变化和程序的运行结果,注意发现规律。
所谓列表法,就是将各变量名作为表头,在程序的执行过程中,将各变量值的变化记录在相应变量的下方。
4、按照程序中输出格式的要求,写出运行结果,并带着结果回到程序进行检查。
在阅读程序时,要特别注意过程、函数所完成的子任务以及和主程序之间的参数传递关系。
在阅读程序中,比较好的方法是首先阅读主程序,看其需要调用的过程或函数是什么,最后要求输出变量是什么;其次在阅读程序中,将较长的程序分成几个程序段(特别注意循环结构、判断结构),阅读理解各程序段的功能以及各程序之间的关联。
NOIP2011-1.#includeusing namespace std;int main(){int i,n,m,ans;cin>>n>>m;i=n;ans=0;while(i<=m){//从i=10~20,共循环计数11次ans+=i;//每次循环,ans累加一次i 值i++;}cout<<ans<<endl;< p="">//此时ans值应为(10+20)*11/2,即165 return 0; }输入: 10 20输出: 165NOIP2011-2.#include#includeusing namespace std;int main(){string map= "2223334445556667778889999"; //数组中元素位置是从0开始计数的string tel;int i;cin>>tel;for(i=0;i<tel.length();i++)< p="">if((tel[i]>='0') && (tel[i]<='9') )//如果输入的tel是0~9,直接输出tel值cout<<tel[i];< p="">else if( (tel[i]>='A') && (tel[i]<='Z'))cout<<map[tel[i]-'a'];< p="">//如果输入的tel是A~Z,则输出一个map数组中对应的元素//输出元素在map数组中位置为“输入字母与A的ASCII码的差值”//如果输入的是其他字符,比如“-”,则不符合循环条件,无输出cout<<endl;< p="">return 0;}输入: CCF-NOIP-2011输出: 22366472011NOIP2011-3.#include#includeusing namespace std;const int SIZE= 100;int main(){int n,i,sum,x,a[SIZE];cin>>n;memset(a,0,sizeof(a));for(i=1;i<=n;i++){cin>>x;a[x]++;}//循环结束时数组中的值为:a[1]=1,a[2]=2,a[3]=3,a[4]=2,a[5]=1,a[6]=2 i=0;sum=0;while(sum<(n/2+1)){//当sum值大于等于n/2+1,即sum>=6的时候,循环结束i++;sum+=a[i];}cout<<i<<endl;< p="">//输出循环结束时i 的值(不是sum的值)return 0;}输入:114 5 6 6 4 3 32 3 2 1输出: 3NOIP2011-4.#includeusing namespace std;int solve(int n,int m){int i,sum;if(m==1) return 1;//递归函数solve(i,m)中m=1时返回函数值为1sum=0;for(i=1;i<n;i++)< p="">//递归函数solve(i,m)中i=1时不循环,sum=0sum+= solve(i,m-1);return sum;//可递归求得sum=solve(1,3)+(2,3)+(3,3)+(4,3)+(5,3)+(6,3)int main(){int n,m;cin>>n>>m;cout<<solve(n,m)<<="" p="" 输出函数值,即sum值return="">}输入: 7 4输出: 20NOIP2012-1.#include using namespace std; int a, b, c, d, e, ans; int main() {cin>>a>>b>>c;d = a+b;e = b+c;ans = d+e;//ans=a+b+b+ccout<<ans<<endl;< p="">return 0;}输入: 1 2 5输出: 10NOIP2012-2.#includeusing namespace std;int n, i, ans;int main()cin>>n;ans = 0;for (i = 1; i <= n; i++)if (n % i == 0)ans++;//统计1~18中18的因数个数cout<<ans<<endl;< p=""> return 0;}输入: 18输出: 6NOIP2012-3.#includeusing namespace std;int n, i, j,a[100][100];int solve(int x,int y){int u, v;if(x == n)return a[x][y];//递归边界:当x=5时,solve(5,y)=a[5][y]u= solve(x + 1, y);v= solve(x + 1, y + 1);if(u > v)return a[x][y] + u;elsereturn a[x][y] + v;//用递归最终求得solve(1,1)=a[1][1]+solve(2,2)=2+12=14 } int main(){cin>>n;for(i = 1; i <= n; i++) for (j = 1; j <= i; j++) cin>>a[i][j];cout<<solve(1,1)<<="" p="" return="">}输入:52-1 42 -1 -2-1 6 4 03 2 -1 5 8输出: 14NOIP2012-4.#include#include using namespace std; int n, ans, i, j;string s;char get(int i){if(i < n)return s[i];elsereturn s[i-n];//i<8时,get(i)返回s[i];i>=8时,get(i)返回s[i-8],从第一个开始返回}int main(){cin>>s;n= s.size();ans= 0;for(i = 1; i <= n-1; i++){for (j = 0; j <= n-1; j++)if (get(i+j) < get(ans+j)){ans = i;break;}else if (get(i+j) > get(ans+j))break;}//此循环执行完毕,ans=7for(j = 0; j <= n-1; j++)cout<<get(ans+j);< p="">//1,ans+j<8,输出s[7+0];2,ans+j=8,输出s[8-8];3,ans+j=9,输出s[9-8]……cout<<endl;< p="">return 0;}输入: CBBADADA输出: ACBBADADNOIP2013-1.#includeusing namespace std;int main(){inta, b;cin>>a>>b;cout<<a<<"+"<<b<<"="<<a+b<<endl;< p="">return 0;}//输出:3+5=8输入: 3 5输出: 3+5=8NOIP2013-2.#includeusing namespace std;int main(){int a, b, u, i, num;cin>>a>>b>>u;num = 0;for (i = a; i <= b; i++)if ((i % u) == 0)num++;//1-100之间有多少数是15的倍数cout<<num<<endl;< p=""> return 0;}输入: 1 100 15输出: 6NOIP2013-3.#includeusing namespace std;int main(){const int SIZE = 100;int n, f, i, left, right, middle, a[SIZE]; cin>>n>>f;for (i = 1; i <= n; i++)cin>>a[i];left = 1;right = n;do {middle= (left + right) / 2;if(f <= a[middle])right = middle;elseleft = middle + 1;}while (left < right);// middle=6,17>a[6],则left=7// middle=9,17// middle=7,17=a[7],则right=7 // left=right,直接输出left cout<<left<<endl;< p="">return 0;}输入:12 172 4 6 9 11 15 1718 19 20 21 25 输出: 7NOIP2013-4.#includeusing namespace std;int main(){constint SIZE = 100;intheight[SIZE], num[SIZE], n, ans; cin>>n;for(int i = 0; i < n; i++) {cin>>height[i];num[i] = 1;for (int j = 0; j < i; j++) {if ((height[j] < height[i]) && (num[j] >= num[i]))num[i] = num[j]+1;}}//两两相比,得出num[0], num[1], num[2], num[3], num[4], num[5]ans= 0;for(int i = 0; i < n; i++) {if (num[i] > ans) ans = num[i];}//得出num中最大值,即在数组height中第几位数值最大cout<<ans<<endl;< p="">return 0;}输入:62 53 11 12 4输出: 4不懂算法?跟踪变量!列表模拟!遇到递归?画树形图!注意边界!找到规律了?还会流程图?恭喜你,32分到手了!NOIP2014-1.#includeusing namespace std;int main(){int a, b, c, d, ans;cin>> a >> b >> c;d = a - b; //将a-b=-1赋值给d a = d + c; //将d+c=3赋值给a ans = a * b; //ans=a*b=3*3=9 cout<<"Ans = "<< ans << endl;return 0;}输入:2 3 4输出: Ans=9NOIP2014-2.#includeusing namespace std;int fun(int n){if (n == 1)return 1; //边界fun(1)=1if (n == 2)return 2; //边界fun(2)=2 return fun(n - 2) - fun(n - 1); } //fun(n)=fun(n-2)-fun(n-1) int main(){int n;cin >> n;cout << fun(n) << endl;//fun(7)=fun(5)-fun(6)=-11 return 0;}输入: 7输出: -11NOIP2014-3.#include#includeusing namespace std;int main(){int i, len;getline(cin, st);len = st.size();for(i = 0; i < len; i++){if (st[i] >= 'a' && st[i] <= 'z')st[i] = st[i] - 'a' + 'A';} //如果字符串st中字母小写,则替换成大写cout<< st << endl; return 0;}输入: Hello, my name is Lostmonkey.输出: HELLO, MY NAME IS LOSTMONKEY.NOIP2014-4.#includeusing namespace std;const int SIZE =100;int main(){int p[SIZE];int n, tot, i, cn;cin>> n;for(i = 1; i <= n; i++)p[i] = 1; //p[1]-p[30]中所有元素赋值1 for(i = 2; i <= n; i++){ if (p[i] == 1)tot++; //计数cn = i * 2; //找出2-30中所有2i while (cn <= n) {p[cn] = 0;cn += i; //找出2-30中所有3i}}//对2-30中素数计数,并输出个数cout<< tot << endl; return 0;}输入: 30输出: 10NOIP2015-1.#includeusing namespace std;</ans<<endl;<></left<<endl;<></num<<endl;<></a<<"+"<<b<<"="<<a+b<<endl;<> </endl;<></get(ans+j);<></solve(1,1)<</ans<<endl;<></ans<<endl;<></solve(n,m)<</n;i++)<></i<<endl;<></endl;<></map[tel[i]-'a'];<></tel[i];<></tel.length();i++)<></ans<<endl;<>。
NOIP普及组初赛历年试题及答案求解题篇
NOIP普及组初赛历年试题及答案求解题篇问题求解:每次共2题,每空5分,共计10分。
每题全部答对得 5 分,没有部分分。
注:答案在文末在NOIP初赛问题求解中,经常会遇到排列组合问题。
这一类问题不仅内容抽象,解法灵活,而且解题过程极易出现“重复”和“遗漏”的错误,这些错误甚至不容易检查出来,所以解题时要注意不断积累经验,总结解题规律。
解答排列组合问题,首先必须认真审题,明确是属于排列问题还是组合问题,或者属于排列与组合的混合问题,其次要抓住问题的本质特征,灵活运用基本原理和公式进行分析解答。
同时还要注意讲究一些策略和技巧,比如采用分类、分步、捆绑等方法,也可以借助表格、方程等工具,使一些看似复杂的问题迎刃而解。
NOIP2011-1. 每份考卷都有一个8位二进制序列号。
当且仅当一个序列号含有偶数个1时,它才是有效的。
例如,0000000、01010011都是有效的序列号,而11111110不是。
那么,有效的序列号共有______个。
NOIP2011-2. 定义字符串的基本操作为: 删除一个字符、插入一个字符和将一个字符修改成另外一个字符这三种操作。
将字符串A变成字符串B的最少操作步数,称为字符串A到字符串B的编辑距离。
字符串“ ABCDEFG ”到字符串“BADECG ”的编辑距离为_______。
NOIP2012-1. 如果平面上任取n 个整点(横纵坐标都是整数) ,其中一定存在两个点,它们连线的中点也是整点,那么n至少是_____。
NOIP2012-2. 在NOI期间,主办单位为了欢迎来自全国各地的选手,举行了盛大的晚宴。
在第十八桌,有5名大陆选手和5名港澳选手共同进膳。
为了增进交流,他们决定相隔就坐,即每个大陆选手左右相邻的都是港澳选手、每个港澳选手左右相邻的都是大陆选手。
那么,这一桌共有_____种不同的就坐方案。
注意:如果在两个方案中,每个选手左边相邻的选手均相同,则视为同一个方案。
NOIP2013-1. 7 个同学围坐一圈,要选2 个不相邻的作为代表,有_____种不同的选法。
noip模拟试题
noip模拟试题(雅礼中学内部训练题)第一题:sqrt给出一个正整数n(1<n<=231-1),求当x,y都为正整数,方程sqrt(n)=sqrt(x)-sqrt(y)的解中,x的最大值是多少?输入文件(sqrt.in)一行,一个正整数n输出文件(sqrt.out)一行,一个满足条件的最大的x的解。
样例:input4output9第二题:work当前有n(n<=12)个工作,和8个工人。
现在每个工作需要占用一个工人的从[a,b]这个区间的时间(一个工人自然不可能在同一个时间做2个不同的工作),且一个工作不一定是所有工人都能够完成的。
现在给出每个工作的描述,问是否存在一种安排方案使得所有工作都能完成。
输入文件(work.in)输出文件有多组数据。
第一行一个数tot表示数据的组数,后面紧接tot组数据。
对于每一组数据的第一行有一个整数n,表示工作的数目。
后面n行每行描述一个工作。
对于一个工作,a,b,k,h1,h2……hk来描述,表示这个工作需要占用一个工人[a,b]的时间,并且能够完成这个工作的工人只有k个,标号分别是h1,h2……hk。
输出文件(work.out)对于每组输入数据,输出一行YES(如果可以安排一种方案使得工作完成)或者是NO (无法安排一种方案)样例:input221 1 1 12 2 1 121 2 1 12 2 1 1outputYESNO第三题:game小朋友都喜欢玩一种扑克牌游戏。
大家玩的是一种称为是10—20—30的用52张不考虑花色的游戏。
人头牌(K,Q,J)的值是10,A的值是1,任何其他牌的值是它们的面值(如2,3,4等)。
牌从牌堆的顶端发起,先发7张牌,从左至右形成七组,当给最右边一组发了一张牌后,下一张牌就应发最左边的一组。
每个一组发一张牌时,查看这组牌以下的组合的总合是否为10,20,或者30。
前两张和最后一张,第一张和最后二张或最后三张。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
模拟一
序列(sequence.exe)
问题描述
有一个非递减的整数序列S1,S2,S3,……,S n+1(S i<=S i+1)。
定义序列m1,m2,…,m n为S的“M序列”,其中m i=(S i+S i+1)/2。
例如,S=(1, 3, 3, 5),则m=(2, 3, 4)。
现在给你序列m,要你求有多少个S序列的“M序列”是序列m。
输入(sequence.in)
第一行一个整数n,
下接n行,每行一个整数m i
输出(sequence.out)
一个整数,表示有多少个S序列的“M序列”是序列m
样例
2,2,8,10;
1,3,7,11;
0,4,6,12;
-1,5,5,13。
数据范围
50%的数据n<=1000,m i<=20000
100%的数据2<=n<=100000,m i<=109.
连分数(faction.exe)
问题描述
Cindy 新学了无理数,老师教她了一种用有理数逼进无理数的方法:找到这个无理数相应的无限循环连分数。
例如,
我们可以通过分别取出连分数中的一层、两层、三层、……,而忽略其他部分,这样就可以得到一个有理数序列,我们称之为该连分数的渐近分数序列。
黄金分割数
2
1
5-的渐近分数是1/1,1/2,2/3,3/5,5/8,8/13……。
第一行为一个整数n,m,分别表示连分数的循环节长度和需要求的渐近分数的项数。
下接n行每行一个整数p i,描述连分数。
输出(faction.out)
空格分隔的两个整数a m、b m。
样例
数据范围
60%的数据,m<=105
100%的数据,n<=10,m <=109
词链(link.exe)
问题描述
给定一个仅包含小写字母的英文单词表,其中每个单词最多包含50个字母。
如果一张由一个词或多个词组成的表中,每个单词(除了最后一个)都是排在它后面的单词的前缀,则称此表为一个词链。
例如下面的单词组成了一个词链:i
int
integer
而下面的单词不组成词链:
integer
intern
请在给定的单词表中取出一些词,组成最长的词链。
最长的词链就是包含单词数最多的词链。
数据保证给定的单词表中,单词互不相同,并且单词按字典顺序排列。
输入(link.in)
第一行一个整数n,表示单词表中单词数
下接n行每行一个单词。
输出(link.out)
一个整数,表示最长词链长度。
样例
数据范围
50%的数据,n<=1000
100%的数据,n<=10000
Geodetic集合(geo.exe)
问题描述
图G是一个无向连通图,没有自环,并且两点之间至多只有一条边。
我们定义顶点v,u最短路径就是从v到u经过边最少的路径。
所有包含在v-u的最短
路径上的顶点被称为v-u的Geodetic顶点,这些顶点的集合记作
I(v, u)。
我们称集合I(v, u)为一个Geodetic集合。
例如下图中,I(2, 5)={2, 3, 4, 5},I(1, 5)={1, 3, 5},I(2, 4)={2, 4}。
给定一个图G和若干点对v,u,请你分别求出I(v, u)。
输入(geo.in)
第一行两个整数n,m,分别表示图G的顶点数和边数(顶点编号1-n)
下接m行,每行两个整数a,b表示顶点a和b之间有一条无向边。
第m+2行有一个整数k,表示给定的点对数。
下接k行,每行两个整数v,u。
输出(geo.out)
共k行,每行对应输入文件中每一个点对v,u,按顶点编号升序输出I(v, u)。
同一行的每个数之间用空格分隔。
样例
数据范围
100%的数据,n<=40
各题简要分析:
sequence 序列:
令S 序列的第一项为k ,那么后面几项就可以写成关于k 的多项式: S1=k
S2=2*m1-k
S3=2*m2-2*m1+k ……
然后根据S 序列的非递减性质,有S1<=S2<=S3<=…. 所以有
k<=2*m1-k
2*m1-k<=2*m2-2*m1+k ……
可以得到n 个关于k 的不等式,而且都是有规律的,可以在O(n)的时间内解出形如 a<=k<=b 的结果。
由于k 的值和S 序列是一一对应的,所以k 的取值的个数(b-a)就是满足要求的S 序列的个数。
faction 连分数:
本题是原创的,重点考察递推和用矩阵乘法优化递推。
由递推式:
1
1
1--+=m m k m
m
y x p y x k = (m-1) mod n + 1
可得
1-=m m y x ; m m k m x y p y +=-1*
直接按照这个递推式计算,复杂度O(m),预计得分60%。
上面的递推式对应的矩阵运算是:
所以有
⎥⎦
⎥
⎢⎣⎢=⎥⎦
⎤
⎢⎣⎡⎪⎪⎭⎫ ⎝⎛=∏n m n k k m m p c y x 11
10
**)1,0(),( 其中c 是(m mod n)部分的余式矩阵的乘积。
由于计算矩阵幂时间复杂度为O(logm),所以总的算法复杂度是O(n+logm),预计得分100%。
⎪⎪⎭
⎫ ⎝⎛=--k m m m m p y x y x 1
10
*),(),(11
Link词链:
本题用动态规划是容易的,设f(i)表示前i个单词可以构成包含第i个单词的最长词链。
F(i)=max{1,F(j)+1,当word[j]是word[i]的前缀}
Ans=max{F(i)}
这样算法的复杂度是O(n2),预计得分50%。
其实本题有很简单的贪心算法。
用一个栈存储当前的以第i个单词结尾的最长词链,第i+1个单词加在栈的结尾(通过出栈保持栈所存储的是一个词链)。
例如:
i 栈:i
int 栈:i int
integer 栈:i int interger
intern 栈:i int intern (interger出栈)
internet 栈:i int intern internet
可以证明,在第i个单词插入后,当前在栈中的词链就是包含第i个单词的最长词链。
这样由于每个单词进栈出栈分别一次,所以算法的复杂度是O(n)
贪心算法预计得分100%
Geodetic集合:
本题是由pku上一道试题改编的,考察图的有关知识。
算法就是从每个点出发进行BFS 扩展,按得到的BFS序列进行递推。
设min[i, j]为从i到j的最短路长度
设f[i, j]表示从i到j点的最短路覆盖的节点集合,
f[i, j] = f[i, k] U {j} k={1..n} and (min[i, k]+1=min[i, j])and (k,j)存在
对于输入的每个v,u对,输出f[v,u]中的所有点就可以了。