csp-ccf历年题
记录我的csp练习
编译环境:Dev-CPP(C++语言)
小迷糊啊迷迷糊糊
不常上线
展开
-
未初始化警告(202203-1)
用空间换时间的思想。#include<bits/stdc++.h>using namespace std;int a[100001],b[100001],c[100001]={0};int main(){ int n,k; c[0]=1; int sum=1; cin>>n>>k; for(int i=0;i<k;i++) { cin>>a[i]>>b[i]; } for(int i=1;i<k;i+原创 2022-04-01 18:29:36 · 224 阅读 · 0 评论 -
序列查询(202112-1)
#include<bits/stdc++.h>using namespace std;int main(){ int n,N,sum=0,b=0; cin>>n>>N; int a[n+1]={0}; for(int i=1;i<=n;i++) { cin>>a[i]; } for(int i=1;i<=n;i++) { b+=a[i]-a[i-1]; sum+=(a[i]-a[i-1])*(i-1); } .原创 2022-04-01 18:27:12 · 118 阅读 · 0 评论 -
游戏(201712-2)
试题编号: 201712-2 试题名称: 游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 有n个小朋友围成一圈玩游戏,小朋友从1至n编号,2号小朋友坐在1号小朋友的顺时针方向,3号小朋友坐在2号小朋友的顺时针方向,……,1号小朋友坐在n号小朋友的顺时针方向。 游戏开始,从1号小朋友开始顺时针报数,接下来每个小朋友的报数是上一个小朋友报的数加1。若一个小朋友报的数为k的倍数或其末位数(即数的个位)为k,则原创 2021-09-18 21:03:17 · 69 阅读 · 0 评论 -
小明放学(201812-2)
试题编号: 201812-2 试题名称: 小明放学 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 题目背景 汉东省政法大学附属中学所在的光明区最近实施了名为“智慧光明”的智慧城市项目。具体到交通领域,通过“智慧光明”终端,可以看到光明区所有红绿灯此时此刻的状态。小明的学校也安装了“智慧光明”终端,小明想利用这个终端给出的信息,估算自己放学回到家的时间。 问题描述 一次放学的时候,小明已经规划好了自己回家的路原创 2021-09-18 11:51:59 · 84 阅读 · 0 评论 -
打酱油(201709-1)
试题编号: 201709-1 试题名称: 打酱油 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 小明带着N元钱去买酱油。酱油10块钱一瓶,商家进行促销,每买3瓶送1瓶,或者每买5瓶送2瓶。请问小明最多可以得到多少瓶酱油。 输入格式 输入的第一行包含一个整数N,表示小明可用于买酱油的钱数。N是10的整数倍,N不超过300。 输出格式 输出一个整数,表示小明最多可以得到多少瓶酱油。原创 2021-09-18 08:59:03 · 113 阅读 · 0 评论 -
最小差值(201712-1)
试题编号: 201712-1 试题名称: 最小差值 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定n个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值。 输入格式 输入第一行包含一个整数n。 第二行包含n个正整数,相邻整数之间使用一个空格分隔。 输出格式 输出一个整数,表示答案。 样例输入 5 1 5 4 8 20原创 2021-09-18 08:34:14 · 107 阅读 · 0 评论 -
跳一跳(201803-1)
试题编号: 201803-1 试题名称: 跳一跳 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 近来,跳一跳这款小游戏风靡全国,受到不少玩家的喜爱。 简化后的跳一跳规则如下:玩家每次从当前方块跳到下一个方块,如果没有跳到下一个方块上则游戏结束。 如果跳到了方块上,但没有跳到方块的中心则获得1分;跳到方块中心时,若上一次的得分为1分或这是本局游戏的第一次跳跃则此次得分为2分,否则此次得分比上一次得分原创 2021-09-18 08:23:56 · 70 阅读 · 0 评论 -
小明上学(201812-1)
试题编号: 201812-1 试题名称: 小明上学 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 题目背景 小明是汉东省政法大学附属中学的一名学生,他每天都要骑自行车往返于家和学校。为了能尽可能充足地睡眠,他希望能够预计自己上学所需要的时间。他上学需要经过数段道路,相邻两段道路之间设有至多一盏红绿灯。 京州市的红绿灯是这样工作的:每盏红绿灯有红、黄、绿三盏灯和一个能够显示倒计时的显示牌。假设红绿灯被设定为红灯 r 秒原创 2021-09-17 23:16:29 · 93 阅读 · 0 评论 -
小中大(201903-1)
试题编号: 201903-1 试题名称: 小中大 时间限制: 1.0s 内存限制: 512.0MB 问题描述: #include<bits/stdc++.h>using namespace std;int a[100001];int main(){ int n,maxx,minn; cin>>n; for(int i=0;i<n;i++) { cin>>..原创 2021-09-17 22:46:04 · 62 阅读 · 0 评论 -
小明种苹果(201909-1)
试题编号: 201909-1 试题名称: 小明种苹果 时间限制: 2.0s 内存限制: 512.0MB 问题描述: #include<bits/stdc++.h>using namespace std;int main(){ int n,m,s,max=0,maxi=1,sums=0; cin>>n>>m; int a[1001]; for(int i=1;i<=n;i+.原创 2021-09-11 11:18:02 · 76 阅读 · 0 评论 -
回收站选址(201912-2)
试题编号: 201912-2 试题名称: 回收站选址 时间限制: 1.0s 内存限制: 512.0MB 问题描述: #include<bits/stdc++.h>using namespace std;pair<long long ,long long>p[1000];int main(){ int n,a[5]={0}; cin>>n; map<pair<long long,long原创 2021-09-11 09:57:09 · 74 阅读 · 0 评论 -
报数(201912-1)
试题编号: 201912-1 试题名称: 报数 时间限制: 1.0s 内存限制: 512.0MB 问题描述: #include<bits/stdc++.h>using namespace std;bool judeg(int m){ if(m<7) return 0; if(m%7==0) return 1; int a,b,c; a=m/100; b=(m-a*100)/10; .原创 2021-09-10 23:09:45 · 89 阅读 · 0 评论 -
线性分类器(202006-1)
试题编号: 202006-1 试题名称: 线性分类器 时间限制: 1.0s 内存限制: 512.0MB 问题描述: #include<bits/stdc++.h>using namespace std;struct Point{ int x,y; char type;};int main(){ int n,m,a,b,c,num; cin>>n>>m; Point p[1.原创 2021-09-10 16:09:14 · 108 阅读 · 0 评论 -
风险人群筛查(202009-2)
试题编号: 202009-2 试题名称: 风险人群筛查 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 题目背景 某地疫情爆发后,出于“应检尽检”的原则,我们想要通知所有近期经过该高危区域的居民参与核酸检测。 问题描述 想要找出经过高危区域的居民,分析位置记录是一种简单有效的方法。 具体来说,一位居民的位置记录包含t个平面坐标(x1,y1),(x2,y2),⋯,(xt,yt),其中(xi,yi)表示...原创 2021-09-09 21:01:50 · 217 阅读 · 0 评论 -
称检测点查询(202009-1)
试题编号: 202009-1 试题名称: 称检测点查询 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 题目背景 2020 年 6 月 8 日,国务院联防联控机制发布《关于加快推进新冠病毒核酸检测的实施意见》,提出对“密切接触者”等八类重点人群“应检尽检”,其他人群“愿检尽检”。 问题描述 某市设有n个核酸检测点,编号从1到n,其中i号检测点的位置可以表示为一个平面整数坐标(xi,yi)。 为...原创 2021-09-09 20:28:43 · 106 阅读 · 0 评论 -
期末预测之安全指数(202012-1)
试题编号: 202012-1 试题名称: 期末预测之安全指数 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 题目背景 期末要到了,小菜同学找到了自己的好朋友顿顿,希望可以预测一下自己这学期是否会挂科。 题目描述 首先,顿顿选取了如“课堂表现”、“自习时长”、“作业得分”、“社团活动参与度”等n项指标作为预测的依据。 然后,顿顿根据自己平日里对小菜的暗中观察,以百分制给每一项指标打分,即小菜同学第i(1≤...原创 2021-09-07 21:32:56 · 101 阅读 · 0 评论 -
灰度直方图(202104-1)
试题编号: 202104-1 试题名称: 灰度直方图 时间限制: 1.0s 内存限制: 512.0MB 问题描述: 问题描述 一幅长宽分别为n个像素和m个像素的灰度图像可以表示为一个n×m大小的矩阵A。 其中每个元素Aij(0≤i<n、0≤j<m)是一个[0,L)范围内的整数,表示对应位置像素的灰度值。 具体来说,一个8比特的灰度图像中每个像素的灰度范围是[0,128)。 一副灰度图像的灰...原创 2021-08-31 16:04:36 · 485 阅读 · 0 评论 -
中间数(201612-1)
试题编号: 201612-1 试题名称: 中间数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在一个整数序列a1,a2, …,an中,如果存在某个数,大于它的整数数量等于小于它的整数数量,则称其为中间数。在一个序列中,可能存在多个下标不相同的中间数,这些中间数的值是相同的。 给定一个整数序列,请找出这个整数序列的中间数的值。 输入格式 输入的第一行包含了一个整数n,表示整数序列中数..原创 2021-08-10 17:20:39 · 84 阅读 · 0 评论 -
火车购票(201609-2)
试题编号: 201609-2 试题名称: 火车购票 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 请实现一个铁路购票系统的简单座位分配算法,来处理一节车厢的座位分配。 假设一节车厢有20排、每一排5个座位。为方便起见,我们用1到100来给所有的座位编号,第一排是1到5号,第二排是6到10号,依次类推,第20排是96到100号。 购票时,一个人可能购一张或多张票,最多不超过5张。如果这几张票可以安排原创 2021-08-03 22:44:30 · 96 阅读 · 0 评论 -
最大波动(201609-1)
试题编号: 201609-1 试题名称: 最大波动 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 小明正在利用股票的波动程度来研究股票。小明拿到了一只股票每天收盘时的价格,他想知道,这只股票连续几天的最大波动值是多少,即在这几天中某天收盘价格与前一天收盘价格之差的绝对值最大是多少。 输入格式 输入的第一行包含了一个整数n,表示小明拿到的收盘价格的连续天数。 第二行包含n个正整数,依次表示原创 2021-08-03 21:14:13 · 109 阅读 · 0 评论 -
俄罗斯方块(201604-2)
试题编号: 201604-2 试题名称: 俄罗斯方块 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏。 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块。每一轮,都会有一个新的由4个小方块组成的板块从方格图的上方落下,玩家可以操作板块左右移动放到合适的位置,当板块中某一个方块的下边缘与方格图上的方块上边缘原创 2021-08-03 15:50:07 · 84 阅读 · 0 评论 -
折点计数(201604-1)
试题编号: 201604-1 试题名称: 折点计数 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定n个整数表示一个商店连续n天的销售量。如果某天之前销售量在增长,而后一天销售量减少,则称这一天为折点,反过来如果之前销售量减少而后一天销售量增长,也称这一天为折点。其他的天都不是折点。如下图中,第3天和第6天是折点。 给定n个整数a1,a2, …,an表示销售量,请计算出这些天总共有多少个折点。 ..原创 2021-07-22 21:18:25 · 142 阅读 · 0 评论 -
消除类游戏(201512-2)
试题编号: 201512-2 试题名称: 消除类游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。当有多处可以被消除时,这些地方的棋子将同时被消除。 现在给你一个n行m列的棋盘,棋盘中的每一个方格上有一个棋子,请给原创 2021-07-20 21:48:26 · 103 阅读 · 0 评论 -
数位之和(201512-1)
试题编号: 201512-1 试题名称: 数位之和 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定一个十进制整数n,输出n的各位数字之和。 输入格式 输入一个整数n。 输出格式 输出一个整数,表示答案。 样例输入 20151220 样例输出 13 样例说明 20151220的各位数字之和为2+0+1+5+1+2+2+0=1原创 2021-07-20 21:27:58 · 152 阅读 · 0 评论 -
日期计算(201509-2)
试题编号: 201509-2 试题名称: 日期计算 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定一个年份y和一个整数d,问这一年的第d天是几月几日? 注意闰年的2月有29天。满足下面条件之一的是闰年: 1) 年份是4的整数倍,而且不是100的整数倍; 2) 年份是400的整数倍。 输入格式 输入的第一行包含一个整数y,表示年份,年份在1900到2015之间(包含原创 2021-07-20 22:06:18 · 90 阅读 · 0 评论 -
数列分段(201509-1)
试题编号: 201509-1 试题名称: 数列分段 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定一个整数数列,数列中连续相同的最长整数序列算成一段,问数列中共有多少段? 输入格式 输入的第一行包含一个整数n,表示数列中整数的个数。 第二行包含n个整数a1,a2, …,an,表示给定的数列,相邻的整数之间用一个空格分隔。 输出格式 输出一个整数,表示给定的数列..原创 2021-07-17 17:31:43 · 95 阅读 · 0 评论 -
数字排序(201503-2)
试题编号: 201503-2 试题名称: 数字排序 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出。 输入格式 输入的第一行包含一个整数n,表示给定数字的个数。 第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数。 输出格式 输出多行,每行包含两个整数,分别表示一个给定的整数和它出现原创 2021-07-14 20:27:03 · 354 阅读 · 0 评论 -
图像旋转(201503-1)
试题编号: 201503-1 试题名称: 图像旋转 时间限制: 5.0s 内存限制: 256.0MB 问题描述: 问题描述 旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆时针旋转90度。 计算机中的图像表示可以用一个矩阵来表示,为了旋转一个图像,只需要将对应的矩阵旋转即可。 输入格式 输入的第一行包含两个整数n,m,分别表示图像矩阵的行数和列数。 接下来n行每行包含m个整数,表示输入的图像.原创 2021-07-14 14:28:06 · 94 阅读 · 0 评论 -
字符串匹配(201409-3)
试题编号: 201409-3 试题名称: 字符串匹配 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行。你的程序还需支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小写看作不同的字符;当选项关闭时,表示同一个字母的大写和小写看作相同的字符。 输入格式 输入的第一行包含一个字符串S,由大小写英文字母组成。 第二行包含一个数字原创 2021-07-14 10:36:11 · 99 阅读 · 0 评论 -
最大的矩形(201312-3)
试题编号: 201312-3 试题名称: 最大的矩形 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在横轴上放了n个相邻的矩形,每个矩形的宽度是1,而第i(1 ≤ i ≤ n)个矩形的高度是hi。这n个矩形构成了一个直方图。例如,下图中六个矩形的高度就分别是3, 1, 6, 5, 2, 3。 请找出能放在给定直方图里面积最大的矩形,它的边要与坐标轴平行。对于上面给出的例子,最大矩形如下图所示的阴影部分,面积原创 2021-07-13 16:09:58 · 118 阅读 · 0 评论 -
Z字形扫描(201412-2)
试题编号: 201412-2 试题名称: Z字形扫描 时间限制: 2.0s 内存限制: 256.0MB 问题描述: 问题描述 在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zigzag Scan)。给定一个n×n的矩阵,Z字形扫描的过程如下图所示: 对于下面的4×4的矩阵, 1 5 3 9 3 7 5 6 9 4 6 4 7 3 1 3 对其进行Z字形扫描后得到长度为1原创 2021-07-13 15:49:20 · 79 阅读 · 0 评论 -
画图(201409-2)
试题编号: 201409-2 试题名称: 画图 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在一个定义了直角坐标系的纸上,画一个(x1,y1)到(x2,y2)的矩形指将横坐标范围从x1到x2,纵坐标范围从y1到y2之间的区域涂上颜色。 下图给出了一个画了两个矩形的例子。第一个矩形是(1,1) 到(4, 4),用绿色和紫色表示。第二个矩形是(2, 3)到(6, 5),用蓝色和紫色表示。图中,一共有15个单位原创 2021-07-13 15:11:14 · 64 阅读 · 0 评论 -
窗口(201403-2)
试题编号: 201403-2 试题名称: 窗口 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域。窗口的边界上的点也属于该窗口。窗口之间有层次的区别,在多于一个窗口重叠的区域里,只会显示位于顶层的窗口里的内容。 当你点击屏幕上一个点的时候,你就选择了处于被点击位置的最顶层窗口,并且这个窗口就会被移到所有窗口的最顶层,而剩余的窗口原创 2021-07-13 00:15:54 · 155 阅读 · 0 评论 -
ISBN号码(201312-2)
试题编号: 201312-2 试题名称: ISBN号码 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个原创 2021-07-12 21:29:13 · 80 阅读 · 0 评论 -
门禁系统(201412-1)
试题编号: 201412-1 试题名称: 门禁系统 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 涛涛最近要负责图书馆的管理工作,需要记录下每天读者的到访情况。每位读者有一个编号,每条记录用读者的编号来表示。给出读者的来访记录,请问每一条记录中的读者是第几次出现。 输入格式 输入的第一行包含一个整数n,表示涛涛的记录条数。 第二行包含n个整数,依次表示涛涛的记录中每位读者的编号。原创 2021-07-12 20:30:25 · 65 阅读 · 0 评论 -
相反数(201403-1)
#include<bits/stdc++.h>using namespace std;int main(){ int n,a[501],count=0; cin>>n; for(int i=0;i<n;i++) { cin>>a[i]; } for(int i=0;i<n;i++) { if(a[i]==0) continue; for(int j=i+1;j<n;j++) { if(a[i]+a[j]==.原创 2021-07-12 19:54:06 · 72 阅读 · 0 评论 -
相邻数对(201409-1)
试题编号: 201409-1 试题名称: 相邻数对 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1。 输入格式 输入的第一行包含一个整数n,表示给定整数的个数。 第二行包含所给定的n个整数。 输出格式 输出一个整数,表示值正好相差1的数对的个数。 样例输入 6 10 2 6 3 7 8原创 2021-07-12 20:13:46 · 81 阅读 · 0 评论 -
出现次数最多的数(201312-1)
#include<bits/stdc++.h>using namespace std;int main(){ int n,a[1001],s[10000]={0},b[10000]={0},max1=0; cin>>n; for(int i=0;i<n;i++) { cin>>a[i]; s[a[i]]++; b[a[i]]=s[a[i]]; if(max1<a[i]) max1=a[i]; } sort(s,s+max.原创 2021-07-12 19:43:08 · 58 阅读 · 0 评论