第1~3届蓝桥杯决赛试题及答案
蓝桥杯试题标准答案(练习)
1、亲密数:假设有a、b两个数,若 a 的所有因子之和等于b,b 的所有因子之和等于a ,并且 a 不等于b ,则称 a 和 b 是一对亲密数。
如284 和 220 就是一对亲密数。
#include<stdio.h>int main(){int a,b,i,n;for(a=1;a<=10000;a++){for(b=0,i=1;i<=a/2;i++)if(a%i==0)1b+=i;for(n=0,i=1;i<=b/2;i++)if(b%i==0)n+=i;1if(n==a&&a!=b&&a<b)printf("%d-%d\n",a,b);}return 0;}2、世纪末的星期:曾有邪教称 1999 年 12 月 31 日是世界末日。
当然该谣言已经不攻自破。
还有人称今后的某个世纪末的12 月 31 日如果是星期一则会....有趣的是任何一个世纪末的年份的12 月 31 日都不可能是星期一!!于是“谣言制造商”又修改为星期日 ......1999 年的 12 月 31 日是星期五,请问,未来哪一个离我们最近的一个世纪末年即xx99 年的12 月 31 日正好是星期天,即星期日请回答该年份,只写这个4 位整数,不要写 12 月 31 等多余信息#include<stdio.h>2int main(){long days = 5; /*1999 年的最后一天为周5,把下一年加上 5天对 7 取余为 0 的,则是周日*/int i = 2000;for(;;) /*无循环终止条件,可以利用break 语句终止循环*/{if(i%4==0&&i%100!=0||i%400==0){days = days%7+366;else{days = days%7+365;3}if(days%7==0&&i%100==99) {printf("%d",i);break;}i++;}return 0;}3、马虎的算式:小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。
蓝桥杯小学试题及答案
蓝桥杯小学试题及答案一、选择题(每题2分,共10分)1. 下列哪个选项是蓝桥杯的官方标志?A. 蓝色桥梁B. 蓝桥杯C. 蓝桥牌D. 蓝桥奖2. 蓝桥杯小学组的参赛年龄限制是多少岁?A. 6-12岁B. 8-14岁C. 10-16岁D. 12-18岁3. 蓝桥杯小学组的比赛项目包括哪些?A. 编程B. 数学C. 英语D. 所有以上选项4. 蓝桥杯的初赛通常在什么时间举行?A. 春季B. 夏季C. 秋季D. 冬季5. 蓝桥杯的决赛通常在哪个城市举行?A. 北京B. 上海C. 广州D. 深圳二、填空题(每题2分,共10分)1. 蓝桥杯小学组的编程比赛主要使用______语言。
2. 蓝桥杯小学组的数学比赛主要考察学生的______能力和______能力。
3. 蓝桥杯小学组的英语比赛包括______、______和______三个部分。
4. 蓝桥杯的初赛成绩优异者将获得晋级______的资格。
5. 蓝桥杯的决赛成绩优异者将有机会获得______的荣誉。
三、简答题(每题5分,共20分)1. 请简述蓝桥杯小学组编程比赛的目的和意义。
2. 蓝桥杯小学组数学比赛的题型有哪些?3. 蓝桥杯小学组英语比赛的评分标准是什么?4. 参加蓝桥杯小学组比赛对学生有哪些好处?四、编程题(每题10分,共20分)1. 编写一个程序,计算并输出1到100之间所有偶数的和。
2. 编写一个程序,判断一个给定的年份是否为闰年,并输出结果。
五、数学应用题(每题10分,共20分)1. 小明有10个苹果,他分给小华3个,然后又分给小李4个,最后自己还剩下多少个苹果?2. 一个长方形的长是10厘米,宽是5厘米,求这个长方形的面积和周长。
六、英语阅读理解题(每题5分,共20分)阅读以下短文,并回答后面的问题。
(短文内容略)1. 短文中提到的主要人物是谁?2. 主要人物做了什么?3. 短文中描述了哪些地点?4. 短文中的主要事件是什么?七、英语写作题(10分)请根据以下提示,写一篇不少于50字的英语短文。
蓝桥杯决赛本科试题
本科决赛1、数量周期【结果填空】(满分9分)复杂现象背后的推动力,可能是极其简单的原理。
科学的目标之一就是发现纷繁复杂的自然现象背后的简单法则。
爱因斯坦的相对论是这方面的典范例证。
很早的时候,生物学家观察某区域某种昆虫的数量(称为虫口数)之逐年变化规律,就十分迷惑:有的时候是逐渐增多达到一个平衡值。
有的时候在两个数字间周期跳动。
有的时候则进入一片混乱,类似随机数字一样变化(称为混沌现象)。
慢慢地,人们从数学中更清晰地观察到了这一现象,并因此开创了:符号动力学、非线性动力学等研究领域。
一个著名的虫口数目简化模型如下:x' = x * (1 - x) * r这里,x x' r 都是浮点数。
其中,x 表示当年的虫口数,x' 表示下一年的虫口数。
它们的取值范围在0 与1 之间,实际上表示的是:虫口的总数占环境所能支持的最大数量的比率。
r 是常数(环境参数),r的取值范围在[0,4]。
令人惊讶的是:这个简单的迭代公式有着不同寻常的神秘性质!一般来说,多次迭代后,虫口数的稳定模式与x的初始值无关,而与r 有关!例如:无论x初始值是多少,当r = 2.5 的时候,x 多次迭代后会趋向于0.6。
而当r = 3.2 的时候,x 的值会趋向于在0.799 与0.513 之间周期性摆动。
那么,r = 3.62 的时候,你观察到有什么周期现象发生吗?不需要提交源代码,只要写出你的结论即可!答案写在:“解答.txt”中,不要写在这里。
2、提取子串【代码填空】(满分12分)串“abcba”以字母“c”为中心左右对称;串“abba”是另一种模式的左右对称。
这两种情况我们都称这个串是镜像串。
特别地,只含有1个字母的串,可以看成是第一种模式的镜像串。
一个串可以含有许多镜像子串。
我们的目标是求一个串的最大镜像子串(最长的镜像子串),如果有多个最大镜像子串,对称中心靠左的优先选中。
例如:“abcdeefghhgfeiieje444k444lmn”的最大镜像子串是:“efghhgfe”下面的静态方法实现了该功能,请仔细阅读并分析代码,填写空白处的代码,使得程序的逻辑合理,结果正确。
第一届蓝桥杯大赛试题
break;
case 1:
sprintf(answer, “%s %c ((%s %c %s) %c %s)”,
p[0], GetOper(oper[0]), p[1], GetOper(oper[1]), p[2], GetOper(oper[2]), p[3]);
break;
case 2:
sprintf(answer, “(%s %c %s) %c (%s %c %s)”,
p[0], GetOper(oper[0]), p[1], GetOper(oper[1]), p[2], GetOper(oper[2]), p[3]);
break;
case 3:
sprintf(answer, “((%s %c %s) %c %s) %c %s”,
}
}
int GetCardValue(int c)
{
if(c==’T') return 10;
if(c>=’0′ && c<=’9′) return c – ’0′;
return 1;
}
char GetOper(int n)
{
switch(n)
{
case 0:
return ‘+’;
case 1:
return ‘-’;
break;
}
}
bool TestResolve(char* question, int* oper, char* answer)
{
// 等待考生完成
历届蓝桥杯试题及答案
历届蓝桥杯试题及答案蓝桥杯是中国最有影响力的计算机竞赛之一,每年都会吸引众多计算机科学爱好者的参与。
本文将回顾历届蓝桥杯的试题,并给出相应的答案。
通过了解历届试题,可以帮助读者更好地准备参加蓝桥杯竞赛。
(此处省略介绍部分)第一届蓝桥杯试题及答案:试题一:(试题内容)(解答步骤)试题二:(试题内容)(解答步骤)试题三:(试题内容)(解答步骤)......第二届蓝桥杯试题及答案:试题一:(试题内容)(解答步骤)试题二:(试题内容)(解答步骤)试题三:(试题内容)(解答步骤)......随着届数的增加,蓝桥杯的试题逐渐增加了难度和复杂程度。
参赛者需要有扎实的计算机基础知识和编程技能才能应对这些挑战。
以下是蓝桥杯历届试题的一些特点总结:1. 试题内容涵盖广泛:蓝桥杯试题从计算机基础知识到算法设计,从编程练习到系统设计,几乎涵盖了计算机科学的各个领域。
2. 试题形式多样:蓝桥杯试题不仅有传统的选择题和编程题,还有设计题、开放题等形式。
这样的设计旨在考察参赛者的创新能力和综合运用能力。
3. 解答步骤详细:对于编程题和算法设计题,蓝桥杯试题答案中往往会给出详细的解答步骤,包括思路分析、代码实现等。
这对于参赛者来说是很好的学习资料。
通过研究历届蓝桥杯试题和答案,我们可以总结出以下参加蓝桥杯竞赛的一些建议:1. 扎实的基础知识:参赛者应该有扎实的计算机基础知识,包括数据结构、算法、编程语言等方面。
只有基础知识扎实,才能更好地应对复杂的试题。
2. 练习编程技巧:编程技巧是参赛者必备的能力,需要不断进行练习和实践。
可以通过刷题、参加编程比赛等方式来提高编程技巧。
3. 团队合作能力:蓝桥杯竞赛有团队赛和个人赛两种形式,参赛者可以选择适合自己的方式。
无论是个人赛还是团队赛,团队合作能力都是必不可少的。
在团队中合理分工、有效沟通,可以提高比赛的效果。
4. 多方面准备:蓝桥杯试题范围广泛,参赛者应该在各个方面进行准备,包括理论知识、实践能力、应试技巧等。
蓝桥杯c++本科决赛真题
蓝桥杯决赛共五道题一:【结果填空】(满分5分)1949年的国庆节(10月1日)是星期六。
今年(2012)的国庆节是星期一。
那么,从建国到现在,有几次国庆节正好是星期日呢?只要答案,不限手段!可以用windows日历,windows计算器,Excel公式,。
当然,也可以编程!二:【代码填空】(满分16分)某工业监控设备不断发回采样数据。
每个数据是一个整数(0到1000之间)。
各个数据间用空白字符(空格,TAB或回车换行)分隔。
这些数据以文本形式被存储在文件中。
因为大多数时候,相邻的采样间隔数据是相同的,可以利用这个特征做数据的压缩存储。
其方法是:对n(n>1)个连续相同的数字只记录n和该数字本身;对m(m>0)个连续不重复的数字,则记录m*-1 和这些数字本身(之所以用负数,是为了与第一种情况区分,便于解压缩)。
例如:采样数字:12 34 34 25 25 25 25 11 15 17 28 14 22 22 22 13则根据上述规则变化后:-1 12 2 34 4 25 -5 11 15 17 28 14 3 22 -1 13下面的程序实现了这个功能。
请仔细阅读分析代码,填写空白的部分。
void pop(int s, int* buf, int c, FILE* fp){int i;if(s){fprintf(fp, "%d %d ", c, *buf);}else{fprintf(fp, "%d ", -c);for(i=0; i<c; i++){fprintf(fp, "%d ", buf[i]);}}}void dopack(FILE* r, FILE* w){int buf[BUF_N];int pos = 0; // 下一个数字在buf中将要存放的位置int c = 0; // 当前段已读入的整数个数int pst;int cst;while(fscanf(r, "%d", buf+pos)==1){if(c==0){c = pos = 1;continue;}if(c==1){pst = buf[0] == buf[1];pos = pos + 1 - pst;c = 2;continue;}cst = buf[pos-1] == buf[pos];if(pst && !cst){pop(pst, buf, c, w);buf[0] = buf[1];c = pos = 1;pst = cst;}else if(!pst && cst || pos == BUF_N-1){pop(pst, buf, c-1, w);buf[0] = buf[pos-1];c = 2;if(!cst){buf[1] = buf[pos];pos = 2;}else{pos = 1;pst = ______________; // 填空1}}else{c++;if(!pst) pos++;}} // whileif(c>0) _____________________________; // 填空2 }void main(){FILE* rfp;FILE* wfp;if((rfp=fopen(RFILE, "r")) == NULL){printf("can not open %s!\n", RFILE);exit(1);}if((wfp=fopen(WFILE, "w")) == NULL){printf("can not open %s!\n", WFILE);fclose(rfp);exit(2);}dopack(rfp, wfp);fclose(wfp);fclose(rfp);}【注意】只填写缺少的部分,不要抄写已有的代码。
蓝桥杯图形化测试题及答案
蓝桥杯图形化测试题及答案一、选择题1. 下列哪个选项是图形化编程中常用的编程环境?A. ScratchB. PythonC. JavaD. C++答案:A2. 在图形化编程中,哪个模块通常用来控制角色移动?A. 循环模块B. 事件模块C. 运动模块D. 声音模块答案:C3. 在Scratch中,哪个选项是创建新变量的正确方法?A. 点击“事件”类别B. 点击“控制”类别C. 点击“变量”类别D. 点击“外观”类别答案:C4. 在图形化编程中,如何实现角色的循环移动?A. 使用“重复”模块B. 使用“等待”模块C. 使用“广播”模块D. 使用“条件”模块答案:A5. 在Scratch中,哪个模块用来控制角色的音量?A. 音量设置B. 音量增加C. 音量减少D. 音量调整答案:A二、填空题1. 在图形化编程中,____模块可以用来控制角色的显示和隐藏。
答案:外观2. 在Scratch中,____模块可以用来控制角色的旋转。
答案:运动3. 图形化编程中,____模块可以用来实现角色的跳跃效果。
答案:事件4. 在Scratch中,____模块可以用来控制角色的说话效果。
答案:外观5. 图形化编程中,____模块可以用来实现角色的跟随效果。
答案:运动三、简答题1. 请描述在Scratch中如何实现角色的左右移动。
答案:在Scratch中实现角色的左右移动,可以通过“运动”模块中的“移动10步”命令来实现。
首先,选择角色,然后拖动“移动10步”命令到脚本区,接着可以通过“控制”模块中的“重复”命令来循环执行移动命令,以此来实现角色的连续移动。
2. 在图形化编程中,如何实现角色的循环播放声音?答案:在图形化编程中,实现角色的循环播放声音可以通过“声音”模块中的“播放声音”命令来实现。
首先,选择角色,然后拖动“播放声音”命令到脚本区,并选择相应的声音文件。
接着,使用“控制”模块中的“重复”命令,将“播放声音”命令包裹在内,设置重复次数为“永远”,从而实现声音的循环播放。
第三届蓝桥杯(高职java预赛题及参考答案)
1、造成高房价的原因有许多,比如土地出让价格。
既然地价高,土地的面积必须仔细计算。
遗憾的是,有些地块的形状不规则,比如是如图【1.jpg】中所示的五边形。
一般需要把它划分为多个三角形来计算。
已知三边求三角形的面积需要用海伦定理,参见【2.jpg】各条边长数据如下:AB = 52.1BC = 57.2CD = 43.5DE = 51.9EA = 33.4EB = 68.2EC = 71.9根据这些数据求五边形地块的面积。
四舍五入到小数后两位。
只写结果,不要源代码!1.jpg2.jpgpublic class Onea {public static void main(String args[]){double s_ABE = (52.1 + 68.2 + 33.4) / 2;double s_BEC = (68.2 + 57.2 + 71.9) / 2;double s_EDC = (71.9 + 51.9 + 43.5) / 2;// sqrt()是Math中的静态方法可以用类名直接调用double A_ABE = Math.sqrt(s_ABE * (s_ABE - 52.1) * (s_ABE - 33.4) * (s_ABE - 68.2));double A_BEC = Math.sqrt(s_BEC * (s_BEC - 68.2) * (s_BEC - 57.2) * (s_BEC - 71.9));double A_EDC = Math.sqrt(s_EDC * (s_EDC - 71.9) * (s_EDC - 43.5) * (s_EDC - 51.9));System.out.println(A_ABE + A_BEC + A_EDC);}}// 输出的结果是3789.8640994485186public class One {public static void main(String[] args) {double AB = 52.1, BC = 57.2, CD = 43.5, DE = 51.9, EA = 33.4, EB = 68.2, EC = 71.9;System.out.println(mainji(AB,EB,EA) + mainji(EB,BC,EC) +mainji(EC,CD,DE));}static double mainji(double a,double b,double c){double s = (a + b + c)/2;return Math.sqrt(s * (s - a) * (s - b) * (s - c));}}输出结果:3789.86409944851862、今年的植树节(2012年3月12日),小明和他的叔叔还有小伙伴们一起去植树。
蓝桥杯小学测试题及答案
蓝桥杯小学测试题及答案一、选择题(每题2分,共20分)1. 以下哪个选项是正确的?A. 蓝桥是红色的B. 蓝桥是蓝色的C. 蓝桥是绿色的D. 蓝桥是黄色的答案:B2. 蓝桥杯小学测试题的总分是多少?A. 50分B. 60分C. 70分D. 80分答案:B3. 以下哪个选项是蓝桥杯小学测试题的题型?A. 选择题B. 填空题C. 判断题D. 所有以上答案:D4. 蓝桥杯小学测试题的选择题部分共有多少题?A. 10题B. 15题C. 20题D. 25题答案:A5. 蓝桥杯小学测试题的填空题部分共有多少题?A. 5题B. 10题C. 15题D. 20题答案:A二、填空题(每题2分,共10分)1. 蓝桥杯小学测试题的选择题部分占总分的______%。
答案:33.332. 蓝桥杯小学测试题的填空题部分占总分的______%。
答案:16.673. 如果一个学生在选择题部分得了满分,那么他在填空题部分至少需要得______分才能达到总分的80%。
答案:64. 蓝桥杯小学测试题的总分是______分。
答案:605. 如果一个学生在选择题部分得了10分,在填空题部分得了5分,那么他的总分是______分。
答案:15三、判断题(每题1分,共10分)1. 蓝桥杯小学测试题的总分是100分。
()答案:×2. 选择题和填空题是蓝桥杯小学测试题的两种题型。
()答案:√3. 蓝桥杯小学测试题的选择题部分有20题。
()答案:×4. 蓝桥杯小学测试题的填空题部分有10题。
()答案:×5. 蓝桥杯小学测试题的总分是50分。
()答案:×四、简答题(每题5分,共20分)1. 请简述蓝桥杯小学测试题的目的。
答案:蓝桥杯小学测试题的目的是检验学生的基础知识掌握情况,并通过测试来激发学生的学习兴趣和提高学习效果。
2. 蓝桥杯小学测试题的评分标准是什么?答案:蓝桥杯小学测试题的评分标准是每题的分值乘以学生答对的题目数量,最后将所有题目的分数相加得出总分。
第三届“蓝桥杯”决赛真题
1. 结果填空。
求第 100002 个素数。
(2是第一个素数)2. 填空。
(补充下列代码,实现排序)#include "stdio.h"#include "string.h"void main(){int i,j,m,t,n;char a[]={10,3,23,9,12,2,15,6,22,17};for(i=0;i<10;i++)printf("%3d",a[i]);printf("\n");for(i=0;i<9;i++){m=____;for(j=i+1;j<10;j++)if(a[m]>a[j]) _____;t=a[i];a[i]=a[m];a[m]=t;}for(i=0;i<10;i++)printf("%3d",a[i]);printf("\n");}3. Excel 表格中,第12 行 4 列可表示为 R12C4,第5 行 255 列可表示为 R5C255,还有另一种表示方式为 D12,IU5,输入 RC 格式转化为另一个种格式。
例:INPUT:2R12C4R2C255OUTPUT:D12IU5编程实现两种表示方法间的转化。
4. 有 3 枚骰子,玩家可押 1-6 中的一个数1) 如果有 1 个数相同,则庄家 1:1 赔偿2) 如果有 2 个数相同,则庄家 1:2 赔偿3) 如果有 3 个数相同,则庄家 1:6 赔偿4) 如果押的点数与其中一个骰子的乘积,等于另外两个数的乘积,则拿回自己的本钱,即庄家不赚不赔5) 如果上述 4 种情况均满足,则选择最佳的方式实践证明,不管怎么样,庄家都是获利的,请模拟 50 万次,假设每次押注都是 1 元,求庄家的盈利率(赚的钱/总押注金额)5. ABCDE 五人安排工作日程,每人每星期工作 5 天休息 2 天1) 必须有 3 天所有人都要上班2) 每个人连续上班不超过 3 天,周日到周一是连续工作3) A、C 星期三必须上班4) B、D、E 星期天都不上班5) A、C 一星期至少见 4 次6) A、B、C、D 中每天必须至少有 2 人上班,输出所有从星期一到星期天可能的情况,每种情况间用空行隔开,0 代表不上班,1 代表上班。
第1~3届蓝桥杯决赛试题及答案
2011年暑假蓝桥杯决赛题附答案1.四方定理数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示。
我们可以通过计算机验证其在有限范围的正确性。
对于大数,简单的循环嵌套是不适宜的。
下面的代码给出了一种分解方案。
请仔细阅读,填写空缺的代码(下划线部分)。
注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
直接写在题面中不能得分。
int f(int n, int a[], int idx){if(______________) return 1; // 填空1if(idx==4) return 0;for(int i=(int)sqrt(n); i>=1; i--){a[idx] = i;if(_______________________)return 1; // 填空2}return 0;}int main(int argc, char* argv[]){for(;;){int number;printf("输入整数(1~10亿):");scanf("%d",&number);int a[] = {0,0,0,0};int r = f(number, a, 0);printf("%d: %d %d %d %d\n", r, a[0], a[1], a[2], a[3]);}return 0;}2.加密在对文本进行简单加密的时候,可以选择用一个n位的二进制数,对原文进行异或运算。
解密的方法就是再执行一次同样的操作。
加密过程中n位二进制数会循环使用。
并且其长度也可能不是8的整数倍。
下面的代码演示了如何实现该功能。
请仔细阅读,填写空缺的代码(下划线部分)。
注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
直接写在题面中不能得分。
第三届蓝桥杯——蓝桥杯c语言本科组(带答案)
于是,两人沉默了好久,还是没有算出合适的结果来。
请你利用计算机的优势,找到破解的答案。
把ABCDE所代表的数字写出来。
答案写在“解答.txt”中,不要写在这里!
3.
有一群海盗(不多于20人),在船上比拼酒量。过程如下:打开一瓶酒,所有在场的人平分喝下,有几个人倒下了。再打开一瓶酒平分,又有倒下的,再次重复......直到开了第4瓶酒,坐着的已经所剩无几,海盗船长也在其中。当第4瓶酒平分喝下后,大家都倒下了。
#include <cstdio>
int main()
{
long int X=10, Y=90;
for(int k=1; k<=120; k++)//半分钟一个单位
{
if(k%2==1) Y -= X;//因为X出生半分钟后就要吃Y,尔后没1分钟要吃Y,所以永远都是奇数个半分钟的时候吃Y,又因为此时X不会增长(题目为了减小讨论的复杂度),所以直接减X数量即可。
14 10 6 2
15 11 7 3
16 12 8 4
下面的代码实现的功能就是要把一个方阵顺时针旋转。
void rotate(int* x, int rank)
{
int* y = (int*)malloc(___________________); //填空
for(int i=0; i<rank * rank; i++)
{
GoNext(x,r,c);
return;
}
int rr = GetRowStoneNum(x,r);
int cc = GetColStoneNum(x,c);
if(cc>=3) //本列已满
第1-7届蓝桥杯决赛试题及答案
第1-7届蓝桥杯决赛试题及答案2011年第1届蓝桥杯决赛试题及答案1.四方定理数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示。
我们可以通过计算机验证其在有限范围的正确性。
对于大数,简单的循环嵌套是不适宜的。
下面的代码给出了一种分解方案。
请仔细阅读,填写空缺的代码(下划线部分)。
注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
直接写在题面中不能得分。
int f(int n, int a[], int idx){if(______________) return 1; // 填空1if(idx==4) return 0;for(int i=(int)sqrt(n); i>=1; i--){a[idx] = i;if(_______________________)return 1; // 填空2}return 0;}int main(int argc, char* argv[]){for(;;){int number;printf("输入整数(1~10亿):");scanf("%d",&number);int a[] = {0,0,0,0};int r = f(number, a, 0);printf("%d: %d %d %d %d\n", r, a[0], a[1], a[2], a[3]);}return 0;}2.加密在对文本进行简单加密的时候,可以选择用一个n位的二进制数,对原文进行异或运算。
解密的方法就是再执行一次同样的操作。
加密过程中n位二进制数会循环使用。
并且其长度也可能不是8的整数倍。
下面的代码演示了如何实现该功能。
请仔细阅读,填写空缺的代码(下划线部分)。
注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
蓝桥杯试题和答案
/*很久以前,T王国空前繁荣。
为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市。
为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者通过其他大城市间接到达。
同时,如果不重复经过大城市,从首都到达每个大城市的方案都是唯一的。
J是T国重要大臣,他巡查于各大城市之间,体察民情。
所以,从一个城市马不停蹄地到另一个城市成了J最常做的事情。
他有一个钱袋,用于存放往来城市间的路费。
聪明的J发现,如果不在某个城市停下来修整,在连续行进过程中,他所花的路费与他已走过的距离有关,在走第x千米到第x+1千米这一千米中(x是整数),他花费的路费是x+10这么多。
也就是说走1千米花费11,走2千米要花费23。
J大臣想知道:他从某一个城市出发,中间不休息,到达另一个城市,所有可能花费的路费中最多是多少呢?输入格式:输入的第一行包含一个整数n,表示包括首都在内的T王国的城市数城市从1开始依次编号,1号城市为首都。
接下来n-1行,描述T国的高速路(T国的高速路一定是n-1条)每行三个整数Pi, Qi, Di,表示城市Pi和城市Qi之间有一条高速路,长度为Di 千米。
输出格式:输出一个整数,表示大臣J最多花费的路费是多少。
样例输入:51 2 21 3 12 4 52 5 4样例输出:135样例说明:大臣J从城市4到城市5要花费135的路费。
*/#include<stdio.h>#include<string.h>int a[1000][1010];int main(){int i,j,k,n,x,y,z,max,sum;scanf("%d",&n);for(i=0;i<=n;i++)for(j=0;j<=n;j++)a[i][j]=999999;for(i=1;i<n;i++){scanf("%d%d%d",&x,&y,&z);a[x][y]=z;a[y][x]=z;}max=sum=0;for(k=1;k<=n;k++)for(i=1;i<=n;i++)for(j=1;j<=n;j++)if(i!=j){a[i][j]=a[i][k]+a[k][j]<a[i][j]?a[i][k]+a[k][j]:a[i][j];}for(i=0;i<=n;i++)for(j=0;j<=n;j++)if(a[i][j]<999999)max=a[i][j]>max?a[i][j]:max;for(i=1;i<=max;i++)sum+=(i+10);printf("%d\n",sum);return0;}。
广西蓝桥杯试题及答案
广西蓝桥杯试题及答案一、单项选择题(每题3分,共30分)1. 广西蓝桥杯是以下哪个领域的竞赛?A. 数学B. 物理C. 信息技术D. 化学答案:C2. 广西蓝桥杯的举办周期是多久?A. 每年B. 每两年C. 每三年D. 每四年答案:A3. 参加广西蓝桥杯的选手需要满足什么条件?A. 必须是广西户籍B. 必须是在校学生C. 必须有指导老师D. 必须有参赛经验答案:B4. 广西蓝桥杯的竞赛内容主要包括哪些?A. 编程B. 数据分析C. 网络安全D. 所有以上选项答案:D5. 广西蓝桥杯的奖项设置包括哪些?A. 一等奖B. 二等奖C. 三等奖D. 所有以上选项答案:D6. 广西蓝桥杯的竞赛形式是什么?A. 笔试B. 实操C. 笔试和实操D. 演讲答案:C7. 广西蓝桥杯的参赛者年龄限制是多少?A. 18岁以下B. 22岁以下C. 30岁以下D. 没有限制答案:B8. 广西蓝桥杯的竞赛结果会在多久后公布?A. 竞赛结束后一周B. 竞赛结束后一个月C. 竞赛结束后三个月D. 竞赛结束后半年答案:A9. 广西蓝桥杯的参赛者需要准备哪些材料?A. 身份证复印件B. 学生证复印件C. 报名表D. 所有以上选项答案:D10. 广西蓝桥杯的竞赛地点通常在哪里?A. 广西大学B. 广西师范大学C. 广西科技大学D. 随机选择的地点答案:D二、多项选择题(每题4分,共20分)11. 广西蓝桥杯的竞赛目的包括以下哪些?A. 提高学生的编程能力B. 促进学生的创新思维C. 选拔优秀人才D. 增加学生的就业机会答案:ABCD12. 广西蓝桥杯的竞赛流程包括以下哪些步骤?A. 报名B. 初赛C. 复赛D. 决赛答案:ABCD13. 广西蓝桥杯的竞赛规则包括以下哪些内容?A. 禁止携带电子设备B. 禁止抄袭C. 禁止代考D. 禁止使用非法手段答案:ABCD14. 广西蓝桥杯的参赛者可以获得哪些奖励?A. 荣誉证书B. 奖杯C. 奖学金D. 实习机会答案:ABCD15. 广西蓝桥杯的竞赛主题通常涉及以下哪些领域?A. 人工智能B. 大数据分析C. 云计算D. 物联网答案:ABCD三、判断题(每题2分,共10分)16. 广西蓝桥杯是一项国际性的竞赛。
蓝桥杯试题和答案
/*很久以前,T王国空前繁荣。
为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市。
为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者通过其他大城市间接到达。
同时,如果不重复经过大城市,从首都到达每个大城市的方案都是唯一的。
J是T国重要大臣,他巡查于各大城市之间,体察民情。
所以,从一个城市马不停蹄地到另一个城市成了J最常做的事情。
他有一个钱袋,用于存放往来城市间的路费。
聪明的J发现,如果不在某个城市停下来修整,在连续行进过程中,他所花的路费与他已走过的距离有关,在走第x千米到第x+1千米这一千米中(x是整数),他花费的路费是x+10这么多。
也就是说走1千米花费11,走2千米要花费23。
J大臣想知道:他从某一个城市出发,中间不休息,到达另一个城市,所有可能花费的路费中最多是多少呢?输入格式:输入的第一行包含一个整数n,表示包括首都在内的T王国的城市数城市从1开始依次编号,1号城市为首都。
接下来n-1行,描述T国的高速路(T国的高速路一定是n-1条)每行三个整数Pi, Qi, Di,表示城市Pi和城市Qi之间有一条高速路,长度为Di 千米。
输出格式:输出一个整数,表示大臣J最多花费的路费是多少。
样例输入:51 2 21 3 12 4 52 5 4样例输出:135样例说明:大臣J从城市4到城市5要花费135的路费。
*/#include<stdio.h>#include<string.h>int a[1000][1010];int main(){int i,j,k,n,x,y,z,max,sum;scanf("%d",&n);for(i=0;i<=n;i++)for(j=0;j<=n;j++)a[i][j]=999999;for(i=1;i<n;i++){scanf("%d%d%d",&x,&y,&z);a[x][y]=z;a[y][x]=z;}max=sum=0;for(k=1;k<=n;k++)for(i=1;i<=n;i++)for(j=1;j<=n;j++)if(i!=j){a[i][j]=a[i][k]+a[k][j]<a[i][j]?a[i][k]+a[k][j]:a[i][j];}for(i=0;i<=n;i++)for(j=0;j<=n;j++)if(a[i][j]<999999)max=a[i][j]>max?a[i][j]:max;for(i=1;i<=max;i++)sum+=(i+10);printf("%d\n",sum);return0;}。
第三届蓝桥杯全国选拔赛答案解析
第一题:微生物增殖#include <cstdio>int main(){long int X=10, Y=90;for(int k=1; k<=120; k++)//半分钟一个单位{if(k%2==1)Y -= X;//因为X出生半分钟后就要吃Y,尔后每1分钟要吃Y,所以永远都是奇数个半分钟的时候吃Y,又因为此时X不会增长(题目为了减小讨论的复杂度),所以直接减X数量即可。
if(k%4==0)Y *= 2;//每2分钟翻倍if(k%6==0)X *= 2;//每3分钟翻倍,X和Y的翻倍是相互独立的,不需要另作讨论。
}printf("%d", Y);return 0;}第二题:古堡算式#include <cstdio>int main(){long int X=10, Y=90;for(int k=1; k<=120; k++)//半分钟一个单位{if(k%2==1)Y -= X;//因为X出生半分钟后就要吃Y,尔后每1分钟要吃Y,所以永远都是奇数个半分钟的时候吃Y,又因为此时X不会增长(题目为了减小讨论的复杂度),所以直接减X数量即可。
if(k%4==0)Y *= 2;//每2分钟翻倍if(k%6==0)X *= 2;//每3分钟翻倍,X和Y的翻倍是相互独立的,不需要另作讨论。
}printf("%d", Y);return 0;}第三题:比酒量#include <cstdio>#define MAX 20int n, m; //n个海盗,m轮后全体倒下,船长喝了t瓶酒double drink[MAX], t; //记录船长每轮喝的酒量void dfs(int x, int y)if(y <= 0){double sum = 0.0;for(int i = 1; i <= m; i++)sum += drink[i];double dif = sum - t;if(dif < 0.0) dif = -dif;if(dif < 0.000001){for(int i = m; i > 0; i--)printf("%d ", (int)(1.0 / drink[i]));printf("\n");}return;}if(x <= 0) return;drink[y] = 1.0 / x;for(int i = 1; i < x; i++)dfs(x - i, y - 1);}int main(){m = 4; //喝了四轮t = 1.0; //船长喝了一瓶酒for(n = 20; n >= 1; n--)dfs(n, m);return 0;}第四题:奇怪的比赛#include <cstdio>#define MAX 20int n, m; //n个海盗,m轮后全体倒下,船长喝了t瓶酒double drink[MAX], t; //记录船长每轮喝的酒量void dfs(int x, int y){if(y <= 0){double sum = 0.0;for(int i = 1; i <= m; i++)sum += drink[i];double dif = sum - t;if(dif < 0.0) dif = -dif;if(dif < 0.000001){for(int i = m; i > 0; i--)printf("%d ", (int)(1.0 / drink[i]));printf("\n");}return;}if(x <= 0) return;drink[y] = 1.0 / x;for(int i = 1; i < x; i++)dfs(x - i, y - 1);}int main(){m = 4; //喝了四轮t = 1.0; //船长喝了一瓶酒for(n = 20; n >= 1; n--)dfs(n, m);return 0;}第五题:转方阵sizeof(int)*rank*rankrank*(i%rank) + rank-i/rank-1第六题:大数乘法n3/base+n2/base+n4%baser[2]/base第七题:放棋子NumRow!=3 || NumCol!=3f(x,r,c+1)x[r][c]==1第八题:密码发生器#include <cstdio>#include <cstring>#define MAX 1005long num[6];char tmp[MAX];int main(){int t;scanf("%d", &t);while(t){memset(num, 0, sizeof num);fgets(tmp, MAX, stdin);if(tmp[0] == '\n' || strlen(tmp) == 0) continue;for(int i = 0; tmp[i] != 0 && tmp[i] != '\n'; i++){num[i%6] += tmp[i];}for(int j = 0; j < 6; j++){int t = num[j] % 9;printf("%d", t ? t : 9);}putchar('\n');--t;}return 0;}第八题:密码发生器#include <cstdio>#include <cstring>#define MAX 1005long num[6];char tmp[MAX];int main(){int t;scanf("%d", &t);while(t){memset(num, 0, sizeof num);fgets(tmp, MAX, stdin);if(tmp[0] == '\n' || strlen(tmp) == 0) continue;for(int i = 0; tmp[i] != 0 && tmp[i] != '\n'; i++){num[i%6] += tmp[i];}for(int j = 0; j < 6; j++){int t = num[j] % 9;printf("%d", t ? t : 9);}putchar('\n');--t;}return 0;}第九题:夺冠概率#include <cstdio>#include <stdlib.h>#include <time.h>#define COUNT 100000const int g = 0;double P[4][4] = {{0, 0.1, 0.3, 0.5}, {0.9, 0, 0.7, 0.4},{0.7, 0.3, 0, 0.2},{0.5, 0.6, 0.8, 0}};int main(){srand((unsigned)time(NULL));double sum = 0.0;for(int k = 1; k <= COUNT; k++){int x = g, y = g, z = g;while(x == g) x = rand() % 4;//while(y==g || y==x) y=rand()%4; //此处的生成y的方法和下面的方法有轻微差异for(int ii = 0; ii < 4 && (ii == g || ii == x); )++ii; //约有0.001的浮动,推荐用下面这个方法y = ii;for(int i = 0; i < 4 && (i == g || i == x || i == y); )++i;z = i;double r = 1 - (P[x][g] + P[g][x] * (P[y][z] * P[y][g] + P[z][y] * P[z][g]));sum += r;}printf("%lf\n", sum / COUNT);return 0;}第十题:#include <stdio.h>#include <string.h>int a[10001];int b[4] = {1, 3, 7, 8};int main(){int i, n, j;memset(a, 0, sizeof a); //初始化判定数组为0a[0] = 1; //说明对方取完了最后一堆,那么自己胜利for(i = 1; i <= 10000; i++)for(j = 0; j < 4; j++)if(i - b[j] >= 0){if(a[i-b[j]] == 0) //有取法能致使对方输,那么自己就要赢{a[i] = 1;break;}}scanf("%d", &n);while(n--){scanf("%d", &i);printf("%d\n", a[i]);}return 0;}。
蓝桥杯ACM决赛经典试题及其详解
/*入门训练A+B问题问题描述输入A、B,输出A+B。
说明:在“问题描述”这部分,会给出试题的意思,以及所要求的目标。
输入格式输入的第一行包括两个整数,由空格分隔,分别表示A、B。
说明:“输入格式”是描述在测试你的程序时,所给的输入一定满足的格式。
做题时你应该假设所给的输入是一定满足输入格式的要求的,所以你不需要对输入的格式进行检查。
多余的格式检查可能会适得其反,使用你的程序错误。
在测试的时候,系统会自动将输入数据输入到你的程序中,你不能给任何提示。
比如,你在输入的时候提示“请输入A、B”之类的话是不需要的,这些多余的输出会使得你的程序被判定为错误。
输出格式输出一行,包括一个整数,表示A+B的值。
说明:“输出格式”是要求你的程序在输出结果的时候必须满足的格式。
在输出时,你的程序必须满足这个格式的要求,不能少任何内容,也不能多任何内容。
如果你的内容和输出格式要求的不一样,你的程序会被判断为错误,包括你输出了提示信息、中间调试信息、计时或者统计的信息等。
样例输入12 45说明:“样例输入”给出了一组满足“输入格式”要求的输入的例子。
这里给出的输入只是可能用来测试你的程序的一个输入,在测试的时候,还会有更多的输入用来测试你的程序。
样例输出57说明:“样例输出”给出了一组满足“输出格式”要求的输出的例子。
样例输出中的结果是和样例输入中的是对应的,因此,你可以使用样例的输入输出简单的检查你的程序。
要特别指出的是,能够通过样例输入输出的程序并不一定是正确的程序,在测试的时候,会用很多组数据进行测试,而不局限于样例数据。
有可能一个程序通过了样例数据,但测试的时候仍只能得0分,可能因为这个程序只在一些类似样例的特例中正确,而不具有通用性,再测试更多数据时会出现错误。
比如,对于本题,如果你写一个程序不管输入是什么都输入57,则样例数据是对的,但是测试其他数据,哪怕输入是1和2,这个程序也输出57,则对于其他数据这个程序都不正确。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2011年暑假蓝桥杯决赛题附答案1.四方定理数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示。
我们可以通过计算机验证其在有限范围的正确性。
对于大数,简单的循环嵌套是不适宜的。
下面的代码给出了一种分解方案。
请仔细阅读,填写空缺的代码(下划线部分)。
注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
直接写在题面中不能得分。
int f(int n, int a[], int idx){if(______________) return 1; // 填空1if(idx==4) return 0;for(int i=(int)sqrt(n); i>=1; i--){a[idx] = i;if(_______________________)return 1; // 填空2}return 0;}int main(int argc, char* argv[]){for(;;){int number;printf("输入整数(1~10亿):");scanf("%d",&number);int a[] = {0,0,0,0};int r = f(number, a, 0);printf("%d: %d %d %d %d\n", r, a[0], a[1], a[2], a[3]);}return 0;}2.加密在对文本进行简单加密的时候,可以选择用一个n位的二进制数,对原文进行异或运算。
解密的方法就是再执行一次同样的操作。
加密过程中n位二进制数会循环使用。
并且其长度也可能不是8的整数倍。
下面的代码演示了如何实现该功能。
请仔细阅读,填写空缺的代码(下划线部分)。
注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
直接写在题面中不能得分。
void f(char* buf, unsigned char* uckey, int n) {int i;for(i=0; i<n; i++)buf[i] = buf[i] ^ uckey[i];}int main(int argc, char* argv[]){char p[] = "abcd中国人123"; // 待加密串char* key = "11001100010001110"; //以串的形式表达的密匙,运算时要转换为按位存储的形式。
int np = strlen(p);int nk = strlen(key);unsigned char* uckey = (unsignedchar*)malloc(np);// 密匙串需要按位的形式循环拼入 uckey中int i;for(i=0; i<np*8; i++){if(key[i%nk]=='1')____________________________________________; // 填空1else_________________________________________ ___; // 填空2}f(p, uckey, strlen(p));f(p, uckey, strlen(p));printf("%s\n", p);free(uckey);return 0;}3.公倍数为什么1小时有60分钟,而不是100分钟呢?这是历史上的习惯导致。
但也并非纯粹的偶然:60是个优秀的数字,它的因子比较多。
事实上,它是1至6的每个数字的倍数。
即1,2,3,4,5,6都是可以除尽60。
我们希望寻找到能除尽1至n 的的每个数字的最小整数。
不要小看这个数字,它可能十分大,比如n=100, 则该数为:69720375229712477164533808935312303556800请编写程序,实现对用户输入的n (n<100)求出1~n的最小公倍数。
例如:用户输入:6程序输出:60用户输入:10程序输出:2520要求考生把所有函数写在一个文件中。
调试好后,存入与考生文件夹下对应题号的“解答.txt”中即可。
相关的工程文件不要拷入。
对于编程题目,要求选手给出的解答完全符合ANSI C标准,不能使用c++特性;不能使用诸如绘图、中断调用等硬件相关或操作系统相关的API。
4.地铁换乘为解决交通难题,某城市修建了若干条交错的地铁线路,线路名及其所属站名如stations.txt所示。
线1苹果园....四惠东线2西直门车公庄....建国门线4....其中第一行数据为地铁线名,接下来是该线的站名。
当遇到空行时,本线路站名结束。
下一行开始又是一条新线....直到数据结束。
如果多条线拥有同一个站名,表明:这些线间可以在该站换车。
为引导旅客合理利用线路资源,解决交通瓶颈问题,该城市制定了票价策略:1. 每条线路可以单独购票,票价不等。
2. 允许购买某些两条可换乘的线路的联票。
联票价格低于分别购票。
单线票价和联合票价如price.txt 所示。
线1 180.....线13 114线1,线2 350线1,线10 390.....每行数据表示一种票价线名与票价间用空格分开。
如果是联票,线名间用逗号分开。
联票只能包含两条可换乘的线路。
现在的问题是:根据这些已知的数据,计算从A站到B站最小花费和可行的换乘方案。
比如,对于本题目给出的示例数据如果用户输入:五棵松,奥体中心程序应该输出:-(线1,线10)-线8 = 565如果用户输入:五棵松,霍营程序应该输出:-线1-(线4,线13) = 440可以看出,用户输入的数据是:起始站,终到站,用逗号分开。
程序输出了购票方案,在括号中的表示联票,短横线(-)用来分开乘车次序。
等号后输出的是该方案的花费数值。
请编程解决上述问题。
注意:1. 我们测试您的程序时,所用数据与题目中的示例数据不同,但格式完全一样。
2. 当多个方案有相同的最小花费,输出任意一个方案即可。
要求考生把所有函数写在一个文件中。
调试好后,存入与考生文件夹下对应题号的“解答.txt”中即可。
相关的工程文件不要拷入。
对于编程题目,要求选手给出的解答完全符合ANSI C标准,不能使用c++特性;不能使用诸如绘图、中断调用等硬件相关或操作系统相关的API。
文件price.txt内容如下:线1 180线2 250线4 160线5 270线8 175线10 226线13 114线1,线2 350线1,线10 390线1,线5 410线1,线4 330线10,线13 310线2,线5 390线4,线10 370线4,线13 260文件station.txt内容如下:线1苹果园古城路八角游乐园八宝山玉泉路五棵松万寿路公主坟军事博物馆木樨地南礼士路复兴门西单天安门西天安门东王府井东单建国门永安里国贸大望路四惠四惠东线2西直门车公庄阜成门复兴门长椿街宣武门和平门前门崇文门北京站建国门朝阳门东四十条东直门雍和宫安定门鼓楼大街积水潭线4公益西桥角门西马家堡北京南站陶然亭菜市口宣武门西单灵境胡同西四平安里新街口西直门动物园国家图书馆魏公村人民大学海淀黄庄中关村北京大学东门圆明园西苑北宫门安河桥北线5天通苑北天通苑天通苑南立水桥立水桥南北苑路北大屯路东惠新西街北口惠新西街南口和平西桥和平里北街北新桥张自忠路东四灯市口东单崇文门磁器口天坛东门蒲黄榆刘家窑宋家庄线8森林公园南门奥林匹克公园奥体中心北土城线10巴沟苏州街海淀黄庄知春里知春路西土城牡丹园健德门北土城惠新西街南口芍药居太阳宫三元桥亮马桥农业展览馆团结湖呼家楼金台夕照国贸双井劲松线13西直门大钟寺知春路五道口上地西二旗龙泽回龙观霍营立水桥北苑望京西芍药居光熙门东直门5.连通问题in.bmp 文件如下:t1.bmp文件如下:BMP是常见的图像存储格式。
如果用来存黑白图像(颜色深度=1),则其信息比较容易读取。
与之相关的数据:(以下偏移均是从文件头开始)偏移:10字节, 长度4字节:图像数据真正开始的位置。
偏移:18字节, 长度4字节:位图的宽度,单位是像素。
偏移:22字节, 长度4字节:位图的高度,单位是像素。
从图像数据开始处,每个像素用1个二进制位表示。
从图片的底行开始,一行一行向上存储。
Windows规定图像文件中一个扫描行所占的字节数必须是4字节的倍数,不足的位均以0 填充。
例如,图片宽度为45像素,实际上每行会占用8个字节。
可以通过Windows自带的画图工具生成和编辑二进制图像。
需要在“属性”中选择“黑白”,指定为二值图像。
可能需要通过查看| 缩放| 自定义... 把图像变大比例一些,更易于操作。
图像的左下角为图像数据的开始位置。
白色对应1,黑色对应0我们可以定义:两个点距离如果小于2个像素,则认为这两个点连通。
也就是说:以一个点为中心的九宫格中,围绕它的8个点与它都是连通的。
如:t1.bmp 所示,左下角的点组成一个连通的群体;而右上角的点都是孤立的。
程序的目标是:根据给定的黑白位图,分析出所有独立连通的群体,输出每个连通群体的面积。
所谓面积,就是它含有的像素的个数。
输入数据固定存在in.bmp中。
如示例的in.bmp,程序应该输出:128152133该输出表示:共有4个连通群体。
输出的连通体面积间的顺序可以随意。
请编程解决上述问题。
我们测试程序的时候,会使用不同的in.bmp文件。
要求考生把所有函数写在一个文件中。
调试好后,存入与考生文件夹下对应题号的“解答.txt”中即可。
相关的工程文件不要拷入。
对于编程题目,要求选手给出的解答完全符合ANSI C标准,不能使用c++特性;不能使用诸如绘图、中断调用等硬件相关或操作系统相关的API。
2012年暑假蓝桥杯决赛题附答案【结果填空】(满分5分)1949年的国庆节(10月1日)是星期六。
今年(2012)的国庆节是星期一。
那么,从建国到现在,有几次国庆节正好是星期日呢?只要答案,不限手段!可以用windows日历,windows计算器,Excel公式,。
当然,也可以编程!不要求写出具体是哪些年,只要一个数目!千万不要提交源代码!答案不要写在这里,写在“解答.txt”中【代码填空】(满分16分)某工业监控设备不断发回采样数据。
每个数据是一个整数(0到1000之间)。
各个数据间用空白字符(空格,TAB或回车换行)分隔。
这些数据以文本形式被存储在文件中。
因为大多数时候,相邻的采样间隔数据是相同的,可以利用这个特征做数据的压缩存储。
其方法是:对n(n>1)个连续相同的数字只记录n和该数字本身;对m(m>0)个连续不重复的数字,则记录m*-1 和这些数字本身(之所以用负数,是为了与第一种情况区分,便于解压缩)。