- 博客(23)
- 收藏
- 关注
原创 ccf试题 日期计算
问题描述 给定一个年份y和一个整数d,问这一年的第d天是几月几日? 注意闰年的2月有29天。满足下面条件之一的是闰年: 1) 年份是4的整数倍,而且不是100的整数倍; 2) 年份是400的整数倍。 输入格式 输入的第一行包含一个整数y,表示年份,年份在1900到2015之间(包含1900和2015)。 输入的第二行包含一个整数d,d在1至365之间。 输出格
2017-02-28 13:55:17 416
原创 ccf试题 窗口
问题描述 在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域。窗口的边界上的点也属于该窗口。窗口之间有层次的区别,在多于一个窗口重叠的区域里,只会显示位于顶层的窗口里的内容。 当你点击屏幕上一个点的时候,你就选择了处于被点击位置的最顶层窗口,并且这个窗口就会被移到所有窗口的最顶层,而剩余的窗口的层次顺序不变。如果你点击的位置不属于任何窗口,则系统会忽略你这
2017-02-22 20:12:36 458
原创 杂想2017/2/19
时间过的真快啊,一转眼就到了我快该决定的时候。一直觉得自己不算是一等一的学习水平至少也是前几名,竞赛课堂都积极参与进去,成绩排名也看起来令人羡慕不已。很清楚地记得去找老师,介绍自己的情况的时候,我觉得我的语气里是带着自信和骄傲的。然后说了之后,老师淡淡地说,这些都没有啥用,你做的东西也都是没有挑战性的,你怎么没有早点来。。有一个词我觉得老师说的很对,不够刻苦,老师说,你在acm一年都没有拿到国家级的
2017-02-19 19:38:48 556
原创 ccf试题 消除类游戏
问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。当有多处可以被消除时,这些地方的棋子将同时被消除。 现在给你一个n行m列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。 请注意:一个棋子可能在某一行和某一列同
2017-02-16 16:29:13 450
原创 ccf试题 俄罗斯方块
问题描述 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏。 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块。每一轮,都会有一个新的由4个小方块组成的板块从方格图的上方落下,玩家可以操作板块左右移动放到合适的位置,当板块中某一个方块的下边缘与方格图上的方块上边缘重合或者达到下边界时,板块不再移动,如果此时方格图的某一行全放满了方块
2017-02-15 20:18:09 3025 3
原创 ccf试题 火车购票
玩了好几天,这道题也不是今天才开始做,磨蹭到现在才做出来,水平真是大不如前啊。。本来是想递归,一来递归好久没用,二来比较简单,琢磨好一会儿还是觉得不好标记结果来输出,所以还是回归正常模拟。总算做出来了,毕竟才第二题,没算法,用的时间太长了,下次要注意啦~问题描述 请实现一个铁路购票系统的简单座位分配算法,来处理一节车厢的座位分配。 假设一节车厢有20排、每一排5个座位。为方便起见,我们用
2017-02-13 21:40:53 692
原创 ccf试题 相邻数对
问题描述 给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1。 输入格式 输入的第一行包含一个整数n,表示给定整数的个数。 第二行包含所给定的n个整数。 输出格式 输出一个整数,表示值正好相差1的数对的个数。 样例输入 6 10 2 6 3 7 8 样例输出 3 样例说明 值正好相差1的数对包括(2, 3), (6, 7), (7, 8)。
2017-02-08 11:28:01 701
原创 ccf试题 图像旋转
问题描述 旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆时针旋转90度。 计算机中的图像表示可以用一个矩阵来表示,为了旋转一个图像,只需要将对应的矩阵旋转即可。 输入格式 输入的第一行包含两个整数n, m,分别表示图像矩阵的行数和列数。 接下来n行每行包含m个整数,表示输入的图像。 输出格式 输出m行,每行包含n个整数,表示原始矩阵逆时针旋转90度后的矩
2017-02-08 10:00:58 353
原创 ccf试题 门禁系统
问题描述 涛涛最近要负责图书馆的管理工作,需要记录下每天读者的到访情况。每位读者有一个编号,每条记录用读者的编号来表示。给出读者的来访记录,请问每一条记录中的读者是第几次出现。 输入格式 输入的第一行包含一个整数n,表示涛涛的记录条数。 第二行包含n个整数,依次表示涛涛的记录中每位读者的编号。 输出格式 输出一行,包含n个整数,由空格分隔,依次表示每条记录中的读者编号是第
2017-02-08 09:43:30 466
原创 ccf试题 数位之和
问题描述 给定一个十进制整数n,输出n的各位数字之和。 输入格式 输入一个整数n。 输出格式 输出一个整数,表示答案。 样例输入 20151220 样例输出 13 样例说明 20151220的各位数字之和为2+0+1+5+1+2+2+0=13。 评测用例规模与约定 所有评测用例满足:0 ≤ n ≤ 1000000000。直接用字符串,也很简单#inclu
2017-02-07 21:41:38 324
原创 ccf试题 相反数
问题描述 有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。 输入格式 第一行包含一个正整数 N。(1 ≤ N ≤ 500)。 第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过1000,保证这些整数各不相同。 输出格式 只输出一个整数,即这 N 个数中包含多少对相反数。 样例输入 5 1 2 3 -1
2017-02-07 21:37:11 384
原创 ccf试题 出现次数最多的数
问题描述 给定n个正整数,找出它们中出现次数最多的数。如果这样的数有多个,请输出其中最小的一个。 输入格式 输入的第一行只有一个正整数n(1 ≤ n ≤ 1000),表示数字的个数。 输入的第二行有n个整数s1, s2, …, sn (1 ≤ si ≤ 10000, 1 ≤ i ≤ n)。相邻的数用空格分隔。 输出格式 输出这n个次数中出现次数最多的数。如果这样的数有多个
2017-02-07 21:22:52 667
原创 ccf试题 折点计数
问题描述 给定n个整数表示一个商店连续n天的销售量。如果某天之前销售量在增长,而后一天销售量减少,则称这一天为折点,反过来如果之前销售量减少而后一天销售量增长,也称这一天为折点。其他的天都不是折点。 给定n个整数a1, a2, …, an表示销售量,请计算出这些天总共有多少个折点。 为了减少歧义,我们给定的数据保证:在这n天中相邻两天的销售量总是不同的,即ai-1≠ai。注意,如果两天
2017-02-07 20:54:33 393
原创 ccf试题 最大波动
问题描述 小明正在利用股票的波动程度来研究股票。小明拿到了一只股票每天收盘时的价格,他想知道,这只股票连续几天的最大波动值是多少,即在这几天中某天收盘价格与前一天收盘价格之差的绝对值最大是多少。 输入格式 输入的第一行包含了一个整数n,表示小明拿到的收盘价格的连续天数。 第二行包含n个正整数,依次表示每天的收盘价格。 输出格式 输出一个整数,表示这只股票这n天中的最大波动
2017-02-07 16:37:23 303
原创 ccf试题 压缩代码
题外话: 这道题是典型的石子合并问题。 所谓石子问题,就是有N堆石子,现要将石子有序的合并成一堆,规定如下:每次只能移动2堆石子合并,合并花费为新合成的一堆石子的数量。求将这N堆石子合并成一堆的总花费最小(或最大)。 这类问题有三种情况:每次移动任意两堆石子(赫夫曼问题)每次取最小的两堆石子相加,直到合并为一堆#include <iostream>#include<stdio.h>#i
2017-02-06 22:11:30 343
原创 list容器
list 容器实现了双向链表的数据结构,数据元素是通过链表指针串连成逻辑意义上的线性表,这样,对链表的任一位置的元素进行插入、删除和查找都是极快速的。list 的每个节点有三个域:前驱元素指针域、数据域和后继元素指针域。由于 list 对象的节点并不要求在一段连续的内存中,所以,对于迭代器,只能通过“++” 或“- -”的操作将迭代器移动到后继/前驱节点元素处。而不能对迭代器进
2017-02-03 18:33:37 414
原创 vector 向量容器
vector 向量容器不但能像数组一样对元素进行随机访问,还能在尾部插入元素,是一种简单、高效的容器,完全可以代替数组。头文件:#include vector 容器的下标是从0 开始计数的.对于vector 容器的容量定义,可以事先定义一个固定大小,事后, 可以随时调整其大小;也可以事先不定义,随时使用push_back()方法从尾部扩张元素,通常使用 pu
2017-02-03 18:32:53 447
原创 priority_queue 优先队列容器
其他与队列相同,一般情况下就是大的先出队重载“struct Info{string name;float score;//重载“bool operator {//按score 由小到大排列。如果要由大到小排列,使用“>”号即可return a.score}};//定义优先队列,元素类型为Info 结构体priority_queue pq;//
2017-02-03 18:32:07 237
原创 set容器
平衡二叉检索树的检索使用中序遍历算法,检索效率高于vector、deque 和list 等容器。另外,采用中序遍历算法可将键值由小到大遍历出来,所以,可以理解为平衡二叉检索树在插入元素时,就会自动将元素按键值由小到大的顺序排列。对于 set 容器中的键值,不可直接去修改。因为如果把容器中的一个键值修改了,set容器会根据新的键值旋转子树,以保持新的平衡,这样,修改的键值
2017-02-03 18:31:17 283
原创 ccf试题 权限查询
问题描述 授权 (authorization) 是各类业务系统不可缺少的组成部分,系统用户通过授权机制获得系统中各个模块的操作权限。 本题中的授权机制是这样设计的:每位用户具有若干角色,每种角色具有若干权限。例如,用户 david 具有 manager 角色,manager 角色有 crm:2 权限,则用户 david 具有 crm:2 权限,也就是 crm 类权限的第 2 等级的权限。
2017-02-03 18:29:16 287
原创 string类型
头文件:#include string s : 创建了字符串对象 s,s 是一个空字符串,其长度为0:给string对象赋值:1. string s; s="hello,C++STL.";2.string s; char ss[5000];//scanf 的输入速度比cin 快得多//scanf 是C 语言的函数,不支持string 对象
2017-02-03 17:02:51 237
原创 map容器
map 映照容器的数据结构也是采用红黑树来实现的,插入元素的键值不允许重复,比 较函数只对元素的键值进行比较,元素的各项数据可通过键值检索出来。头文件:#include map 创建、元素插入和遍历访问//定义map 对象,当前没有任何元素map m;//插入元素,按键值的由小到大放入黑白树中m["Jack"]=98.5;m["Bomi"]=96
2017-02-03 17:01:50 329
原创 c++和c的头文件区分
一直都是胡乱用,也没有具体查过,今天闲来无事,一探究竟(以下内容来自百度和自己总结,如有错误,希望指正)c语言头文件有.h,且里面声明的实体都是全局的。而c++标准库的头文件不带.h,且里面的实体都是声明在名空间std里。举个例子: iostream.h里面定义的所有类以及对象都是在全局空间里,所以你可以直接用cout;但在iostream里面,它所定义的东西都在名字空间std里面。所以你必须
2017-02-03 13:07:38 1182
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人