> 文档中心 > 合肥市第 33 届青少年信息学(计算机)奥林匹克竞 赛小学组试题

合肥市第 33 届青少年信息学(计算机)奥林匹克竞 赛小学组试题

1 .木板面积( area 在一个阳光明媚的清晨,卡卡西在老师的带领下来到了“神奇木材加工厂”。 这个木材加工厂比较特别,工人们只制作圆形和长方形样式的木板,工厂的测量 工人每天需要计算每块成品木板的面积以便统计使用木材的数量。如果是一个圆 形木板,他们只需要测量半径的长度;如果是一个长方形木板,仅需要测量两条 边的长度。对工人师傅们而言,测量是一件很简单的事,但是计算木板面积却是 一件重复而又繁琐的事,看着测量工人们愁眉苦脸的样子,卡卡西急在心上,亲 爱的小朋友们,你们能帮助卡卡西,为测量工人们解决这个问题吗? 输入:输入数据有两行。第一行一个正整数 m ,表示测量的木板形状( 1 表示圆 形, 2 表示长方形);第二行有若干个整数,如果 m=1 ,第二行给出圆形 的半径 a (规定圆周率取 3.14 );如果 m=2 ,第二行给出长方形长和宽 a b (中间用空格隔开)。 输出:木板面积。(若是圆形,最后输出结果精确到小数点后 2 位;若是长方形 则输出结果为整数) 样例 1 输入:( area.in 1 3 输出:( area.out 28.26 青少年信息学奥林匹克竞赛 小学组试题 合肥家长帮社区 2017 合肥小升初交流群 413414968 样例 2 输入:( area.in 2 3 4 输出:( area.out 12 数据范围 : 0 ≤木板边长或半径≤ 100 2 、出现次数最多的数 (weight) 聪明的卡卡西帮助工人师傅们解决了难题,师傅们为了表示感谢,带领他们 到了附近的西瓜地,请他们吃西瓜,正好看到农民伯伯正在给每个西瓜称重,每 个西瓜的重量都记录在纸上,农民伯伯想知道这遍地的西瓜哪个重量的西瓜最 多。卡卡西眼前一亮,大声的说:“伯伯,让我来帮你完成吧!” 输入:输入数据有两行。第一行只有一个正整数 n ,表示西瓜的个数。第二行有 n 个整数 s1, s2, , sn ,表示每个西瓜的重量,相邻的数用空格分隔。 输出:这 n 个重量中出现次数最多的数。如果这样的数有多个,输出其中最小的 一个。 样例 1 输入:( weight.in 6 10 1 10 20 30 20 输出:( weight.out 10 数据范围 : 3 n 1000 1 si 10000 3 、乘船过河 (ship) 卡卡西和小朋友们要乘船过河了,港口有很多条船可以租到,并且之间没有 区别,每条船的出租费也是一样的。但是一条船最多只能乘坐两个人,且乘客的 总重量不能超过船的最大承载量。我们要找出可以安置所有小朋友的最少船数以 青少年信息学奥林匹克竞赛 小学组试题 合肥家长帮社区 2017 合肥小升初交流群 413414968 降低总的租船费用,卡卡西很快的写出了一个程序,读入船的最大承载量、旅客 数目和每位旅客的重量,计算出要安置所有同学必须的最少的船的数目。 输入:输入数据有两行。第一行两个整数 w n ,用空格分隔,分别表示一条船 的最大承载量和人数;第二行中每个数据是每个人的重量,也是整数,数 据间用空格分隔。 输出:最少船数。 样例 1 输入:( ship.in 85 6 5 84 85 80 84 83 输出:( ship.out 5 样例 2 输入:( ship.in 100 5 50 50 90 40 60 输出:( ship.out 3 数据范围 : 3 w 200 3 n 300 每位乘客的重量都不大于船的承载量。 4 能量最大化 (energy) 卡卡西手上有一串能量项链。在项链上有 N 颗能量珠。能量珠是一颗有头 标记与尾标记的珠子,这些标记对应着某个正整数。并且,对于相邻的两颗珠子, 前一颗珠子的尾标记一定等于后一颗珠子的头标记。因为只有这样,通过吸盘的 作用,这两颗珠子才能聚合成一颗珠子,同时释放出可以被吸盘吸收的能量。如 果前一颗能量珠的头标记为 m ,尾标记为 r ,后一颗能量珠的头标记为 r ,尾标 记为 n ,则聚合后释放的能量为 m*r*n ,新产生的珠子的头标记为 m ,尾标记为 n 。可以将相邻的两颗珠子聚合得到能量,直到项链上只剩下一颗珠子为止。显 然,不同的聚合顺序得到的总能量是不同的,请你设计一个聚合顺序,使一串项 链释放出的总能量最大。 例如:设 N=4 4 颗珠子的头标记与尾标记依次为 (2 3) (3 5) (5 10) (10 2) 我们用记号⊕表示两颗珠子的聚合操作, (j k) 表示第 j k 两颗珠子聚合后所释 放的能量。 青少年信息学奥林匹克竞赛 小学组试题 合肥家长帮社区 2017 合肥小升初交流群 413414968 则第 1 2 两颗珠子聚合后释放的能量为: (1 2)=2*3*5=30 ,新产生的珠子头 标记与尾标记( 2, 5 4 1 两颗珠子聚合后释放的能量为: (4 1)=10*2*3=60 。新产生的珠子头 标记与尾标记( 10, 3 这一串项链可以得到最优值的一个聚合顺序所释放的总能量为 ((4 1) 2) 3 =10*2*3+10*3*5+10*5*10=710 输入: 输入共两行,第一行是一个正整数 N ,表示项链上珠子的个数。第二行 N 个用空格隔开的正整数。第 i 个数为第 i 颗珠子的头标记( 1≤i≤N ),当 i<N 时,第 i 颗珠子的尾标记应该等于第 i+1 颗珠子的头标记。第 N 颗珠子的尾标记 应该等于第 1 颗珠子的头标记。 至于珠子的顺序,你可以这样确定:将项链放到桌面上,不要出现交叉,随 意指定第一颗珠子,然后按顺时针方向确定其他珠子的顺序。 输出:只有一个正整数,为聚合成一个珠子时所释放的最大总能量。 样例 1 输入:( energy.in 4 2 3 5 10 输出:( energy .out 710 数据范围 : 4 N 100 1 ≤每个珠子的头尾标记≤ 500

云服务器ECS新春特惠https://www.aliyun.com/daily-act/ecs/fy22-12-yure?userCode=ht9l7cno