第四年全国青少年信息学(计算机)奥林匹克分区联赛初中复赛试题_第1页
第四年全国青少年信息学(计算机)奥林匹克分区联赛初中复赛试题_第2页
第四年全国青少年信息学(计算机)奥林匹克分区联赛初中复赛试题_第3页
全文预览已结束

下载本文档

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

文档简介

1、第四年全国青少年信息学(计算机) 奥林匹克分区联赛初中复赛试题初中组上机编程竞赛用时:3 小时1、将 1, 2, 9 共 9 个数分成三 ,分 成三个三位数,且使 三个三位数构成1: 2: 3 的比例, 求出所有 足条件的三个三位数。例如:三个三位数 192, 384,576 足以上条件。 30% 2、用高精度 算出 s=1! +2!+3! +n! n50其中“!”表示 乘,例如: 5! =5*4*3*2*1 。 入正整数n, 出 算 果s。 30%3、任何一个正整数都能 用 2 的 次方表示。例如: 40% 137=27+23+20b同 定方次用括号来表示,即a 可表示 a b。2 7 +2

2、3 +2 0 一步: 7=22+2+20 21 用 2 表示3=2+20因此最后137 可表示 :2 2 2 +2+2 0 +2 2+2 0 +2 0又如:10851315=2 +2 +2 +2+1因此 1315 最后可表示 :2 2 2+2 0 +2 +2 22+2 0 +2 2 2 +20 +2+2 0 入:正整数 n 20000 出:符合 定的n 的 0, 2 表示在表示中不能有空格第四届全国青少年信息学计算机奥林匹克分区联赛复赛参考答案初中组 号 入 出分 得分1.1无19238457630 分219438657273546819327654981( 共四 )2.1n=68735 分2

3、.2n=104,037,9135 分2.3n=221,177,652,997,443,428,94031310 分2.4n=4812,678,163,798,554,051,767,172,643,373,255,10 分731,925,167,694,226,950,680,420,940,3133.1732(2(2)+2)+2(2+2(0)+2(0)5 分3.21362(2(2)+2+2(0)+2(2+2(0)5 分3.32552(2(2)+2+2(0)+2(2(2)+2)+2(2(2)+2(0)+2(2(2)+2(10 分2+2(0)+2(2)+2+2(0)3.413842(2(2+2(

4、0)+2)+2(2(2+2(0)+2(2(2)+2)+2(2(2)+2(010 分)+2(2+2(0)3.5163852(2(2+2(0)+2(2)+2)+2(0)10 分总计 =30+30+40=100 分noi 分区联赛 -1998 年第四届初中组试题解析注意:解析和源程序均为 oibh站长刘汝佳所写,疏漏在所难免,但至少程序均通过了竞赛时使用的测试数据,因此依旧能够一看。1. 将 1,2.9 共 9 个数分成三组 , 分别组成三个三位数 , 且使这三个三位数构成1:2:3的比例 , 试求出所有满足条件的三个三位数 . 例如 : 三个三位数 192,384,576 满足以上条件 . 分析

5、那个题没有什么,穷举吧。设abc:def:ghi=1:2:3然而穷举也有多种方法。例如生成 123456789 的每个排列再求,显然要枚举 9!=362880 次,不爽。事实上只需枚举 abc 就能够了,乘以 2 和 3 就得到 def 和 ghi,最后判断有没有相等的。显然 c5,a=3, 枚举次数仅为 3*8*7=168 次。不用我再说了吧。为了方便,连 c5 也不要了。用字符串更方便。呵呵,多枚举了几次,然而程序短呀!程序见附件。2. 用高精度计算出 s=1!+2!+3!+.n!(n=50)其中“ ! ”表示阶乘 , 例如 :5!=5*4*3*2*1输入正整数 n,输出计算结果s. 分析

6、 大概有 n 个人往常早就写过那个程序了吧!特别简单的。用 f 储存当前计算的阶乘, s 储存当前的和,基本上一个数字一个元素。如: 12345678987654321储存成 s=(0,0,0.1,2,3,4,5,6,7,8,9,8,7,6,5,4,3,2,1)粗略计算能够明白 s50 可不能超过 1065, 哎呀,就算 1066 吧,免得出问题。可不能粗略计算?笨笨,谁叫你手算了,可不能编个程序用实数算个大概吗?下面我把算阶乘和加法分开做的,能够合在一起,只是麻烦一点。假如高精度数运算看不懂,请和我联系 程序见附件。3. 任何一个正整数都能够用 2 的幂次方表示 .例如 :137=27+23+20同时约定次方用括号来表示 , 即 ab 可表示为 a(b)由此可知 ,137 可表示为 :2(7)+2(3)+2(0) 进一步 :7=22+2+20(21 用 2 表示 ) 3=2+20因此最后 137 可表示为 :2(2(2)+2+2(0)+2(2+2(0)+2(0)又如 :1315=210+28+25+2+1因此 1315 最后可表示为 :2(2(2+2(0)+2)+2(2(2+2(0)+2(2(2)+2(0)+2+2(0)输入 : 正整数 (n=20000)输出 : 符合约定的 n 的 0,2 表示

温馨提示

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

评论

0/150

提交评论