CCF
exmy
Less is more, and more is less.
展开
-
CCF-201512-1 数位之和
第一次参加CCF考试,临考前夕刷套真题试试水。题解签到题,不表。#include <iostream>#include <string>#include <algorithm>using namespace std;int main(){ string num; int sum = 0; cin >> num; for(int i = 0; i < (int)nu原创 2016-04-07 21:27:11 · 592 阅读 · 0 评论 -
CCF-201412-1 门禁系统
问题描述 涛涛最近要负责图书馆的管理工作,需要记录下每天读者的到访情况。每位读者有一个编号,每条记录用读者的编号来表示。给出读者的来访记录,请问每一条记录中的读者是第几次出现。输入格式 输入的第一行包含一个整数n,表示涛涛的记录条数。 第二行包含n个整数,依次表示涛涛的记录中每位读者的编号。输出格式 输出一行,包含n个整数,由空格分隔,依次表示每条记录中的读者编号是第几次出现。样例输入5原创 2016-09-04 21:41:36 · 630 阅读 · 0 评论 -
CCF-201412-3 集合竞价
问题描述 某股票交易所请你编写一个程序,根据开盘前客户提交的订单来确定某特定股票的开盘价和开盘成交量。 该程序的输入由很多行构成,每一行为一条记录,记录可能有以下几种: 1. buy p s 表示一个购买股票的买单,每手出价为p,购买股数为s。 2. sell p s 表示一个出售股票的卖单,每手出价为p,出售股数为s。 3. cancel i表示撤销第i行的记录。原创 2016-09-04 21:47:54 · 886 阅读 · 0 评论 -
CCF-201412-2 Z字形扫描
问题描述 在图像编码的算法中,需要将一个给定的方形矩阵进行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字形扫描后得到长度为16的序列: 1 5 3 9 7 3 9 5 4 7 3 6 6原创 2016-09-04 21:43:50 · 790 阅读 · 0 评论 -
CCF-201409-4 最优配餐(BFS)
问题描述 栋栋最近开了一家餐饮连锁店,提供外卖服务。随着连锁店越来越多,怎么合理的给客户送餐成为了一个急需解决的问题。 栋栋的连锁店所在的区域可以看成是一个n×n的方格图(如下图所示),方格的格点上的位置上可能包含栋栋的分店(绿色标注)或者客户(蓝色标注),有一些格点是不能经过的(红色标注)。 方格图中的线表示可以行走的道路,相邻两个格点的距离为1。栋栋要送餐必须走可以行走的道路,原创 2016-09-09 10:36:21 · 603 阅读 · 0 评论 -
CCF-201412-4 最优灌溉(最小生成树)
问题描述 雷雷承包了很多片麦田,为了灌溉这些麦田,雷雷在第一个麦田挖了一口很深的水井,所有的麦田都从这口井来引水灌溉。 为了灌溉,雷雷需要建立一些水渠,以连接水井和麦田,雷雷也可以利用部分麦田作为“中转站”,利用水渠连接不同的麦田,这样只要一片麦田能被灌溉,则与其连接的麦田也能被灌溉。 现在雷雷知道哪些麦田之间可以建设水渠和建设每个水渠所需要的费用(注意不是所有麦田之间都可以建立水渠)原创 2016-09-04 21:50:58 · 893 阅读 · 0 评论 -
CCF-201604-4 游戏(三维BFS)
问题描述 小明在玩一个电脑游戏,游戏在一个n×m的方格图上进行,小明控制的角色开始的时候站在第一行第一列,目标是前往第n行第m列。 方格图上有一些方格是始终安全的,有一些在一段时间是危险的,如果小明控制的角色到达一个方格的时候方格是危险的,则小明输掉了游戏,如果小明的角色到达了第n行第m列,则小明过关。第一行第一列和第n行第m列永远都是安全的。 每个单位时间,小明的角色必须向上下左右四原创 2016-09-02 11:46:32 · 546 阅读 · 0 评论 -
CCF-201604-3 路径解析(模拟)
问题描述 在操作系统中,数据通常以文件的形式存储在文件系统中。文件系统一般采用层次化的组织形式,由目录(或者文件夹)和文件构成,形成一棵树的形状。文件有内容,用于存储数据。目录是容器,可包含文件或其他目录。同一个目录下的所有文件和目录的名字各不相同,不同目录下可以有名字相同的文件或目录。 为了指定文件系统中的某个文件,需要用路径来定位。在类 Unix 系统(Linux、Max OS X、Fr原创 2016-09-02 11:36:45 · 849 阅读 · 0 评论 -
CCF-201604-2 俄罗斯方块(模拟)
问题描述 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏。 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块。每一轮,都会有一个新的由4个小方块组成的板块从方格图的上方落下,玩家可以操作板块左右移动放到合适的位置,当板块中某一个方块的下边缘与方格图上的方块上边缘重合或者达到下边界时,板块不再移动,如果此时方格图的某一行全放满了方块,则原创 2016-09-02 11:21:08 · 842 阅读 · 0 评论 -
CCF-201509-4 高速公路(有向强连通分量)
问题描述 某国有n个城市,为了使得城市间的交通更便利,该国国王打算在城市之间修一些高速公路,由于经费限制,国王打算第一阶段先在部分城市之间修一些单向的高速公路。 现在,大臣们帮国王拟了一个修高速公路的计划。看了计划后,国王发现,有些城市之间可以通过高速公路直接(不经过其他城市)或间接(经过一个或多个其他城市)到达,而有的却不能。如果城市A可以通过高速公路到达城市B,而且城市B也可以通过高速原创 2016-04-09 14:56:55 · 1594 阅读 · 0 评论 -
CCF-201509-3 模板生成系统
题解注意下细节……#include <iostream>#include <string>#include <algorithm>#include <vector>#include <cstdio>#include <fstream>#include <map>using namespace std;vector<string> tem;int n, k;int main(){#原创 2016-04-09 14:49:47 · 1595 阅读 · 0 评论 -
CCF-201512-4 送货(欧拉路径)
问题描述 为了增加公司收入,F公司新开设了物流业务。由于F公司在业界的良好口碑,物流业务一开通即受到了消费者的欢迎,物流业务马上遍及了城市的每条街道。然而,F公司现在只安排了小明一个人负责所有街道的服务。 任务虽然繁重,但是小明有足够的信心,他拿到了城市的地图,准备研究最好的方案。城市中有n个交叉路口,m条街道连接在这些交叉路口之间,每条街道的首尾都正好连接着一个交叉路口。除开街道的首尾端原创 2016-04-07 22:07:00 · 2133 阅读 · 3 评论 -
CCF-201503-5 最小花费
问题描述 C国共有n个城市。有n-1条双向道路,每条道路连接两个城市,任意两个城市之间能互相到达。小R来到C国旅行,他共规划了m条旅行的路线,第i条旅行路线的起点是si,终点是ti。在旅行过程中,小R每行走一单位长度的路需要吃一单位的食物。C国的食物只能在各个城市中买到,而且不同城市的食物价格可能不同。 然而,小R不希望在旅行中为了购买较低价的粮食而绕远路,因此他总会选择最近的路走。现在,请原创 2016-09-04 21:39:42 · 1774 阅读 · 0 评论 -
CCF- 201503-4 网络延时(树的直径)
问题描述 给定一个公司的网络,由n台交换机和m台终端电脑组成,交换机与交换机、交换机与电脑之间使用网络连接。交换机按层级设置,编号为1的交换机为根交换机,层级为1。其他的交换机都连接到一台比自己上一层的交换机上,其层级为对应交换机的层级加1。所有的终端电脑都直接连接到交换机上。 当信息在电脑、交换机之间传递时,每一步只能通过自己传递到自己所连接的另一台电脑或交换机。请问,电脑与电脑之间传递消原创 2016-09-03 19:08:41 · 567 阅读 · 0 评论 -
CCF-201503-3 节日
问题描述 有一类节日的日期并不是固定的,而是以“a月的第b个星期c”的形式定下来的,比如说母亲节就定为每年的五月的第二个星期日。 现在,给你a,b,c和y1, y2(1850 ≤ y1, y2 ≤ 2050),希望你输出从公元y1年到公元y2年间的每年的a月的第b个星期c的日期。 提示:关于闰年的规则:年份是400的整数倍时是闰年,否则年份是4的倍数并且不是100的倍数时是闰年,其他年原创 2016-09-03 19:02:13 · 514 阅读 · 0 评论 -
CCF-201512-3 画图
问题描述 用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术。例如,下图是用 ASCII 字符画出来的 CSPRO 字样。 .._._.._.._…_.. ././.||...|..../._.. |.|…___.|.|).|.|).|.|.|.| |.|.).|.._/|...<|.|_|.| .____|_/||…||._原创 2016-04-07 21:46:55 · 2072 阅读 · 3 评论 -
CCF-201509-1 数列分段
题解水题。#include <iostream>using namespace std;const int maxn = 1000 + 10;int a[maxn];int main(){ int n; cin >> n; for(int i = 0; i < n; ++i) cin >> a[i]; int ans = 1; int cnt = 1;原创 2016-04-09 14:45:51 · 1145 阅读 · 0 评论 -
CCF-201509-2 日期计算
题解水过……#include <iostream>using namespace std;int main(){ int month[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; int y, d, m; cin >> y >> d; if((y % 4 == 0 && y % 100 != 0) ||原创 2016-04-09 14:47:49 · 832 阅读 · 0 评论 -
CCF-201512-5 矩阵
问题描述 创造一个世界只需要定义一个初状态和状态转移规则。 宏观世界的物体运动规律始终跟物体当前的状态有关,也就是说只要知道物体足够多的状态信息,例如位置、速度等,我们就能知道物体之后任意时刻的状态。 现在小M创造了一个简化的世界。 这个世界中,时间是离散的,物理规律是线性的:世界的初始状态可以用一个m维向量b(0)表示,状态的转移方式用m×m的矩阵A表示。 若已知原创 2016-04-07 23:16:11 · 2211 阅读 · 1 评论 -
CCF-201509-5 最佳文章
问题描述 小明最近在研究一门新的语言,叫做Q语言。Q语言单词和文章都可以用且仅用只含有小写英文字母的字符串表示,任何由这些字母组成的字符串也都是一篇合法的Q语言文章。 在Q语言的所有单词中,小明选出了他认为最重要的n个。使用这些单词,小明可以评价一篇Q语言文章的“重要度”。 文章“重要度”的定义为:在该文章中,所有重要的Q语言单词出现次数的总和。其中多次出现的单词,不论是否发生包含原创 2016-04-09 20:48:01 · 1480 阅读 · 0 评论 -
CCF- 201409-1 相邻数对
问题描述 给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1。输入格式 输入的第一行包含一个整数n,表示给定整数的个数。 第二行包含所给定的n个整数。输出格式 输出一个整数,表示值正好相差1的数对的个数。样例输入6 10 2 6 3 7 8样例输出3样例说明 值正好相差1的数对包括(2, 3), (6, 7), (7, 8)。评测用例规模与约定 1<=n<=1000,给原创 2016-09-09 10:25:41 · 511 阅读 · 0 评论 -
CCF-201409-2 画图
问题描述 在一个定义了直角坐标系的纸上,画一个(x1,y1)到(x2,y2)的矩形指将横坐标范围从x1到x2,纵坐标范围从y1到y2之间的区域涂上颜色。 下图给出了一个画了两个矩形的例子。第一个矩形是(1,1) 到(4, 4),用绿色和紫色表示。第二个矩形是(2, 3)到(6, 5),用蓝色和紫色表示。图中,一共有15个单位的面积被涂上颜色,其中紫色部分被涂了两次,但在计算面积时只计算一原创 2016-09-09 10:27:40 · 472 阅读 · 0 评论 -
CCF-201409-3 字符串匹配
问题描述 给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行。你的程序还需支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小写看作不同的字符;当选项关闭时,表示同一个字母的大写和小写看作相同的字符。 输入格式 输入的第一行包含一个字符串S,由大小写英文字母组成。 第二行包含一个数字,表示大小写敏感的选项,当数字为0时表示大小写不敏感,当数字为1时表示大小写敏感。原创 2016-09-09 10:29:06 · 404 阅读 · 0 评论 -
CCF-201604-1 折点计数
题解#include <iostream>using namespace std;int main(){ int n; int a[1001]; cin >> n; int ans = 0; for(int i = 0; i < n; ++i) cin >> a[i]; for(int i = 1; i < n - 1; ++i){ i原创 2016-09-02 11:17:47 · 713 阅读 · 0 评论 -
CCF-201503-1 图像旋转
问题描述 旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆时针旋转90度。 计算机中的图像表示可以用一个矩阵来表示,为了旋转一个图像,只需要将对应的矩阵旋转即可。输入格式 输入的第一行包含两个整数n, m,分别表示图像矩阵的行数和列数。 接下来n行每行包含m个整数,表示输入的图像。输出格式 输出m行,每行包含n个整数,表示原始矩阵逆时针旋转90度后的矩阵。样例输入2 3原创 2016-09-03 18:57:51 · 368 阅读 · 0 评论 -
CCF-201503-2 数字排序
问题描述 给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出。输入格式 输入的第一行包含一个整数n,表示给定数字的个数。 第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数。输出格式 输出多行,每行包含两个整数,分别表示一个给定的整数和它出现的次数。按出现次数递减的顺序输出。如果两个整数出现的次数一样多,则先输出值较小的,然后输出值较大的。样例输入12原创 2016-09-03 19:00:00 · 520 阅读 · 0 评论 -
CCF-201512-2 消除类游戏(模拟)
问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。当有多处可以被消除时,这些地方的棋子将同时被消除。 现在给你一个n行m列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。 请注意:一个棋子可能在某一行和某一列同原创 2016-04-07 21:31:54 · 1763 阅读 · 0 评论