c++题库
hipoole
这个作者很懒,什么都没留下…
展开
-
扫雷游戏
题目描述扫雷游戏是一款十分经典的单机小游戏。它的精髓在于,通过已翻开格子所提示的周围格地雷数,来判断未翻开格子里是否是地雷。现在给出n行m列的雷区中的地雷分布,要求计算出每个非地雷格的周围格地雷数。注:每个格子周围格有八个:上、下、左、右、左上、右上、左下、右下。输入第一行包含两个整数n和m,分别表示雷区的行数和列数。1 <= n <= 100, 1 <= m <...原创 2019-11-28 09:47:05 · 351 阅读 · 0 评论 -
相似度
题目描述给出两幅相同大小的黑白图像(用0-1矩阵)表示,求它们的相似度。说明:若两幅图像在相同位置上的像素点颜色相同,则称它们在该位置具有相同的像素点。两幅图像的相似度定义为相同像素点数占总像素点数的百分比。输入第一行包含两个整数m和n,表示图像的行数和列数,中间用单个空格隔开。1 <= m <= 100, 1 <= n <= 100。之后m行,每行n个整数0或1...原创 2019-11-28 08:47:24 · 561 阅读 · 0 评论 -
Self-Numbers
题目描述在1949年印度数学家D. R. Daprekar发现了一类称作Self-Numbers的数。对于每一个正整数n,我们定义d(n)为n加上它每一位数字的和。例如,d(75)=75+7+5=87。给定任意正整数n作为一个起点,都能构造出一个无限递增的序列:n, d(n), d(d(n)), d(d(d(n))), . . . 例如,如果你从33开始,下一个数是33+3+3=39,再下一个为...原创 2019-11-28 08:29:45 · 656 阅读 · 0 评论 -
最长单词
问题描述:对于输入的一个英文语句(单词以空格分隔)。输出其中是长的单词及其长度。输入样例:I love China.输出样例:China 5分析:代码:字符数组#include <iostream>using namespace std;int main(){ char ans[200],txt[200]; int len=0,ntxt=0,tmp=0; w...原创 2019-11-21 17:17:57 · 745 阅读 · 0 评论 -
替换字符
问题描述在应用计算机编辑文档的时候,我们经常遇到替换任务。例如把文档中“电脑”都替换成“计算机。现在请你编程模拟一处这个操作。输入两行内容,第1行是原文(长度不超过200个字符),第2行包含以空格分隔的两个字符A和B,要求将原文所有的字符A都替换字符串B。输入样例:I love China. I love Beijing.I U输出样例:U love China. U love Be...原创 2019-11-21 15:46:19 · 2264 阅读 · 0 评论 -
回文
问题描述一串字符如果原创 2019-11-19 22:18:28 · 434 阅读 · 0 评论 -
最近元素
题目描述在一个非降序列中,查找与给定值最接近的元素。输入第一行包含一个整数n,为非降序列长度。1 <= n <= 100000。第二行包含n个整数,为非降序列各元素。所有元素的大小均在0-1,000,000,000之间。第三行包含一个整数m,为要询问的给定值个数。1 <= m <= 10000。接下来m行,每行一个整数,为要询问最接近元素的给定值。所有给定值的大...原创 2019-11-18 23:26:58 · 79 阅读 · 0 评论 -
矩形分割
题目描述平面上有一个大矩形,其左下角坐标(0,0),右上角坐标(R,R)。大矩形内部包含一些小矩形,小矩形都平行于坐标轴且互不重叠。所有矩形的顶点都是整点。要求画一根平行于y轴的直线x=k(k是整数) ,使得这些小矩形落在直线左边的面积必须大于等于落在右边的面积,且两边面积之差最小。并且,要使得大矩形在直线左边的的面积尽可能大。注意:若直线穿过一个小矩形,将会把它切成两个部分,分属左右两侧。输...原创 2019-11-18 21:42:04 · 1309 阅读 · 0 评论 -
明明问卷调查
问题描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。 输入格式 :输入有2行,第1行为1个正整数,表示所生成的随机数的个...原创 2019-11-18 20:41:00 · 344 阅读 · 0 评论 -
前5名成绩
【问题描述】某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前5名学...原创 2019-11-18 20:07:11 · 560 阅读 · 0 评论 -
志愿者选拔
问题描述世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的150%划定,即如果计划录取m名志愿者,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。现在就请你编写程序划定面试分数线,并输出所有进入面试的选...原创 2019-11-18 18:56:47 · 224 阅读 · 0 评论 -
计数排序
问题描述:计数排序问题出处:《CCF中学生计算机程序设计》P215 练习 章节:5.3 数值排序和查找分析:1、把排序的数值在一定范围之内,往往不是很大。2、循环记录每数值出现的次数,从而知道其顺序。代码:#include <iostream>#include <cstring>using namespace std;#define maxn 1000...原创 2019-11-17 10:29:43 · 69 阅读 · 0 评论 -
查找次数(二分法)
问题描述:设有100个数据元素,采用二分查找时,最大比较次数为:分析:元素要查找到代码:#include <iostream>using namespace std;int main(){ int a[101]; for(int i=0;i<=100;i++) a[i]=i; int ans; for(int i=1;i<=100;i++){ ...原创 2019-11-17 10:12:05 · 6340 阅读 · 1 评论 -
冒泡排序最差交换次数
问题描述:使用冒泡排序对序列进行升序排列,每执行一交交换操作将减少1个逆序列,问序列5、4、3、2、1需要执行多省交换操作,都能完成冒泡排序。分析:最差序列冒泡排序交换次数:n-1+n-2+……+2+1 [n*(n-1)/2]代码:#include <iostream>const int MAXN=100001;using namespace std;int main(...原创 2019-11-17 09:24:07 · 3094 阅读 · 0 评论 -
查成绩_二分查找
【问题描述】中考成绩出来了,许多考生想知道自己成绩排名情况,于是考试委员会找到了你,让你帮助完成一个成绩查找程序,考生只要输入成绩,即可知道其排名及同名次的人有多少。【输入格式】第一行一个数N(N<=10000);第二行一个数K;第三行开始N个以空格隔开的从大到小排列的所有学生中考成绩。接着K个待查找的考生成绩。【输出格式】K行,每行为一个待查找的考生的名次、同名次的人数、比考...原创 2019-11-17 09:06:47 · 1106 阅读 · 0 评论 -
顺序查找
问题描述:在输入的n个数中,查找输入的数,输出数据存放在数组中的位置,查找不到,则输出“ fail‘分析:代码:#include <iostream>const int maxn=100001;using namespace std;int main(){ double a[maxn]; int n; cin>>n; for(int i=0;i<...原创 2019-11-16 23:49:49 · 98 阅读 · 0 评论 -
插入排序
题目描述插入排序分析:1、把第二个元素插入到第一个元素。2、依次类推。代码://插入排序#include <iostream>using namespace std;const int MAXN=100001;int main(){ double a[MAXN]; int n; cin>>n; for(int i=0;i<n;i++) ci...原创 2019-11-16 23:46:02 · 109 阅读 · 0 评论 -
冒泡排序
问题描述:输入n个数,将n个数按从小到大的顺序输出(n<=100000)输入样例: 5 156 163 178.6 198 123输出样例: 123 156 163 178.6 198 分析:1、相邻二个元素进行交换代码:#include <iostream>const int MAXN=100001;using namespace std;int ...原创 2019-11-16 22:25:38 · 140 阅读 · 0 评论 -
选择排序
问题描述:输入n个数,将n个数按从小到大的顺序输出(n<=100000)输入样例: 5 156 163 178.6 198 123输出样例: 123 156 163 178.6 198 分析:1、编历第一遍把最小数放在首位。2、依次类推。代码:#include <iostream>const int MAXN=100001;using namespac...原创 2019-11-16 22:15:05 · 72 阅读 · 0 评论 -
平方结果数字互不相同且九位
问题:.求所有的满足等式x*x的结果,平方结果内的数字互不相同,且遍历数字1-9;分析:1、正常遍历所有互不相同9位是不可行的,需要九层循环。遍历所有九位循环次数也很大。2、最大数字互不相同的九位是987654321,它开方数小于31427;最小数字互不相同的九位是123456789,它开方数大于11110;代码:#include <iostream>#include ...原创 2019-11-16 21:54:13 · 906 阅读 · 0 评论 -
移树建地铁
问题:校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,……,L,都种有一棵树并且已知每棵树的高度。由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把区域涉及到的最小...原创 2019-11-16 20:47:11 · 349 阅读 · 0 评论 -
翻扑克
问题:有52张扑克牌,使它们全部正面朝上.从第2张牌开始,把凡是2的倍数位置上的牌翻成正面朝下;接着从第3张牌开始,把凡是3的倍数位置上的牌正面朝上的翻成正面朝下,正面朝下的翻成正面朝上;接着从第4张牌开始,把凡是4的倍数位置上的牌按此规律翻转;依此类推,直到第1张要翻的牌是第52张牌为止.统计最后有几张牌正面朝上,并打印出它们位置分析:代码:#include <iostrea...原创 2019-11-16 19:52:07 · 587 阅读 · 0 评论 -
狐狸找句子(c++)
问题: 围绕着山顶有10个洞,一只兔子和一只狐狸分别住在洞里,狐狸总想吃掉兔子,一天,兔子对狐狸说:你想吃掉我有一个条件,先把洞顺序编号,你从最后一个洞出发,第一次先到第一个洞找我,第二次隔一个洞找我,第三次隔两个洞找我,第四次隔三个洞找我,……依此规律类推,寻找次数不限,我躲在一个洞里不动,只要你找到我,就可以吃掉我。狐狸一想,只有十个洞,次数又不限,哪有找不着的道理,马上答应了条件。结...原创 2019-11-16 19:19:45 · 390 阅读 · 0 评论