- 博客(58)
- 收藏
- 关注
原创 CSP-CCF★★★201909-2小明种苹果(续)★★★
误区:×用最后一次正数(即最后一次统计苹果个数)-第一次统计(即ai1)判断已经落果后不能退出循环统计下一棵树,也不能直接D++。例:6 75 -5 68 -3 65 -4 60。D++也只能写在for循环外面,不然会重复计数。还要继续计算出最后该棵苹果树的苹果个数。代码:省略了头文件和main()
2024-09-20 16:37:24
635
原创 CSP-CCF★★★201903-2二十四点★★★
这应该是我写的最长时间的题目了,其实从上周二就开始写这道题,关键第一次看这题的时候,还觉得它很简单,以为不就是算术运算吗。真是啪啪打脸。根本原因还是自己忘了之前学过的栈的应用之表达式求值,它是做本题的最好方法。这次,又把它重新学了一下,感觉有了更深刻的体会和新的认识。
2024-09-15 20:19:55
1087
原创 栈的应用之表达式求值(前缀、中缀、后缀)
继续遍历,出现“/”,与此时栈顶元素“*”优先级相等,出栈顶元素*,并且进行运算3*6=18而不是6*3=18,入栈OPND,然后“/”入栈OPTR。继续遍历,2入栈,-比/优先级低,所以/出栈,OPND也要出栈2个元素,计算18/2=9,入栈,-也入栈;得到9后,继续遍历,5入栈,无元素再遍历,所以9-5=4,-出栈,而OPND只剩一个4,得到结果。遇到+运算符,因此弹出3和4(3为栈顶元素,4为次顶元素),计算出3+4的值,得7,再将7入栈;次栈顶元素加减乘除栈顶元素!次栈顶元素加减乘除栈顶元素!
2024-09-15 19:34:19
1483
原创 CSP-CCF★★★201812-2小明放学★★★
目录一、问题描述二、解答(1)注意:(2)80分版:(3)100分版:三、总结一、问题描述二、解答(1)注意:题目的n小于等于10的5次方,而时间t不超过10的6次方,那么回家的时间最大大概为n*t,即10的11次方,显然超过了int的范围(10的9次方)。所以在这里涉及到计算总时间的都要使用long long型。(2)80分版:思路:大情况:k==0和k!=0;在k!=0中又分三种小情况:t>time;t==time;t<ti
2024-09-10 20:34:55
587
原创 CSP-CCF★★201809-2买菜★★
他们都在广场上装车的时候会聊天,所以不装车是去买菜了,怎么会聊天呢。浪费40多分钟,无奈重头再来。又是脑子不清晰,没有沉下心来梳理情况,就直接一股脑地写代码,结果可想而知,又又又花了很长时间,因为情况没有考虑周全。最后的最后,才把四种情况给理清。所以谨记:①题目要认真看,理解错题意是大忌!②不要一股脑地写代码,先沉下心来,勤动笔用纸用脑,将所有的情况记录下来,并梳理清楚。
2024-09-10 08:59:12
759
1
原创 CSP-CCF★★201803-2碰撞的小球★★
有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒。因为所有小球的初始位置都为偶数,而且线段的长度为偶数,可以证明,不会有三个小球同时相撞,小球到达线段端点以及小球之间的碰撞时刻均为整数。输入的第一行包含三个整数n, L, t,用空格分隔,分别表示小球的个数、线段长度和你需要计算t秒之后小球的位置。现在,告诉你线段的长度L,小球数量n,以及n个小球的初始位置,请你计算t秒之后,各个小球的位置。, an,用空格分隔,表示初始时刻n个小球的位置。
2024-09-09 21:16:29
1130
原创 CSP-CCF★★★201712-2游戏★★★
类似于约瑟夫环问题,但也仅仅是类似。报数问题是我的一道坎,上次的报数问题也花了我好长时间,这次是更长。学了STL的弊端:不知变通,一味地使用vector,以为它是万能的,但是有时候也不是。更多的问题依然是:考虑问题要全面(不然很容易陷入死胡同),就比如说这一题,我没有考虑到vector删除元素时,不只是找到该元素的所在位置就可以了,还应该想到如果先删除前面的元素,后面的元素所在位置就变了,但先删除后面元素,就不会影响前面的元素位置,所以不能立马删除,而是先记下位置,最后统一删除(从后往前删)。
2024-09-09 17:39:26
1603
原创 CSP-CCF ★★201709-2公共钥匙盒★★
每次取钥匙的时候,老师们都会找到自己所需要的钥匙将其取走,而不会移动其他钥匙。每次还钥匙的时候,还钥匙的老师会找到最左边的空的挂钩,将钥匙挂在这个挂钩上。个教室,按照规定,所有的钥匙都必须放在公共钥匙盒里,老师不能带钥匙回家。每次老师上课前,都从公共钥匙盒里找到自己上课的教室的钥匙去开门,上完课后,再将钥匙放回到钥匙盒中。位老师要上课,给出每位老师所需要的钥匙、开始上课的时间和上课的时长,假设下课时间就是还钥匙时间,请问最终钥匙盒里面钥匙的顺序是怎样的?对于30%的评测用例,1 ≤。时刻2后为1X345;
2024-09-08 16:33:59
1074
原创 CSP-CCF★★201703-2学生排队★★
刚开始看这一题的时候,第一反应是用链表,但是写着写着,发现如果用链表的话就太复杂了,还要设置两个指针,弄成双向链表,因为还有1个向前移动。然后我想到数组之间的交换,就转而用数组的方式,没有用很长时间,自然而然就写出来了。上网搜索发现巧妙与熟练运用vector的方法也不是很难。综上,说实话,这道题目真的不难,只是我一开始就想的太复杂了,耽误了很长时间。我也不知道为什么有时候我就总会把简单问题复杂化,归根结底,可能还是我本身能力的问题吧。还是得加强思维上的锻炼啊。
2024-09-06 22:54:30
781
原创 CSP-CCF ★201612-2工资计算★
本题和以前学过的分段函数的知识很像,但是也不太好做,一方面是计算很多,另一方面还是数据类型的问题:int,double等,要十分注意了。
2024-09-05 18:29:59
524
原创 CSP-CCF★201609-2火车购票★
虽然最后靠自己做出来了,但也是调试了好多遍,花了不少时间。归根结底还是:一定要保持思路清晰,不能老是犯低级错误和不该犯的错误!!!
2024-09-05 18:28:55
642
原创 CSP-CCF ★★★201604-2俄罗斯方块★★★
本题我被题目的庞大给吓到了,没有什么思路,也没怎么思考,就选择上网搜索现成的代码,发现其实并不难,又开始后悔当时为什么不自己独立思考。虽然我现在写出来了答案,但是并不是我自己的,只不过是仿照别人的思路套过来的。到了真正的考场,我该怎么办呢,不能上网搜索,只能靠自己。所以说:在今后的解题过程中,还是要多多独立思考、自己解决,不能不思考、觉得难、思考一会儿就放弃转而坐享其成。
2024-09-04 18:35:04
1077
原创 CSP-CCF ★201512-2 消除类游戏★
列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。如果一个方格中的棋子被消除,则对应的方格输出0,否则输出棋子的颜色编号。棋盘中所有的1以及最后一行的3可以被同时消除,其他的方格中的棋子均保留。个整数,用空格分隔,分别表示每一个方格中的棋子的颜色。列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。棋盘中第4列的1和第4行的2可以被消除,其他的方格中的棋子均保留。,用空格分隔,分别表示棋盘的行数和列数。
2024-09-04 18:33:54
443
原创 CSP-CCF 201509-2 日期计算
表示年份,年份在1900到2015之间(包含1900和2015)。注意闰年的2月有29天。输出两行,每行一个整数,分别表示答案的月份和日期。1) 年份是4的整数倍,而且不是100的整数倍;2) 年份是400的整数倍。输入的第一行包含一个整数。输入的第二行包含一个整数。
2024-09-03 16:53:13
314
原创 CSP-CCF★★★201503-2数字排序★★★
本题虽然题目不长,但是涉及到的知识很多,需要用到很多STL,考验其综合运用的能力。挺难的,也花了我非常多的时间去整理和总结,但是也确实让我收获了不少干货。
2024-09-03 16:47:48
615
原创 CSP-CCF 201412-2 Z字形扫描
这个题目花了我好长时间,原先打算硬算,但是那样的话就太太太太复杂了,然后静下心来找规律,还真是找到了一些,虽然也挺复杂的,但是比硬解要好些。tip:要擅长找规律、静下心来找规律。
2024-08-24 09:45:46
507
原创 CSP-CCF 201409-2 画图
图中,一共有15个单位的面积被涂上颜色,其中紫色部分被涂了两次,但在计算面积时只计算一次。在实际的涂色过程中,所有的矩形都涂成统一的颜色,图中显示不同颜色仅为说明方便。在一个定义了直角坐标系的纸上,画一个(x1,y1)到(x2,y2)的矩形指将横坐标范围从x1到x2,纵坐标范围从y1到y2之间的区域涂上颜色。接下来n行,每行4个非负整数,分别表示要画的矩形的左下角的横坐标与纵坐标,以及右上角的横坐标与纵坐标。输入的第一行包含一个整数n,表示要画的矩形的个数。输出一个整数,表示有多少个单位的面积被涂上颜色。
2024-08-23 09:24:41
314
原创 CSP-CCF 201403-2 窗口
当看到这一题的时候,首先想到的是数组,但是又觉得数组交换起来很麻烦,然后重新复习了一下链表,使用链表来做。但是后来发现使用数组其实也没那么麻烦。
2024-08-23 08:36:51
622
原创 CSP-CCF 201312-2 ISBN号码
实用库/函数之类型转换-优快云博客实用库/函数之string的用法-优快云博客3.依然是那句话:细节,细节,一定要注重细节!!!
2024-08-22 08:55:10
743
原创 CSP-CCF 202312-1 仓库规划
刚开始写依然是因为考虑问题不全面,写错了第二个for循环i的初始条件,脑子抽了以为是当前行与后一行进行比较,结果当然不对。应该是当前行与所有的行即所有仓库点进行比较(包括自己)。
2024-08-21 08:20:01
261
原创 CSP-CCF 202305-1 重复局面
国际象棋每一个局面可以用大小为 8×8 的字符数组来表示,其中每一位对应棋盘上的一个格子。六种棋子王、后、车、象、马、兵分别用字母 k、q、r、b、n、p 表示,其中大写字母对应白方、小写字母对应黑方。接下来 8×n 行,依次输入第 1 到第 n 步棋后的局面。具体来说每行包含一个长度为 8 的字符串,每 8 行字符串共 64 个字符对应一个局面。第 6、7 步后的局面分别与第 2、3 步后的局面相同。第 8 步后的局面与上图相对应。输出共 n 行,每行一个整数,表示该局面是第几次出现。
2024-08-20 22:18:37
919
原创 CSP-CCF 202303-1 田地丈量
本题看似简单,但是情况太多了,如果盲目地写,以我的能力写不出来,也花了我很长很长时间。每块田地可视为平面直角坐标系下的一块矩形区域,由左下角坐标 (𝑥1,𝑦1) 和右上角坐标 (𝑥2,𝑦2) 唯一确定,且满足 𝑥1<𝑥2、𝑦1<𝑦2。方法二:方法1的简化,发现规律:长=min(x2,a)-max(x1,0),宽=min(y2,b)-max(y1,0),但是注意会有小于0的情况,即没有重叠部分。接下来 𝑛 行,每行包含空格分隔的四个整数 𝑥1、𝑦1、𝑥2 和 𝑦2,表示一块田地的位置。输入共 𝑛+1 行。
2024-08-20 22:18:10
703
原创 CSP-CCF 202209-1 如此编码
已知某次测验包含 n 道单项选择题,其中第 i 题(1≤i≤n)有 ai 个选项,正确选项为 bi,满足 ai≥2 且 0≤bi<ai。比如说,ai=4 表示第 i 题有 4 个选项,此时正确选项 bi 的取值一定是 0、1、2、3 其中之一。全部的测试数据满足:1≤n≤20,ai≥2 且 cn≤109(根据题目描述中的定义 cn 表示全部 ai 的乘积)。输出仅一行,包含用空格分隔的 n 个整数 b1,b2,⋯,bn,依次表示每道选择题的正确选项。首先定义一个辅助数组 ci,表示数组 ai 的前缀乘积。
2024-08-19 21:43:34
360
原创 CSP-CCF 202203-1 未初始化警告
i <= k;//不写这个的话,if条件就改为if (a[y] == 0&&y!num++;a[x] = 1;//或者写成a[x]++;return 0;bool b[N];i <= k;int x, y;//if (x)等价于if (x!=0)、if (!x)等价于if (x==0)if(!
2024-08-18 08:49:35
690
原创 实用库/函数之类型转换
作用:可以实现字符型数组中单个数字字符char[i]与int[i]之间的转换,值相同,且一一对应。sscanf是字符转换为数字,即把字符数组str中的内容以%d的格式写到n中(从左至右)从ASCII表中可以看到:字符(char)1对应的十进制(int)是49,依次类推。例:double r=12.56 (int)r//输出是12,char * : 指向生成的字符串, 同*string。,atol分别对应的是整型,double型,long型。例1:把字符数组str中的内容以%d的格式写到n中。
2024-08-17 20:46:43
1345
原创 CSP-CCF 202109-1 数组推导
原因依然在于没有认真审题,题目已经说B的范围在0—10的5次方,所以当当前数和前一个数相等时,该数的最小值应该是0,而不是B[1],但是我错误的认为最小值是B[1],样例是通过了,但如果B[1]不是0且后面有重复数的时候,结果就不对了。依然是:审题要仔细,不放过每一个细节,真正弄懂题意,考虑问题要全面,不要再犯低级错误了!如果不是大于前一个值或者说与前一个值相等,当前值的最小值就是0,最大值就是本身。否则,最小值还是本身。
2024-08-17 09:40:37
331
原创 实用库/函数之字符数组的使用
c单个字符能够识别空格跟换行并将其输入;&cgetchar单个字符 自动识别出空格和换行并将其输入%s一个字符串并存在字符数组里通过空格或换行来识别一个字符串的结束。gets一行字符串识别换行作为输入的结束。
2024-08-16 21:36:32
1135
原创 CSP-CCF 202012-1 期末预测之安全指数
刚开始看到题目被没见过的ReLU吓到了,以为会很难,认真读懂题目后,感觉应该是我这些天做过的算最简单的了。所以说:不要被没见过的新鲜事物吓到,要迎难而上!
2024-08-16 08:05:29
382
原创 CSP-CCF 202009-1 检测点查询
本题我的思路、代码一开始是对的,但是这道题目仍然花费了我不少时间。原因在于我测试样例2的时候,给出的结果一直是1、2、3,我一直以为是我的思路出现了问题,但是想了无数遍、也问了AI无数遍,仍然没发现我的逻辑上有什么问题。最后的最后,我突然想到样例2中的根号2是1.414,四舍五入保留整数是1,显然这样与后面的1一样,就会导致最后的结果出错。于是,我将int类型全部换成了double类型,还是不行。所以,我没有再用sqrt()函数,直接求距离的平方而非距离,这样一来结果果然正确了。
2024-08-15 14:30:03
839
原创 CSP-CCF 201912-1 报数
思路:关键在于“如果需要报出的数是 7 的倍数或含有数字 7 则直接跳过”,对于7 的倍数:i%7==0;而对于含有数字7:可以自己写一个check函数来检查。刚开始做这一题,一点思路都没有,无奈只能上网搜索,才算有了一些思路。说明我的编程能力还是有待加强!写该函数可以联想到之前的求一个数的各个位上的数,先进行模10运算取余,再除以10,直到为0。这个我一开始并没有想到,还是得学会灵活变通!
2024-08-14 20:07:08
394
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人