网站大量收购闲置独家精品文档,联系QQ:2885784924

2014年第五届蓝桥杯大赛软件类C_C++A组全国总决赛真题汇编.doc

2014年第五届蓝桥杯大赛软件类C_C++A组全国总决赛真题汇编.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2014年第五届蓝桥杯大赛软件类C_CA组全国总决赛真题汇编

2014年决赛 C/C++本科A组 结果填空 (满分15分) 标题:海盗分金币 有5个海盗,相约进行一次帆船比赛。 比赛中天气发生突变,他们被冲散了。 恰巧,他们都先后经过途中的一个无名的荒岛,并且每个人都信心满满,觉得自己是第一个经过该岛的人。 第一个人在沙滩上发现了一堆金币。他把金币分成5等份。发现刚好少一个金币。他就从自己口袋拿出一个金币补充进去,然后把属于自己的那份拿走。 第二个到达的人也看到了金币,他也和第一个人一样,把所有金币5等分,发现刚好缺少一个金币,于是自己补进去一个,拿走了属于自己的那份。 第三,第四,第五人的情况一模一样。 等他们到了目的地,都说自己的情况,才恍然大悟,一起去荒岛找金币,然而再也没有找到荒岛。他们都惋惜地说:岛上还有一千多枚金币呢! 请你根据这些信息,推算荒岛上最初有多少金币? 这是一个整数,请通过浏览器提交答案,不要填写任何多余的内容(比如说明性的文字等) 结果填空 (满分50分) 标题:六角幻方 把 1 2 3 ... 19 共19个整数排列成六角形状,如下: * * * * * * * * * * * * * * * * * * * 要求每个直线上的数字之和必须相等。共有15条直线哦! 再给点线索吧!我们预先填好了2个数字,第一行的头两个数字是:15 13,参见图【p1.png】,黄色一行为所求。 请你填写出中间一行的5个数字。数字间用空格分开。 这是一行用空格分开的整数,请通过浏览器提交答案,不要填写任何多余的内容(比如说明性的文字等) 代码填空 (满分10分) 标题:日期差 历史上,不同的人类聚居地可能有不同的历法,因而记录下来的资料中日期的换算就很麻烦。幸好今天我们统一使用公元纪年法。当然,这种历法对求两个日期差多少天也不是十分简便,但毕竟是可以忍受的。 下面的程序计算了两个日期的差值,两个日期都使用公元纪年法。 请分析程序逻辑,并推断划线部分缺失的代码。 int to_day(int y, int m, int d) { int mon[] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; int day = 0; int i; for(i=1; iy; i++){ day += (i%4==0 i%100!=0 || i%400==0)? 366 : 365; } if(y%4==0 y%100!=0 || y%400==0) mon[2]++; for(i=1; im; i++){ _____________________; //填空位置 } return day + d; } int diff(int y1, int m1, int d1, int y2, int m2, int d2) { int a = to_day(y1, m1, d1); int b = to_day(y2, m2, d2); return b-a; } int main() { int n = diff(1864,12,31,1865,1,1); printf(%d\n, n); return 0; } 注意:通过浏览器提交答案。只填写缺少的内容,不要填写任何多余的内容(例如:说明性文字或已有符号)。 程序设计(满分35分) 标题:排列序数 如果用a b c d这4个字母组成一个串,有4!=24种,如果把它们排个序,每个串都对应一个序号: abcd 0 abdc 1 acbd 2 acdb 3 adbc 4 adcb 5 bacd 6 badc 7 bcad 8 bcda 9 bdac 10 bdca 11 cabd 12 cadb 13 cbad 14 cbda 15 cdab 16 cdba 17 ... 现在有不多于10个两两不同的小写字母,给出它们组成的串,你能求出该串在所有排列中的序号吗? 【输入格式】 一行,一个串。 【输出格式】 一行,一个整数,表示该串在其字母所有排列生成的串中的序号。注意:最小的序号是0。 例如: 输入: bdca 程序应该输出: 11 再例如: 输入: cedab 程序应该输出: 70 资源约定: 峰值内存消耗

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档