自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一只酷酷光儿的博客

一个退役的ACMer的博客

  • 博客(21)
  • 资源 (3)
  • 收藏
  • 关注

原创 【Nowcoder】名作之壁 | 单调队列、尺取

题目链接:https://ac.nowcoder.com/acm/contest/6874/I 题目大意: 找出区间最大值-最小值>=k的区间有多少个? 题目思路: 第一步: 将题目转换为尺取求区间个数 原因:最大值和最小值都是会扩充的 ,区间扩充的必然会使得最大值++,最小值-- 第二步: 确定尺取之后,下一步操作就是确定当前区间的最大值和最小值 考虑确定最大值和最小值可以考虑st表 但是预处理是nlog的,看数据范围的话,出题人是故意卡了nlog 所以考虑单调队列维护最大值和

2020-08-23 00:47:43 194

原创 【Nowcoder】牛妹的苹果树 | 倍增、树的直径

题目链接:https://ac.nowcoder.com/acm/contest/6885/F 题目大意: 中文题意 题目思路: 考虑一个原题:https://blog.csdn.net/qq_43857314/article/details/108108130 上面这题和该题思想一致的 不过上面是利用并查集合并了两个子树 这个的题变成了区间问题,那么就用倍增合并一下区间就好了 至于大部分的题解,应该都在上面原题上了 本题用到的结论也在上述题解上证明过,这里就不多解释了 所以这个题,就考虑

2020-08-21 22:39:15 203

原创 【Codeforces 1398E】Two Types of Spells | 权值线段树

题目链接:https://codeforces.ml/contest/1398/problem/E 题目大意: 有两种贝壳,火贝壳与光贝壳,火贝壳每次可以造成x点伤害,y贝壳可以造成x点伤害的同时,并使得下一次伤害加倍 之后按照题目要求输入输出,有插入删除【火/光】属性贝壳等操作,问每次操作后,输出最monster的伤害最大值 题目思路: emmm 显而易见的一个贪心思路就是 假设有光贝壳 X 个,那么最后的答案必然为:当前的和 + 前X大的和 但是也不一定,因为有属性的限制,如果前X大全是

2020-08-20 20:09:17 320 3

原创 【upc】城镇 | 并查集、附树的直径详细证明

题目描述 L国一共有N座城镇,开始时它们两两不连通。L国计划依次建造N-1条道路,把所有城镇连通起来。每建完一条道路,你需要回答这条道路所在连通块内距离最远的两座城镇之间的距离。两座城镇之间的距离定义为从一座走到另一座所需要经过的最少道路数。 输入 第一行一个整数N,表示城镇的数量。 接下来N-1行,每行两个整数ai,bi表示接下来建的道路连通的两座城镇。 保证N-1条道路能够使所有城镇连通。 输出 输出N-1行,每行一个整数表示建完第i条道路后的答案。 样例输入Copy 5 3 5..

2020-08-19 19:35:51 1068 2

原创 【Codeforecs 1392】Codeforces Global Round 10 | ABCDF题解

A. Omkar and Password 题目大意: 每次可以选择两个不相等的两个数拿出来,变为两数之和,再放回去 问最后少的长度是多少? 题目思路: 还被这个题卡了2min.. 一开始想区间dp ,后来发现离谱. 重读题才发现合并两个不相等的 那么只要序列不是全部相等,永远可以合并到1 Code: /*** keep hungry and calm CoolGuang!***/ #pragma GCC optimize(3) #include <bits/stdc++.h&g

2020-08-18 16:33:56 324 1

原创 【Codeforces 1392C】 Omkar and Waterslide | 思维、差分

题目链接:https://codeforces.ml/contest/1392/problem/C 题目大意: 给出一个长度为N的序列a,每次可以选择一段连续的单调不减的区间,使得这个区间的数都+1 问最少操作几次可以使得这个序列单调不减。 题目思路: 一般的思维题 首先可以确定的是,最终序列的首相即为a[1] 因为考虑最优答案,所以不会让序列代价变得更大 所以考虑从a[1] 开始的一个连续递增子序列即为最后的序列去重之后的结果 所以说用单调栈即可维护或者什么东西都可以 然后就可以知道每

2020-08-18 16:12:19 312

原创 【Codeforces 1392F】Omkar and Landslide | 思维、结论

题目链接:https://codeforces.ml/contest/1392/problem/F 题目大意: 给出N座山峰的高度h_i,之后重复进行下面的操作: 若存在一个位置i满足: 那么i高度就会+1,i+1位置就会+1 重复进行上述操作,直到不可进行为止 输出最后的序列 题目思路: 只想对了一个方向而已..emm 考虑最后的状态必然满足:相邻每个位置大小最多差1,否则会继续进行上述的操作 根据最终状态出发考虑去构造最终数列 结论: 最终序列中,满足hi == h_i+1 的最

2020-08-18 16:00:58 464

原创 【Codeforces 1391D】 505 | 思维、状压dp

题目链接:https://codeforces.ml/contest/1391/problem/D 题目大意: 给出一个n*m的01矩阵,要求这个01矩阵里每一个偶数变长的正方形内1的个数均为奇数 你可以将1变0,也可以将0变1 问最少需要几次使得满足条件,若无法满足条件输出-1 题目思路: 首先从-1的情况出发, 什么时候是-1的情况? :偶数*奇数 是偶数,所以当最小边长大于等于4时,一定是无解的,因为其必然会包含4*4的矩阵。 所以这就将最小边长缩小到了小于4的情况。 所以这时候只需

2020-08-16 19:52:33 348 1

原创 【Codeforces 1391C】Cyclic Permutations | 组合数学、树的基础

题目链接:https://codeforces.ml/contest/1391/problem/C 题目大意: 对于全排列,对于每一个位置的数a_i,找到最左边大于他的那个k与最右边大于他的那个j,i-k,i-j并且连无向边。 对于一个排列,如果连边情况 不会出现任何一个环,则成为GOOD 问有多少种n的全排列是GOOD 题目思路: 首先可以肯定的性质是,对于一个全排列而言,1~n-1 每个点至少会连出一条边,也就说1~n-1的位置每个位置的度至少为1 如果一个位置左右连了两条边,那么肯定出现

2020-08-16 19:44:48 310 2

原创 【Nowcoder】[SCOI2010]游戏 | 匈牙利二分图匹配 、并查集

题目链接:https://ac.nowcoder.com/acm/problem/20566 题目大意: 每个装备给出两个属性值,每次只能选择一个 从1的属性值开始选,每个装备只能选择一次,并且只能选择一个属性,问最多选择几个? 题目思路: 一个经典的套路 因为路径已经确定,所以也就硬性要求了这一步该选什么 1 2 3 1 这个样例来说,假设第一件装备选择了1,那么第二件装备就没法选择,但是你会发现可以选择两个。 此时有没有一种方法可以使得1选2,2去选1呢 模拟这个过程,其实就是匈牙

2020-08-14 17:32:25 162

原创 【智算之道】2020智算之道复赛题解

发挥不好的一场 只包含ABCD ,E 过两日会update! A.数字 签到题吧,枚举前三位即可 Code: /*** keep hungry and calm CoolGuang!***/ #pragma GCC optimize(3) #include <bits/stdc++.h> using namespace std; typedef long long ll; ll n,m,p; int main() { read(n);read(m); int ans

2020-08-09 23:01:14 822 3

原创 【Nowcoder】2020牛客暑期多校训练营(第九场)The Flee Plan of Groundhog | 经典追击相遇问题、bfs搜索

题目链接:https://ac.nowcoder.com/acm/contest/5674/J 题目大意: 两个动物追及相遇 一个在p,一个在t,一个速度为2,另一个速度为1 题目思路: 经典追击相遇问题,自己跑偏了,还好队友拉了回来 考虑每一个点作为被抓捕的点,那么被抓捕的点就需要满足一个条件,逃跑的人到这个点比抓捕的人到这个点要早到,那么即可在此抓捕他。 求否则在半路已经被拦截了 所以枚举所有的最终状态,求一个最大值即可 注意这里需要上取整。 Coed: /*** keep hu

2020-08-08 17:15:34 461

原创 【upc】 跳方格 (lattice) | 差分、思维、dp

!!! 问题 G: 跳方格 (lattice) 时间限制:1Sec内存限制:128 MB提交状态 题目描述 有一个长长的走廊,巨神 ctt 把它分成m方格,从左到右编号为1,2,...,m。 有一天,巨神 ctt 得到了n个蹦床,他把这些蹦床放在方格里,他在编号为1的方格里放了一个蹦床,在编号为2,3,...,m-1的方格中放置了n-1个蹦床(一个方格只能放一个蹦床)。 巨神 ctt 估算了自己的跳远水平和蹦床的弹性,知道了他从第i个蹦床跳跃最多可以跳过li个方格(若这个蹦床放置的方格编...

2020-08-07 17:51:24 432

原创 【upc】西⽐拉先知系统 | 无所不能的分块!

问题 B: 西⽐拉先知系统 时间限制:2Sec内存限制:128 MB提交状态 题目描述 西⽐拉先知系统是⼀个强⼤的⼼灵指数监测⽹絡,能以声像扫描主动监控市⺠的⼼智与精神状态。为了判定出更复杂的⼈类⼼理参数,西⽐拉系统纳⼊了不同于既存⼈类规范的超群⼈格──不会随意和他⼈产⽣共鸣,也不会感情⽤事,能以⾮⼈类的眼光来俯瞰并裁定⼈类。 被纳⼊的超群⼈格会相互影响,共同处理数据。他们之间具体的影响⽅式形如⼀张⽆向图,如果你对⼀个节点进⾏操作,和这个节点相邻的节点也会受到相同的影响。 操作有⼀种:使⼀...

2020-08-07 17:42:47 643 2

原创 【网络流24题】最长递增子序列 | 一种奇怪的拆点建图方式

题目大意: 给出一段序列,让你求出: 1.最长上升子序列的长度 2.这个序列的最长上升子序列有多少个 3.如果最后一个元素和第一个元素可以用无数次,最长上升子序列有多少个 题目思路: 发现我的建图方式和网上的基本不一致| 大概是弱者的建图方式 首先一个非常的基础的操作就是把最长上升子序列的建图给还原出来 1.首先预处理dp_i代表以i结尾的最长上升子序列的长度 2.从末状态是最长的开始,使用一个队列进行还原建图 建图完成以后,就需要考虑网络流的建图 首先遵循基本得二分图建模: 1..

2020-08-07 11:55:59 204

原创 【网络流24题】搭配飞行员 | 二分图模型与网络流的转换

题目大意: 给出n个驾驶员,其中m个为正驾驶员,每架飞机需要一个正驾驶和一个副驾驶,正驾驶给出自己满意的副驾驶 那么最多可以起飞多少架飞机? 题目思路: 把正、副驾驶都抽象为一个点,那么如果可以合作(满意)就连一条边,也就转换成了二分图模型 现在把二分图转换为网络流: 1.将所有的副驾驶流向汇点,流量为(1) 2.将源点流向所有的正驾驶,流量为(1) 3.合法要求间流量随便给,毕竟总流量已经确定了 在这个图上跑最大流 就是我们熟知的二分图的最大匹配了~ Code: /*** kee.

2020-08-07 11:33:52 229

原创 【网络流24题】 太空飞行计划 | 关于最大权闭合子图的详解

新开一个类,便于督促自己| 每天1~2道网络流| 24题先刷完再说话| 题目大意: 有n个工程,每个工程需要若干的准备工程,建立工程会得到一定收益,与此同时,所需要的准备工程也要降低收益 问利润如何最大? 题目思路: 首先考虑,问题在求什么? 对于一个工程来言: 如果选择了x,那么 a,b就会被选,我们可以用图表示: 上图如果选择左边点x,那么右边ab就要选 所以说,这个题目的最终状态是 选出了一个子图,并且这个子图与外界无关 —— 闭合子图 之后,我们要做的就是让这个子图的权.

2020-08-07 02:05:51 256

原创 【Nowcoder】追债之旅 | 定长最短路、思维转换

题目链接:https://ac.nowcoder.com/acm/problem/14700 题目大意: 给出n个点m条边的城镇,求从1~n恰好经过k条边的最短路,k<=10 题目思路: n<=1000 其实n<=10000应该也可以做 考虑dis[i][k]代表从1出发到达i点经历了k条边的最小花费 所以更新的话,也就像最短路那么去更新了 if dis[e][k+1] > dis[i][k] + w : dis[e][k+1] = dis[i][k...

2020-08-06 01:44:06 237 2

原创 【Nowcoder】蓝魔法师 | 树形dp、组合计数

题目链接:https://ac.nowcoder.com/acm/problem/20811 题目大意: 给出n个点的一棵树,问有多少种删边方案使得删边后各连通块大小小于等于k? 题目思路: 考虑树形dp与组合数学结合 定义dp状态 dp(i,k) 代表 i的子树全部合法且i的连通块大小是k 那么显然对于任意一个节点u来说初始:dp[u][1] = 1 接下来枚举每一条边,对于一条边来言有删除与不删除两种状态: 1.删除: 删除此边,那么就意味着当前以u节点连通块大小为k的方案数 都可以

2020-08-05 01:52:19 324

原创 【Nowcoder】2020牛客暑期多校训练营(第八场)I - Interesting Computer Game | 并查集、思维、离散化

题目链接:https://ac.nowcoder.com/acm/contest/5673/I 题目大意: 从1~n给出n组数据,每次可以选择a 或者选择b,选了之后不能在选,问最多选多少个? 题目思路: 和之前总结的一道题很像:https://blog.csdn.net/qq_43857314/article/details/107253264 注意到关联性,所以不可以贪心的去搞 考虑并查集 当一些点连同时 如果当前存在n-1条边,也就是是一棵树,你总可以使得有n-1个点被选 如果大于等

2020-08-03 17:14:05 1520 2

原创 【upc】画 (picture) | 区间dp、思维转换

题目描述 licunchun 找到了一张画。 licunchun 学习了膜法,想要一块一块地,让里面的颜色消失。 照片的颜色只有一行。licunchun 每次可以选择中间一段相同颜色的一段直接让它消失。 licunchun 想知道所需要的最少次数。 licunchun 冥思苦想了1145141919810都没有想出来,于是把问题交给了你。 输入 第一行输入T,表示数据组数 对于每组数据: 第一行给定一个n,表示照片的长度。 第二行,给定一串s,用来描述这个照片的颜色。为了方便,颜色的描述统一用小写字母

2020-08-02 17:02:25 977 4

电影查询词云系统.zip

基于Flask、layui框架的电影查询词云系统,页面优化和细节做地不错了。 该项目在最后期末考核中取得了满分的成绩。

2021-07-02

基于flask的古诗词搜索系统.zip

对于一些喜欢古诗词的朋友来说,如果想要查找某个特定的内容,例如:李白的诗,避免不了翻阅书柜,而且内容得不到整合。该系统的目的就是解决这个繁琐的问题,它可以提高搜索古诗词的效率,而且强大的数据库功能免去了日常生活中繁琐的操作,例如,像查找词牌名、曲牌名、古诗内容、作者等,使得所有合法的古诗词,出现在一个界面中,一目了然,非常清晰。

2021-05-24

数据结构实验集合.zip

大二数据结构实验 6次全 含代码与实验报告:链表操作 查找操作 树 排序 二叉树 栈等全覆盖 该集合仅供参考不可作为替代品 有问题联系博主

2020-04-08

空空如也

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

TA关注的人

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