自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

StaroForgin的博客

某不科学的小蒟蒻

  • 博客(18)
  • 收藏
  • 关注

原创 [ZJOI2019]开关

开关题解简单dp。虽然是用生成函数想的。我们将的每一项的系数定为按i次达到目标状态的次数。显然,,这里的。可我们却发现里面有一些重复的次数,所以我们需要将这些重复的去掉。我们用表示扣除掉第一次后回到原点的次数,那么。对于这个式子,我们只需要记录中的系数即可。我们令答案的生成函数为,那么显然。显然,,之后就可以用除法求导公式求出忽然发现可以用dp解决了:...

2019-12-30 13:59:42 225

原创 [SHOI2015]激光发生器

激光发生器题解我讨厌数学!!!计算几何,欺负笔者数学差。好吧,此题貌似有点坑,总之笔者调了半天。这么小的数据,一看就是模拟。其实此题可以分为两大版块,一个部分是求交点,挺好写的,还要判断一下在不在线上。第二个部分是重点,就是该如何反射。我们可以先求出它与法线的夹角,再将它旋转,使它达到它反射后的方向。求夹角的可以用向量求夹角的公式:再将它旋转,将向量旋转b角...

2019-12-28 16:06:07 316

原创 [BJOI2019]排兵布阵

排兵布阵题解今天比赛上这道题好像是人均题呀。好吧,就一个简单的,连优化都不需要的背包dp。我们每次只需要处理在比第i个城堡的第j大的玩家大的情况,不必把所有的兵的情况都处理完。然后就可以过了。源码#include<cstdio>#include<cmath>#include<cstring>#include<iostre...

2019-12-28 15:32:35 233

原创 [LOJ 2462][2018 集训队互测 Day 1]完美的集合

完美的集合题解生平最讨厌的卡常。其实这道题蛮好想的。由题可知,如果一个集合能用,它一定是一个联通块而且总重量小于m。很明显的dp了,数据范围也不大。我们可以先以每个节点为根,都做一次dp。不过我们马上发现,时间复杂度是,明显要超时。那我们应该怎么做呢?我们可以采取dfs序dp。因为我们只需求出每个根的dp值,那么其它点的dp值我们都是可以不管的,也就是它是什么值都无所谓...

2019-12-26 20:46:43 445

原创 [luogu P3784][SDOI2017]遗忘的集合

遗忘的集合题解生成函数万岁!!!很明显是一道的生成函数的题,开始推吧!!!我们知道,一个数可以被取无限次的生成函数为。我们可以用01的序列表示是否选这个数,设每项为,则这个多项式F为很明显,我们的目标是求出。子命题:证明如下:证毕。将原式代入并取ln如此我们枚举,现在就求出了,然后我们就可以用类似筛法的方式枚举倍数...

2019-12-25 19:42:40 172

原创 泳池

泳池题解做这题时自闭了一个下午。还在自闭中。看到这个图的第一眼时,笔者还未反应过来这题到底是什么。可能是笔者语文不好先讲一下题意,我们只能在一个每个格子(其危险的概率为p),我们只能从底层开始画一个全是安全的矩阵面积为k时的概率。我们发现,直接求这个概率不大方便,我们可以分别求出小于等于k的概率与小于等于k-1的概率,将它们相减即可。可我们到底应该怎么做呢?考虑dp。令...

2019-12-23 20:32:38 528

原创 九连环

九连环题解一看到这题目,就知道不是什么好题。好吧,一眼就感觉是个dp。根据样例解释我们很容易发现:令为i连环所需的最小步数,则。哇,这么简单。忽然发现数据范围为1e5,要炸!!!高精明显会TLE,所以我们来想一想如何用其它方法做。巨佬可忽略下面这段。我们把每个的值列出来:1,2,5,10,21,...完全没有规律,咋办?不你看错了,有规律的,换成2进制。...

2019-12-23 14:37:50 229 1

原创 寿司晚宴

寿司晚宴题解分析一下部分分。30pts:考虑状压dp,我们可以选择将每个质因数压为一位,一个二维的dp状压,方程式也很好想。 50pts:别问笔者怎么想出来的,我们发现两个质因子完全不同的集合,它们构成的数也一定不同。于是我们可以去掉一维,只在最后加上两个完全不同状态的乘积即可。 70pts:笔者实在不知道。 100pts:我们发现,任意一个小于n的数最多只会有一个大于的因子。所...

2019-12-21 16:24:17 183

原创 1-02E. JM的西伯利亚特快专递

1-02E. JM的西伯利亚特快专递题解题面说得很明白了,很明显的一道贪心。我们知道要让字典序最小,我们必须让越前面的数越小。所以,贪心思想如下:我们每次假定当前s串中最小的值,若t串尾部的值比这更小,那么就要t串尾的值,否则一直取到最后一个。其正确性很容易证明。源码#include<cstdio>#include<cmath>#inclu...

2019-12-21 15:55:05 203

原创 荷马史诗

荷马史诗题解一道Huffman树的模板题。尽管笔者考试时未做出来(因为不会Huffman)。其实到我们明白题意后就可以知道此题就是在一棵k叉树上旋n个点,使没有一个点的祖先被选。研究到这里,很明显的一道Huffman的模板,至于Huffman具体怎么实现就不再说明了。源码//#pragma GCC optimize(3)//#pragma GCC optimize(2)...

2019-12-21 15:37:37 221

原创 NTT(快速数论变换)学习

NTT(快速数论变换)NTT是一个与FFT一样想看吐的算法,一个模板,调了一天。关于FFT的部分我就不过多赘述了,可以参考这篇博客:~~~(还未完工)。FFT虽然跑得快,但是因为是浮点数运算,终究还是有 精度、常数 等问题。 ------Tiw_Air_OAO如上面那位巨佬所说,FFT的却存在许多问题,而且处理模数还比较麻烦于是就引入了 NTT,在——模的意义下(多项式的系...

2019-12-19 14:08:18 1358 4

原创 无限之环

无限之环题解最开始看上去像道模拟,不过看到数据范围就知道不可能了。好吧,正解是网络流,接下来讲一下网络流怎么打这一道题。我们知道,对于每一个格子的每一个管子,它一定会与附近的一个格子的一个管子相连,这是毋庸置疑的。我们必须要让每个管子都流满否则必定会漏水。我们发现,整个图最后一定会变成若干个独立的联通块,我们可以将每个格子都连向源点或者汇点,至于怎么连可以通过黑白染色的方法来判断。...

2019-12-16 14:31:24 582 1

原创 [BZOJ3280]小R的烦恼

小R的烦恼题解此题是一道很明显的网络流,费用流+最大流。建图其实很好想的,我们可以采取活死人拆点法,将现在活着的人与已死的人拆成两个点,分别是1-n+1与n+2-2(n+1)。每个点表示第i天开始时的活人与死人。在每两天各自的活人与死人之间连一条边,容量为INF,边权为0,因为这一天对第二天能输送的人的值是无限的,有多少都可以送过去。之后,我们在第i天的活人与第i+1天的死人间连一条上...

2019-12-13 19:38:27 486 2

原创 Path

Path题解一道很明显的网络流。由于题目只想让最小路径变大一点,所以我们可以把所有最短路径建成一张网络,然后,我们就可以找出这个图的最小割。很显然,最小割的值就是我们总共封路的花费。注意要开long long,笔者因为这个WA了好久。如果打的dijk要加堆优化,否则会TLE。源码#include<cstdio>#include<cstring&...

2019-12-11 15:22:20 102

原创 不勤劳的图书管理员

不勤劳的图书管理员题解很明显的一道动态逆序对的题,我们可以通过在每次交换时维护它的两点对交换的贡献得出答案。不过如果我们只用的方法暴力去维护的话就只能得到20分,于是我们开始想优化。有些大佬们用分块+CDQ分治秒了这道题,比笔者的树套树快了好多,不过笔者也只会打树状树组套线段树。好了,讲一下树套树怎么打这道题。我们内层用线段树维护它的权值,外层用树状数组维护区间。每次查询时...

2019-12-09 14:37:53 200

原创 概率充电器

概率充电器题解很简单的一道树形dp,不过我们得用容斥的方法转变一下思路。如果我们将dp值设为灯亮的几率,我们的时间复杂度可能被卡到,显然是不行的,我们也就不具体分析了。我们设为ti不被它的子树上任意一点亮的概率(含自身)。很显然,dp1(以下省略1)的转移方程式如下:u点不能被点亮的情况为它自身不亮且它的儿子不能将它点亮的概率的乘积。然后,我们可以用换根的想法改一改...

2019-12-07 16:26:54 126

原创 冒泡排序

冒泡排序题解看到这个题目,我们需要先考虑一下冒泡排序的原理。我们可以发现冒泡排序对于一个数来说,如果它前面没有比它大的点,它会一直向右移动到下一个比它大的点。最后回到它应在大小的位置。于是,我们可以先用树状数组处理出比它小的值,一轮一轮一直模拟到没有能处理完一轮的时候,最后用冒泡模拟剩下的可以交换的数的交换。源码#include<cstdio>#includ...

2019-12-07 13:51:26 112

原创 可持久化无旋Treap学习

可持久化无旋Treap今天又学习了可持久化非旋Treap,其实很简单,将普通的非旋Treap持久化一遍就行了。具体来说,就是将每次操作后得到的树记录下来,每次需要改变一个点的信息时,将原有的点的信息记录下来,建一个新点去更改它的信息。其实持久化的过程与线段树的持久化相似。其实打出来跟普通的非旋Treap差不多,加几个改点的步骤即可。非旋Treap学习见此处:非旋Treap学习模...

2019-12-02 15:56:31 168

空空如也

空空如也

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

TA关注的人

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