- 博客(184)
- 资源 (16)
- 问答 (2)
- 收藏
- 关注

原创 考研算法题对应代码
剑指 Offer 40. 最小的k个数桶排序代码class Solution {public: int cnt[int(1e4 + 10)]; vector<int> getLeastNumbers(vector<int>& arr, int k) { vector<int> ans; for(int i = 0;i<arr.size();i++){ cnt[arr[i]]++;
2021-09-05 23:04:32
327
1

原创 日常刷题记录
二叉树简单题144. 二叉树的前序遍历保持两个序列对应实时对应到同一颗子树,然后递归去构建二叉树105. 从前序与中序遍历序列构造二叉树106. 从中序与后序遍历序列构造二叉树
2021-09-04 23:06:10
436

原创 csp刷题面板
20年12月份题解链接202012-1 期末预测之安全指数小模拟100分202012-2 期末预测之最佳阈值前缀和或者队列100分202012-3 带配额的文件系统–202012-4 食材运输树形dp+状压dp100分202012-5 星际旅行线段树80分20年9月份题解链接202009-1 称检测点查询202009-1 称检测点查询...
2021-02-02 13:42:34
214
1
原创 CF600E E. Lomsat gelral
E. Lomsat gelral//#include <bits/stdc++.h>//#pragma GCC optimize(2)#include <stdio.h>#include <cstring>#include <algorithm>#include <vector>#include <stack>#include <queue>#include <iostream>#includ
2021-03-22 20:45:14
297
原创 2020ccpc长春 F. Strange Memory
//#include <bits/stdc++.h>//#pragma GCC optimize(2)#include <stdio.h>#include <cstring>#include <algorithm>#include <vector>#include <stack>#include <queue>#include <iostream>#include <map>#in
2021-03-22 19:43:09
194
原创 2783: 魔法药水【二分】
小A终于来到了最后一题。小明翻找自己的背包,发现了很多能够提升自己能力值的药水。小A共发现了n种药水,第i种药水有ai瓶,使用后能使能力值加bi。但相同种类的药水,是不能连续使用的。小A觉得自己至少将能力值提升X(X>=1),才有把握AK这场新生赛。药水的味道并不好,小明想尽量少的使用药水。你能告诉小A,他至少使用多少瓶药水, 才能使自己的能力提升至少X?输出如果小A不能使自己的能力提升至少X,输出“-1”;否则输出小A最少使用的药水的数量。样例输入 Copy2 100010 2005 1
2021-03-18 16:50:41
583
1
原创 1067 Sort with Swap(0, i) (25 point(s)并查集做法
思路对于a[i] = j 的时候,将i和j加入到同一个集合中对于一个集合,如果该集合中有0,则只需要交换集合个数cnt-1,因为0是自动归位的如果该集合中没有0,就需要拿一个数跟0交换(交换次数+1),然后这个集合就有0了,交换次数为集合个数cnt-1,然后还需要将0从哪拿的再放回去(交换次数+1)所以并查集维护一下就好了,用一个记录集合元素个数会更加好写#include <iostream>#include <stdio.h>#include <algorith
2021-03-12 17:48:28
154
原创 AcWing 1058. 股票买卖 V
AcWing 1058. 股票买卖 V状态图#include <stdio.h>#include <cstring>#include <algorithm>#include <vector>#include <stack>#include <queue>#include <iostream>#include <map>#include <cmath>#include <s
2021-02-21 17:48:19
136
原创 AcWing 1057. 股票买卖 IV
AcWing 1057. 股票买卖 IV状态图有:手中有股票无:手中无股票#include <stdio.h>#include <cstring>#include <algorithm>#include <vector>#include <stack>#include <queue>#include <iostream>#include <map>#include <cmath&g
2021-02-21 17:45:06
154
原创 AcWing 1049. 大盗阿福
AcWing 1049. 大盗阿福状态图0代表不盗,1表示盗#include <stdio.h>#include <cstring>#include <algorithm>#include <vector>#include <stack>#include <queue>#include <iostream>#include <map>#include <cmath>#incl
2021-02-21 17:38:04
158
原创 P2894 [USACO08FEB]Hotel G 【线段树】
P2894 [USACO08FEB]Hotel G用0表示空间,1表示占用线段树的节点维护此节点中区间[l,r][l,r][l,r] 中最大连续0的个数,以及前缀0的个数,后缀0的个数。然后查询的时候递归查询,先看当前节点的左节点是否可以满足要求,满足直接返回答案,否则看左右节点的中间连接处是否满足要求,满足就返回,否则返回右节点的答案#include <stdio.h>#include <cstring>#include <algorithm>#inclu
2021-02-19 16:25:46
211
1
原创 1009 Product of Polynomials (25 point(s))
1009 Product of Polynomials (25 point(s))指数相加,对应系数相乘,累加一下#include <stdio.h>#include <iostream>#include <cstring>#include <queue>#include <vector>#include <algorithm>#include <cmath>using namespace std;typ
2021-02-05 18:15:15
129
原创 1008 Elevator (20 point(s))
1008 Elevator (20 point(s))简单模拟,巨水#include <stdio.h>#include <iostream>#include <cstring>#include <queue>#include <vector>#include <algorithm>using namespace std;typedef long long ll;const int maxn = 1e6+10;co
2021-02-05 17:44:41
135
原创 1007 Maximum Subsequence Sum (25 point(s))
1007 Maximum Subsequence Sum (25 point(s))用dp[i]=sum,vdp[i] = {sum,v}dp[i]=sum,v 表示以i结尾的连续子序列,最大的和是多少,以及开头数字是什么。然后就看每一个dp[i]dp[i]dp[i]是接着dp[i−1]dp[i-1]dp[i−1],还是以自身作为连续子序列开始,这两种方案谁的sumsumsum更大#include <stdio.h>#include <iostream>#include &l
2021-02-05 17:32:20
127
原创 1006 Sign In and Sign Out (25 point(s))
1006 Sign In and Sign Out (25 point(s))字符串排序,从小到大,从大到小排两次,输出。#include <stdio.h>#include <iostream>#include <cstring>#include <queue>#include <vector>#include <algorithm>using namespace std;typedef long long ll;
2021-02-05 17:11:31
147
原创 1005 Spell It Right (20 point(s))
1005 Spell It Right (20 point(s))将各位加起来的数,按英语一个一个单词输出#include <stdio.h>#include <iostream>#include <cstring>#include <queue>#include <vector>#include <algorithm>using namespace std;typedef long long ll;const in
2021-02-05 17:03:39
150
原创 1004 Counting Leaves (30 point(s))
1004 Counting Leaves (30 point(s))用vectorvectorvector进行存树,然后使用dfs,对每一层的叶子节点进行计数,然后输出。要记录一个树的深度,输出的时候要用#include <stdio.h>#include <iostream>#include <cstring>#include <queue>using namespace std;typedef long long ll;const int
2021-02-05 16:03:24
165
原创 1003 Emergency (25 point(s))
1003 Emergency (25 point(s))最短路算法+简单dp一边跑最短路,一边记录到当前这个状态有多少条路径,到当前这个点,最多经过多少个点权#include <stdio.h>#include <iostream>#include <queue>using namespace std;typedef long long ll;const int maxn = 1e6+10;const int inf_int = 1e9;int N,M
2021-02-05 15:40:11
170
原创 1002 A+B for Polynomials (25 point(s))
1002 A+B for Polynomials (25 point(s))就定义一个数组ans[]ans[ ]ans[],在对应次方的位置加它的系数。看一共有多少项的时候,要根据系数是否为0来计数。然后再次方从高到低来输出#include <stdio.h>#include <iostream>using namespace std;const int maxn = 1e6+10;double ans[maxn];int main(){ int k;ci
2021-02-05 14:34:23
156
原创 1001 A+B Format (20 point(s))
1001 A+B Format (20 point(s))情况分为0和非0的情况,结果是0的情况直接输出,非0的情况:如果是小于0先输出负号,然后进行dfs利用其回溯来输出各个位#include <stdio.h>#include <cstring>#include <algorithm>#include <vector>#include <stack>#include <queue>#include <iost
2021-02-05 13:26:42
151
原创 202006-2 稀疏向量
202006-2 稀疏向量因为N太大了,所以得用map来存一下,同时可以记录一下出现过哪些index,记录一下,然后遍历map,如果同一个位置,两个向量在这里都非0.那么项乘加到结果上。#include <stdio.h>#include <iostream>#include <queue>#include <map>#include <vector>#include <algorithm>#include <cs
2021-02-02 14:54:26
133
1
原创 202006-1 线性分类器
202006-1 线性分类器一条线把若干点分成两部分,那么肯定是一部分点在线上,代入直接方程后,大于0,一部分点在线下,代入直线方程后,小于0#include <stdio.h>#include <iostream>#include <queue>#include <map>#include <vector>#include <algorithm>#include <cstring>using namesp
2021-02-02 14:31:12
124
原创 202009-2 风险人群筛查
202009-2 风险人群筛查直接模拟即可#include <stdio.h>#include <iostream>#include <queue>#include <map>#include <vector>#include <algorithm>#include <cstring>using namespace std;typedef long long ll;void pt(){ cout<
2021-02-02 14:05:26
105
原创 201512-3 画图
201512-3 画图划线就直接划线了,填充用DFS/BFS都可以对于一个位置是否要输出为+, 可以直接对位置进行被横线覆盖的次数,被竖线覆盖的次数,如果同时被覆盖,输出的时候临时改成+输出就行了cnt1[x][y]cnt1[x][y]cnt1[x][y]记录位置x,y被横线覆盖的次数cnt2[x][y]cnt2[x][y]cnt2[x][y]记录位置x,y被竖线覆盖的次数#include <stdio.h>#include <iostream>#include &l
2021-02-02 13:37:06
125
原创 202012-5 星际旅行
202012-5 星际旅行80分做法,因为N太大了,太菜的我不知道如何处理我的方法:x,y,zx,y,zx,y,z轴分别开一颗线段树,然后就套用线段树,区间加,区间乘,然后这里有个线段树互相交换节点,需要先全部pushdown之后再交换,交换完成之后还要pushup//80分做法#include <stdio.h>#include <iostream>#include <queue>#include <map>#include <vect
2021-02-02 13:36:15
751
原创 202012-4 食材运输
202012-4 食材运输图论+状态压缩dp#include <stdio.h>#include <iostream>#include <queue>#include <map>#include <vector>#include <algorithm>#include <cstring>using namespace std;typedef long long ll;const int maxn =
2021-02-02 13:35:42
2789
1
原创 202012-2 期末预测之最佳阈值
202012-2 期末预测之最佳阈值如果当前选择标准是c,那么就统计y<c,result=0y<c,result = 0y<c,result=0的个数 + y>=c,result=1y>=c,result = 1y>=c,result=1的个数也就是[0,c−1][0, c-1][0,c−1]有多少个result = 0,[c,1e8][c,1e8][c,1e8]多少个result = 1所以可以分别记录两个前缀和数组,一个记录预测为0的分布的数字前缀和,一个记录预
2021-02-02 13:35:06
154
原创 202012-1 期末预测之安全指数
202012-1 期末预测之安全指数根据题目要求来即可#include <stdio.h>#include <iostream>using namespace std;typedef long long ll;int N;int main(){ cin>>N; ll res = 0; for(int i = 1;i<=N;i++){ int x,y;scanf("%d %d",&x,&y);
2021-02-02 13:34:30
123
原创 ccf csp 202009-1 称检测点查询
202009-1 称检测点查询要从一堆点中,找出距离(x,y)(x,y)(x,y)最近的3个点,直接定义一下排序规则,排序后输出前3个点的编号即可#include <stdio.h>#include <iostream>#include <queue>#include <map>#include <vector>#include <algorithm>#include <cstring>using name
2021-02-02 13:31:09
279
原创 线段树模板【区间乘】【区间加】
线段树模板2主要思想:两个标记addmul,add表示是已经乘了mul之后的add,当前的add和当前的mul是独立的主要思想:两个标记add mul,add表示是已经乘了mul之后的add,当前的add和当前的mul是独立的主要思想:两个标记addmul,add表示是已经乘了mul之后的add,当前的add和当前的mul是独立的当前是addmul当前是add mul当前是addmul当区间+c时候,−>add+c,mul当区间+c时候,-> add+c,mul当区间+c时候,−>a
2021-02-01 16:37:40
193
原创 CCF CSP刷题日志2020年12月
2021/1/31202012-1 期末预测之安全指数根据题目要求来即可#include <stdio.h>#include <iostream>using namespace std;typedef long long ll;int N;int main(){ cin>>N; ll res = 0; for(int i = 1;i<=N;i++){ int x,y;scanf("%d %d",&x,
2021-01-31 13:28:23
598
原创 pb_ds库之平衡树
可允许重复数字的平衡树#include <bits/stdc++.h>#include <ext/pb_ds/tree_policy.hpp>#include <ext/pb_ds/assoc_container.hpp>using namespace __gnu_pbds;using namespace std;int N,op,x;struct Tree{ int inf = 1e9,idx = 0; struct node{ int x,
2021-01-27 21:08:58
1573
2
原创 基础模板
差分用差分加二次前缀和构建连续变化量的数组想要:[p1,p2]递增[p2,p3]不变[p3,p4]递减int p1 = 2,p2 = 5,p3 = 8,p4 = 12; ca[p1] += 1; ca[p2 + 1] -= 1; ca[p3 + 1] -= 1; ca[p4 + 1] += 1; go(i,1,20) ca[i] += ca[i-1]; go(i,1,20) ca[i] += ca[i-1]; go(i,1,20) cout
2021-01-20 13:28:28
143
原创 牛牛数数 【线性基+二分】
链接:https://ac.nowcoder.com/acm/contest/10845/E来源:牛客网保证答案在long long内。解法这题可以说是线性基的模板题。先学习一下线性基:线性基视频处理完线性基之后,就可以使用其性质5:求任意子集xor最大值: 把线性基中所有元素xor起来求任意子集xor最小值: 等于最小的主元查询x是否在值域中: 如果x能插入线性基,则x不能被当前线性基xor出来查询第k小的值: 把k进行二进制分解,把1对应位置的主元xor起来;注意这里第0小就是
2021-01-16 14:27:22
299
3
原创 poj2431 Expedition 贪心+优先队列 【挑战程序设计竞赛】
题目链接http://poj.org/problem?id=2431ExpeditionTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 28629 Accepted: 7935DescriptionA group of cows grabbed a truck and ventured on an expeditio...
2019-08-02 20:29:55
373
原创 poj3253 Fence Repair 贪心策略【挑战程序设计竞赛】
题目链接:http://poj.org/problem?id=3253Fence RepairTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 72299 Accepted: 23743DescriptionFarmer John wants to repair a small length of the fence ...
2019-08-02 17:02:55
206
1
原创 poj3069 Saruman's Army 贪心策略【挑战程序设计竞赛】
题目链接:http://poj.org/problem?id=3069Saruman’s ArmyTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 18781 Accepted: 9217DescriptionSaruman the White must lead his army along a straight p...
2019-08-02 16:32:09
246
原创 区间合并---模板题
区间合并题目链接:https://www.acwing.com/problem/content/805/给定 n 个区间 [li,ri],要求合并所有有交集的区间。注意如果在端点处相交,也算有交集。输出合并完成后的区间个数。例如:[1,3]和[2,6]可以合并为一个区间[1,6]。输入格式第一行包含整数n。接下来n行,每行包含两个整数 l 和 r。输出格式共一行,包含一个整数...
2019-08-02 15:03:16
303
大学生计算机网络实验报告完整版
2022-04-17
《HPU微机原理与接口技术》期末考试总问答题总结.pdf
2020-12-14
MWeb macos平台markdown笔记软件
2019-06-03
snip数学公式转换成图片,图片转换成latex公式,写论文神器,高效编辑公式
2019-04-07
计算机组成原理 唐朔飞 第二版 有目录 30MB最最高清版
2018-04-08
MkvToMp4视频格式转换,几乎无损转换,解压即用
2018-04-04
MFC新手入门制作的绘图板(大量注释)
2018-01-01
关于c语言格式化输出,标志-(负号)的作用?
2017-02-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人