自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 动态规划整理,特详细!!!!!!!!!!

动态规划整理,特详细!!!!!!!!!!动态规划整理,特详细!!!!!!!!!!动态规划整理,特详细!!!!!!!!!!欢迎查看!!!!!!!!!!欢迎查看!!!!!!!!!!欢迎查看!!!!!!!!!!

2020-01-29 10:52:20 416 8

原创 神奇的幻方

题目描述幻方是一种很神奇的N∗N矩阵:它由数字构成,且每行、每列及两条对角线上的数字之和都相同。当N为奇数时,我们可以通过下方法构建一个幻方:首先将1写在第一行的中间。之后,按如下方式从小到大依次填写每个数若(K−1)在第一行但不在最后一列,则将K填在最后一行,(K−1)所在列的右一列; 若(K−1)在最后一列但不在第一行,则将K填在...

2020-01-26 20:56:10 1017

原创 「NOI大纲」

「NOI大纲」【X】表示难度系数2.1 入门级2.1.1计算机基础与编程环境【1】计算机的基本构成(CPU、内存、I/O设 备等)【1】Windows、 Linux等操作系统的基本概念及其常见操作【1】计算机网络和Internet的基本概念【1】计算机的历史及其在现代社会中的常见应用【1】 NOI以及相关活动的历史【1】进制的基本概念与进制转换、字节与字【1】程序设计语言以及程序编译和运行的基本概念【1】使用图形界面新建、复制、删除、移动文件或目录【1】使用Windows系统下

2021-09-10 21:05:19 1550

原创 简单数论(1)

【疯狂gcd】的推式子过程∑i=1n∑j=1ngcd(i,j)\sum_{i=1}^n\sum_{j=1}^ngcd(i,j)∑i=1n​∑j=1n​gcd(i,j)=2∑i=1n∑j=1igcd(i,j)−∑1=1ni=2\sum_{i=1}^n\sum_{j=1}^igcd(i,j)-\sum_{1=1}^ni=2∑i=1n​∑j=1i​gcd(i,j)−∑1=1n​if(n)=∑j=1ngcd(n,j)f(n)=\sum_{j=1}^ngcd(n,j)f(n)=∑j=1n​gcd(n,j)f(

2021-08-02 22:14:25 232

原创 图论5-最短路(II)

Part 2.5.1 负环当一张图中有负环时,这张图中经过负环的两点间最短路就不存在。因为可以无限次经过这个负环,使代价不断减小。在三种最短路算法中,SPFA是唯一一种可以处理负环的算法。由SPFA的过程,每个点最多会被其他点各更新一次,即入队次数不会超过nnn。因此如果一个点的入队次数达到了n+1n+1n+1,就说明图中存在负环。SPFA判负环的复杂度是O(nm)O(nm)O(nm)。例题2.5.1 [FAIOJ30086]判断负环模板题。例题2.5.2 [FAIOJ30085]虫洞本题

2021-07-27 18:53:30 193

原创 图论4-最短路(I)

三种最短路算法Floyd可求出任意两点间最短路,适合小规模稠密图(点数不超过500500500)。复杂度O(n3)O(n^3)O(n3)注意:如果nnn超过800800800,且图比较稀疏,可使用nnn次dijkstra代替Floyd。for(int k=1;k<=n;++k) for(int i=1;i<=n;++i) for(int j=1;j<=n;++j) dis[i][j]=min(dis[i][j],dis[i][k]+

2021-07-27 18:52:39 267

原创 图论3-最小生成树

定义:生成树:无向图包含所有点的生成子图(即边集包含于原图),且是一棵树。最小生成树:边权和最小的生成树。基本性质:如果把边权看做代价,那么最小生成树就是使全图连通的最小代价。最小生成树同时满足整棵生成树上的最大边权最小,任意两点间的最大边权最小(这个性质由kruskal算法的执行过程即可得出)算法:Prim算法适合处理稠密图,算法复杂度O(n2)O(n^2)O(n2)kruskal算法适合处理稀疏图,算法复杂度O(mlog⁡m)O(m\log m)O(mlogm)。另外堆优化Prim

2021-07-27 18:48:19 274

原创 图论2-并查集

并查集并查集维护一张无向图,支持以下两种操作:1.连接两个点2.查询一个点所在的连通块并查集的两种优化方式:路径压缩:O(α(n))O(\alpha (n))O(α(n))按秩合并:O(log⁡n)O(\log n)O(logn)Part 1:图的连通性图的遍历也可以求图的连通性,但其复杂度为O(n)O(n)O(n),如果要多次修改并查询,复杂度无法承受。例题1:[JSOI2008][luogu1197][FAIOJ102]星球大战两种操作,删点,求全图连通块个数。并查集只支持连边,不

2021-07-27 18:47:27 139

原创 图论1-图的遍历

图的遍历图的遍历,就是在图上DFS/BFSDFS/BFSDFS/BFS。是对图最基本的操作。图的存储方式邻接矩阵:O(n2)O(n^2)O(n2)邻接链表:O(m)O(m)O(m)int e=0,fir[N],to[M],nxt[M],w[M];inline void adde(int x,int y,int z){ to[++e]=y,nxt[e]=fir[x],fir[x]=e,w[e]=z;}for(int i=fir[u];i;i=nxt[i])邻接动态数

2021-07-27 18:46:56 223

原创 二分和分治

Part 1:二分查找二分法找零点lower_boundLIS数据结构上的二分注意:二分查找可行的前提条件是序列有序!例题1:[FAIOJ2333]乐谱直接在前缀和数组上lower_bound即可。复杂度O(nlog⁡n)O(n\log n)O(nlogn)。二分法求LIS最长不下降子序列问题可以使用树状数组解决。但有时序列范围很大或序列不是整数序列,此时树状数组的做法需要加一步离散化。但二分法可以直接解决。设fif_ifi​为长度为iii的不下降子序列末尾的最小值。

2021-07-27 18:46:27 269

原创 DFS&BFS及其优化

DFS&BFS及其优化简介及声明本文所涉及的DFS/BFS仅指指数级以上复杂度的暴搜,不包括图和网格上O(n)O(n)O(n)级别的搜索!Part 1:DFS例题1:[FAIOJ1220]字符序列直接暴力搜索每个位置填A,B,CA,B,CA,B,C,对于以最后一位为末尾的子串检查其前面是否冲突即可。复杂度O(3n)O(3^n)O(3n)。例题2:[FAIOJ1224]最佳调度问题如果直接枚举每个任务在每个机器上完成,复杂度将会达到O(kn)O(k^n)O(kn),代入数据范围得到520

2021-07-27 18:42:35 654

原创 动态规划整理

例题1组成平方数题目描述给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, …)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。输入输出描述输入描述一个整数n,表示要组成的数字输出描述一个正数表示最少需要几个完全平方数才能组成输入输出样例输入格式#1:4输出格式#1:1输入格式#2:10输出格式#2:2输入格式#3:19输出格式#3:3输入格式#4:245输出格式#4:2输入格式#5:328

2021-02-16 20:00:26 122

原创 拦截导弹问题

题目描述某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。输入格式n颗依次飞来的高度(1≤n≤1000).输出格式要拦截所有导弹最小配备的系统数k。样例Sample Inp

2021-01-21 19:35:55 232

原创 删数问题

题目描述输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序组成一个新的正整数。编程对给定的N和S,寻找一种方案使得剩下的数字组成的新数最小。 输出新的正整数。(N不超过240位)输入数据均不需判错。输入格式n s 输出格式最后剩下的最小数。样例Sample Input 1754384Sample Output 13#include <bits/stdc++.h>using namespace std;int main(){ st

2021-01-21 19:35:22 151

原创 均分纸牌

题目描述有 N 堆纸牌,编号分别为 1,2,…, N。每堆上有若干张,但纸牌总数必为 N 的倍数。可以在任一堆上取若于张纸牌,然后移动。   移牌规则为:在编号为 1 堆上取的纸牌,只能移到编号为 2 的堆上;在编号为 N 的堆上取的纸牌,只能移到编号为 N-1 的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。   现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。  例如 N=4,4 堆纸牌数分别为:   ① 9 ② 8 ③ 17 ④ 6   移动3次可达到目的:   从

2021-01-21 19:34:35 108

原创 排队接水

题目描述有N个人排队到R个水龙头去打水,他们装满水桶的时间为T1,T2,…,Tn为整数且各不相等,应如何安排他们的打水顺序才能使他们花费的时间最少?输入格式输入文件共两行,第一行为n,r;第二行分别表示第1个人到第n个人每人的接水时间T1,T2,…,Tn,每个数据之间有1个空格。输出格式一行,总共花费时间样例Sample Input 4 2 //4人打水,2个水龙头2 6 4 5 //每个打水时间Sample

2021-01-21 19:33:40 131

原创 codeforse1451总结

codeforse1451总结

2020-11-22 22:25:49 277

原创 2020-10-19

#1 新手村关卡1-1 洛谷的第一个任务 超级玛丽游戏(洛谷-P1000):点击这里 A+B Problem(洛谷-P1001):点击这里 小玉买文具(洛谷-P1421):点击这里 小鱼的游泳时间(洛谷-P1425):点击这里关卡1-2 顺序与分支小玉家的电费(洛谷-P1422):点击这里 不高兴的津津(洛谷-P1085):点击这里 津津的储蓄计划(洛谷-P1089):点击这里 买铅笔(洛谷-P1909):点击这里关卡1-3 循环!循环!循环!三连击(洛谷-P1008)...

2020-10-19 22:05:25 388

原创 漫画:什么是动态规划?(整合版)

————————————题目:有一座高度是10级台阶的楼梯,从下往上走,每跨一步只能向上1级或者2级台阶。要求用程序来求出一共有多少种走法。比如,每次走1级台阶,一共走10步,这是其中一种走法。我们可以简写成 1,1,1,1,1,1,1,1,1,1。再比如,每次走2级台阶,一共走5步,这是另一种走法。我们可以简写成 2,2,2,2...

2020-10-05 21:40:50 127

原创 教你彻底学会动态规划——进阶篇

在我的上一篇文章中已经详细讲解了动态规划的原理和如何使用动态规划解题。本篇文章,我将继续通过例子来让大家更加熟练地使用动态规划算法。 话不多说,来看如下例题,也是在动态规划里面遇到过的最频繁的一个题,本题依然来自于北大POJ: 最长公共子序列(POJ1458) 给出两个字符串,求出这样的一个最长的公共子序列的长度:子序列中的每个字符都能在两个原串中找到, 而且每个字符的先后顺序和原串中的先后顺序一致。 Sample Input abcfbc abfcab...

2020-10-05 21:35:26 115

原创 教你彻底学会动态规划——基础篇

动态规划相信大家都知道,动态规划算法也是新手在刚接触算法设计时很苦恼的问题,有时候觉得难以理解,但是真正理解之后,就会觉得动态规划其实并没有想象中那么难。网上也有很多关于讲解动态规划的文章,大多都是叙述概念,讲解原理,让人觉得晦涩难懂,即使一时间看懂了,发现当自己做题的时候又会觉得无所适从。我觉得,理解算法最重要的还是在于练习,只有通过自己练习,才可以更快地提升。话不多说,接下来,下面我就通过一个例子来一步一步讲解动态规划是怎样使用的,只有知道怎样使用,才能更好地理解,而不是一味地对概念和原理进行反复琢磨。

2020-10-05 21:33:28 136

原创 P1001~P1017

这是一个标准代码的模板#include<iostream>using namespace std;int main(){ return 0;}下面有一些例题1. P1001 A+B题目描述输入两个整数 a,b,输出它们的和(∣a∣,∣b∣≤10^9)。输入格式两个整数以空格分开。输出格式一个整数。输入输出样例输入 #11 2输出 #13代码#include <iostream>using namespace std;int mai

2020-08-25 16:46:58 218

原创 day1

day1 DS1堆堆是一棵树,其每个节点都有一个键值,且每个节点的键值都大于等于/小于等于其父亲的键值。每个节点的键值都大于等于其父亲键值的堆叫做小根堆,否则叫做大根堆。STL 中的 priority_queue 默认是一个大根堆。堆的操作所有堆都(高效地)支持:插入一个数(push)、查询最小/最大值(top)、删除最小/最大值(pop)。有一些堆(高效地)支持:合并两个堆(merge)、减小一个元素的值、……堆的时间复杂度不同的堆在执行不同的操作时时间复杂度各不相同,这里只介绍二叉堆(普

2020-08-25 08:04:17 141

原创 luoguP1001~P1005

这是一个标准代码的模板#include<iostream>using namespace std;int main(){ return 0;}下面有一些例题1. P1001 A+B题目描述输入两个整数 a,b,输出它们的和(∣a∣,∣b∣≤10^9)。输入格式两个整数以空格分开。输出格式一个整数。输入输出样例输入 #11 2输出 #13代码#include <iostream>using namespace std;int mai

2020-08-24 09:41:05 171

原创 二维前缀和

全部数据点击查看代码#include <iostream>#include <cstdio>using namespace std;long long a[1005][1005];long long f[1005][1005];int main() { long long n, m, k; cin >> n >> m >> k; for (long long i = 1; i <= n; ...

2020-08-20 11:23:18 135

原创 一维前缀和

全部数据点击查看代码#include <cstdio>#include <algorithm>#include <iostream>using namespace std;const int maxn = 1e5 + 5;int n, q, sum[maxn];int main() { scanf("%d%d", &n, &q); int x, y; for (int i = 1; i <= n; +..

2020-08-20 11:18:59 126

原创 大规模排序

全部数据点击查看代码、#include <cstdio>#include <algorithm>using namespace std;int a[100005], n;int main() { scanf("%d", &n); for (int i = 0; i < n; i++) { scanf("%d", &a[i]); } sort(a + 0, a + n); for (i...

2020-08-20 11:15:03 175

原创 最大公约数和最小公倍数

原题全部数据点击下载代码#include <iostream>using namespace std;long long gcd(long long a, long long b) { if (a % b == 0) { return b; } else { return gcd(b, a % b); }}int main() { long long T; cin >> T; .

2020-08-20 11:08:05 86

原创 树形DP

树形DP

2020-04-15 22:28:00 169

原创 最长上升子序列

最长上升子序列题目描述:给定一个长度为 N 的数列,求它数值单调递增的子序列长度最大为多少。即已知有数列 A , A=A1,A2…An ,求 A的任意子序列B ( B=Ak1,Ak2…Akp ),使 B 满足 k1<k2<…<kp且 Ak1<Ak2<…<Akp 。现求 p的最大值。输入格式共二行。第一行是一个整数N第二行有n个整数输出格式...

2020-03-15 20:37:17 156

原创 数字三角形

原题目如下FJ and his cows enjoy playing a mental game. They write down the numbers from 11 to N(1≤N≤10) in a certain order and then sum adjacent numbers to produce a new list with one fewer number. They r...

2020-03-01 14:10:50 432

原创 曲线分平面问题

n=1n=2n=3n=4题目大致如设有n条封闭曲线画在平面上,而任何两条封闭曲线恰好相交于两点,且任何三条封闭曲线不相交于同一点,问这些封闭曲线把平面分割成的区域个数。析:当n-1个圆时,区域数为f(n-1).那么第n个圆就必须与前n-1个圆相交,则第n个圆被分为2(n-1)段线段,增加了2(n-1)个区域。故:f(n)=f(n-1)+2(n-1)=f(1)+2+4+……...

2020-02-29 10:37:01 1216

原创 旅行家的预算

题目描述一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的)。给定两个城市之间的距离D1、汽车油箱的容量C(以升为单位)、每升汽油能行驶的距离D2、出发点每升汽油价格P和沿途油站数N(N可以为零),油站i离出发点的距离Di、每升汽油价格Pi(i=1,2,…,N)。计算结果四舍五入至小数点后两位。如果无法到达目的地,则输出“No Solution”。输入格式第一...

2020-02-10 12:57:10 556

原创 细胞分裂

题目描述Hanks博士是BT(Bio−Tech,生物技术) 领域的知名专家。现在,他正在为一个细胞实验做准备工作:培养细胞样本。Hanks博士手里现在有N种细胞,编号从 1−N,一个第i种细胞经过1秒钟可以分裂为Si​个同种细胞(Si​为正整数)。现在他需要选取某种细胞的一个放进培养皿,让其自由分裂,进行培养。一段时间以后,再把培养皿中的所有细胞平均分入M个试管,形成M份样...

2020-02-08 13:42:43 718

原创 传球游戏

题目描述上体育课的时候,小蛮的老师经常带着同学们一起做游戏。这次,老师带着同学们一起做传球游戏。游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同学可以把球传给自己左右的两个同学中的一个(左右任意),当老师再次吹哨子时,传球停止,此时,拿着球没有传出去的那个同学就是败者,要给大家表演一个节目。聪明的小蛮提出一个有趣的问题:有多少种不同的...

2020-02-06 15:42:01 288

原创 旅行计划

目录题目描述输入格式输出格式输入输出样例说明/提示 图片解释 代码题目描述小明要去一个国家旅游。这个国家有#N个城市,编号为1至N,并且有M条道路连接着,小明准备从其中一个城市出发,并只往东走到城市i停止。所以他就需要选择最先到达的城市,并制定一条路线以城市i为终点,使得线路上除了第一个城市,每个城市都在路线前一个城市东...

2020-02-04 10:23:28 247

原创 回文子序列

回文子序列 欢迎观看

2020-02-01 14:50:51 690

原创 Have Fun with Numbers

Have Fun with NumbersNotice that the number 123456789 is a 9-digit number consisting exactly the numbers from 1 to 9, with no duplication. Double it we will obtain 246913578, which happens to be ano...

2020-01-31 14:33:05 137

原创 2019 年海淀区青少年程序设计挑战活动复赛初中组 试题4:组合树(tree)

2019 年海淀区青少年程序设计挑战活动复赛初中组C++语言试题第四题输入文件:tree.in输出文件:tree.out时间限制:4s空间限制:512MB【题目描述】Bob想要和Carrol玩游戏。但Carrol觉得玩游戏太无聊,就和Tuesday去写歌了。于是现在Bob来找你玩游戏。这个游戏是这样的:给定一棵n个节点的树, 1号点为根节点,设v的父亲是f(v) 。其中每个节点有一...

2020-01-29 18:46:37 927

原创 月饼

1020 月饼 (25分)月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有 3 种月饼,其库存量分别为 18、15、10 万吨,总售价分别为 75、72、45 亿元。如果市场的最大需求量只有 20 万吨,那么我...

2020-01-28 14:22:36 234

noip1995-2008测试数据及试题

noip1995-2008测试数据及试题

2021-09-23

2020洛谷初赛模拟.pdf

2020洛谷初赛模拟, 简介 针对 2019 年 CSP 非专业组第一轮(相当于原 NOIP 初赛)的题目改革,我们命制了一套第一轮的模拟试卷。 本次模拟测试形式和 CSP 第一轮 完 全 一 致,难度介于 J 组(基础组)和 S 组(提高组)之间。如果希望查缺补漏或者体验形式,千万不要错过。 比赛时间和形式 时间:2020 年 10 月 8 日 09:30-11:30 题型: 单项选择:15题,四选一单选 阅读程序:阅读程序并理解其中细节。有 4 个判断题和 2 个单项选择。 完善程序:给定任务要求和被挖空的程序代码,每处空格需要从 4 个选项中选择正确的一项填入空缺的地方。

2020-10-10

AC自动机最全数据,欢迎下载

AC自动机最全数据,大家可以看一下,欢迎下载,谢谢支持!!!!!!!!!!!!!!!!!!!!!!!!

2020-08-27

练习题目整理.xlsx

做完这个文档上的题目后,普及组(NOIP)绰绰有余,轻松300+,不信试试呀!! 普及组加油!

2019-07-25

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除