csp刷题
文章平均质量分 52
Kerin637
这个作者很懒,什么都没留下…
展开
-
202203-3 计算资源调度器(50分代码)
csp原创 2022-06-09 21:48:56 · 400 阅读 · 3 评论 -
csp202203-2出行计划(差分)
题目链接出发-有效期+1<=做完+等待<=出发很容易看出来这道题是看每次查询的做完核酸时间+等待时间在多少个区间之内,很容易看出来应该用差分数组做,但是区间左边有可能是负数,所以将不等式整个右移2e5就好了,做题积累的经验太少,不知道数组能开这么大,事实上经过实验,这道题数组开到4e7还没问题,但是开4e8就挂了,当个经验记住吧~~#include <iostream>#include<bits/stdc++.h>using namespace std;int原创 2022-05-09 18:37:38 · 389 阅读 · 0 评论 -
第24次CSP第二题(100分)
核心思想就是将相同的加法变为求一次乘法假设arr[i]=7,arr[i+1]=10,则意味着f(7)~f(9)都为i,即f(x)的值是arr数组中相邻的两个左右元素的左元素的下标,其中x属于左右元素形成的左闭右开的区间;而g函数也是一个个长度为r的小区间中的值是相同的,假如r为5,则意味着g(0)~g(4)都为0;枚举arr相邻左右元素的时候,讨论左右元素形成的左闭右开的区间与g的小区间重合情况,将相同的加法化为乘法即可。#include <iostream>#include <原创 2021-12-10 20:23:49 · 685 阅读 · 0 评论 -
csp_碰撞的小球
题目链接使用一个结构体存储小球的位置和运动方向,每过1s就改变每个小球的位置,这可以通过一层for解决,如果到达边界就方向反向,(分析出不会有俩小球同时到边界),接着用双重for检查每个小球是否存在和它位置相同的小球,(不会同时有3小球碰撞,同一位置更不会有四个小球,因此在同一位置肯定只有一对球),改变这一对球的方向,这里有一个问题是不加处理的话,A会找到B同位置然后方向互换,B会找到A同位置然后方向互换,导致相当于没变更方向,解决方法是对每个坐标位置记录在这里碰撞的次数,初值是0,有小球在此位置原创 2021-09-11 16:17:44 · 382 阅读 · 0 评论 -
csp_201903-2二十四点
题目链接样例一输入:109+3+4x35+4x5x57-9-9+85x6/5x43+5+7+91x1+9-91x9-5/98/5+6/96x7-3x66x4+4/5使用两个栈(运算符栈op和运算数栈data)实现,是运算数的话直接入data栈,是运算符的话while(!op.empty() && isProceed(op.top(),tmp[j])),也就是运算符栈不空并且栈顶运算符的优先级高于当前的运算符就一直进行循环,循环中弹出两个操作数与op栈顶运算符运原创 2021-08-03 17:59:32 · 162 阅读 · 0 评论 -
CSP_记录一些小坑
小明种苹果续几分钟码完的代码交上去50分百思不得其解,终于还是搜了一下博客才知道有很多“英雄所见略同”的博客qwqD统计的是发生落果的树的数目,写程序时一旦发生落果就D++,同一棵树可能多次落果,但是这样写D会统计多了,最后改成根据drop数组重新统计了D这个教训就是,虽然把一些操作放在同一个循环中进行能提高效率,但是也很容易出一些隐蔽的错误,因此在时间复杂度要求不是很严格的情况下还是分开几个循环写不容易出错。...原创 2021-08-02 09:27:48 · 255 阅读 · 0 评论 -
csp_202012-2期末预测之最佳阈值(一维前缀和)
题目链接暴力的写法很简单,就是依次拿每一个同学的y值作为阈值theta,然后统计预测正确的数目,如果遇到能让预测数目更大的theta,就更新theta*和相应的预测正确的数目,双重for循环即可。#include <iostream>#include<bits/stdc++.h>using namespace std;int y[100005],result[100005];int main() { int m; cin >> m;原创 2021-07-27 13:48:14 · 436 阅读 · 0 评论 -
csp 202104-2邻域均值 二维前缀和
标准的使用二维前缀和的题目,一开始把邻域定义的范围理解成十字交叉的那种了,导致debug很久没发现错误还因此忽略了npy的几条消息导致点不快,这件事告诉我们,npy的消息一定要及时回,题目一定要认真审 qwq当然也有几点注意的地方:吸取了之前pat平均成绩排名的经验,这里没有真的算出邻域内的平均值,而以求和代替,比较sum≤t×num邻域内数字sum≤t×num_{邻域内数字}sum≤t×num邻域内数字,这样就避开了精确度的问题定义二维前缀和的时候,矩阵下标就从(1,1)到(n,n)...原创 2021-07-24 17:04:29 · 335 阅读 · 0 评论