07 2020 档案
摘要:题目大意: 今有两数$a,b$,进行$k$轮对抗,每轮对抗规则如下: 每次取$a,b$中较小者,从较大者中减去其本身的值,并使其值翻倍. 现给出$a,b,k$,请你求出$k$轮对抗后其较小者之值. solution: 通过打表可以发现,答案具有循环节且长度不超过$\frac{(n+m)}{2}$,于
阅读全文
摘要:题目大意: 今有五变量,ABCDE者也.构造一字符序列A个'I',B个'O',C个'I',D个'O',E个'I'相接也.现有如下操作:给定变量$l,r$,可将区间$[l,r]$内的'I'反转为'O','O'反转为'I',代价为$r-l+1$,请你求出将该序列变为全'I'序列所需的最小代价,若无法变为
阅读全文
摘要:冠盖满京华,斯人独憔悴.孰云网恢恢,将老身反累.千秋万岁名,寂寞身后事
阅读全文
摘要:题目大意: 有点懒,直接截图吧。 solution: 这题赛场上把$n^{2}$DP打了出来,谁知需要初始化,调了好几个小时,自闭了。$n^{2}$DP显然,前后各扫一遍,在此基础上,讲讲正解吧。 一道简单dp.我们直觉是数据结构优化dp,这里用了线段树.具体实现方法:先将高度离散化,然后以高度为下
阅读全文
摘要:题目大意: 予你一字符串.于是便有了$n$次操作,每次操作给你三个变量$a,b,c$,将$(a,b]$处字符插入$(c,c+b-a]$处,原序列右移.此后便有了查询,请你输出操作后$[1,k]$位字符. solution: 考虑k比较小,所以我们可以进行dp,从后往前推,一一枚举$[1,k]$操作前
阅读全文
摘要:题目大意: 今有一数,名之曰$k$,范围一至十也.先用此数构造字符串$s(k)$,$s(0)$为'J''O''I'三个字符选其一单独构成字符,此后$s(k)$为$4^{k-1}$个$J$,$4^{k-1}$个$O$,$4^{k-1}$个$I$与$s(k-1)$组成的字符串环.现给你一长度为$4^{k
阅读全文
摘要:题目大意: 给你若$n$个在$x$轴上的不重合的点和$n$个在$y$轴上的不重合的点(均在坐标轴正半轴上),请你构造出$n$条互不相交的线段.现有$m$组询问,对于每组询问,给出一点$P(x,y)$,请你求出线段$OP$与你构造出的$n$条线段有多少交点.(点$P$在第一象限) solution:
阅读全文
摘要:题目大意: 今有一数轴,有若干人在其上走,从时间$begin$开使在$s$处出现,走到$t$处后下一秒消失,任何人速度均为$1$或$-1$,现请你求出任意一人可与多少人相遇.两人相遇,当且仅当他们同时同地存在,且任意两人至多相遇一次. solution: 简单线性规划,以时间作为$x$轴,位置作为$
阅读全文
摘要:题目链接: P3168 [CQOI2015]任务查询系统 solution: 主席树难题.区间修改单点查询,这本是普通线段树可以做到的.但本题思维难度较大,要求我们求区间前$k$小,为了空间防爆,故将代价离散,然后以时间排序,主席树维护前缀和即可. code: 1 #include<iostream
阅读全文
摘要:题目链接: P2633 Count on a tree solution: LCA好题.询问第k大,不难想到主席树和前缀和思想,对于每个点$x$,我们可以用主席树维护root到$x$上的序列,然后查询$x,y$路径上的第$k$小只需要用前缀和维护权值线段树,用$x+y-lca(x,y)-f[lca(
阅读全文
摘要:主席树是最经典的可持久化数据结构之一,用于查询历史版本的信息,主要需要用到前缀和思想(未必),今有以下二模板题,请与君共赏之. 题目一: 大意 求静态区间第k小. 主要思想: 利用主席树前缀和思想,对序列先离散得序列${b}$,然后第$i$个版本的主席树表示区间$[1,i]$上各个元素出现的次数.先
阅读全文
摘要:题目链接: P3052 [USACO12MAR]Cows in a Skyscraper G 题目大意: 给出n个物品,体积为w[i],现把其分成若干组,要求每组总体积<=W,问最小分组。(n<=18) solution: 状压好题.由贪心策略,在dp转移时维护每个状态最大剩余空间,然后分类判断即可
阅读全文
摘要:题目大意: 现有$n(n \leq 10^{6})$个int范围内正整数,现欲取其中二数进行与操作,请求最大结果. solution: 欲解此题,必先熟悉位运算.位运算,玄学者也.现有一神奇解法,观码以解之. code: #include<iostream> #include<cstdio> #in
阅读全文
摘要:题目大意: 给你一段长度为$n$的括号序列,有以下操作:一、Change x:将x处的括号反向;二、Query x y:查询欲使[x,y]内的括号序列合法,至少要从左端右端分别添加几个括号. solution: 线段树板子,注意以下更新即可: inline node update(node a,no
阅读全文
摘要:惑矣!埋坑,后填之.
阅读全文
摘要:题目大意: 对于四个非负整数$n,c,p,m$以及长度为n的数组${a_{i}}$请求出方程$\sum_{i=1}^{n} \prod_{j=1}^{a_{i}}x_{i,j} \equiv c (mod\ p)$在$x_{i,j}\in [0,p)$中整数解的个数mod $m$后的值. solut
阅读全文
摘要:题目链接: P2158 [SDOI2008]仪仗队 solution: 许久没学数论了,刚好刷到这题,复习下欧拉筛吧.板子贴下来就跑~ code: #include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #inc
阅读全文
摘要:#本篇题解是作者学习为学习斜率优化dp而写,其中许多地方参考(或抄)了hhz6830975 的题解,见谅! 题目链接: P3195 [HNOI2008]玩具装箱 题目大意: 本题是斜率优化dp经典入门题,适合像我这种小白做.首先我们可以推出转移方程:$$f[i]=min{f[j]+(sum_{i}-
阅读全文
摘要:题目链接: P4471 [BJWC2018]词韵 题目大意: 懒得打了,自己看题吧. solution: 由于本题求的是最长公共后缀,所以我们可以想到从末尾倒序构造trie,然后再来分析此题.可以注意到的是,两个词能够押韵,当且仅当它们的关键点在trie上是父子或兄弟关系.所以我们可以考虑树形DP.
阅读全文
摘要:题目大意: 给你n个点$(n\leq100000)$所构成的边带权的无向图,每个点都有黑或白两种颜色之一,其中黑记为1,白记为0.现在要你选择一些边(选择一条边的代价即为此边权值),用这些边构成新的图,使得新图中每个白点都与黑点联通,且每个白点到距离其最近的黑点的距离等于原图中的最短距离.若不存在这
阅读全文
摘要:题目大意: 给你一个数A,以及一串全是数字的字符串以构造矩阵C,C[i][j]=a[i]*a[j](a[k]表示字符串中第k位所代表的数字).请你求出权值之和恰好为A的子矩阵个数. solution: 此题比较有意思.题目要我们求的答案即满足$(\sum_{i=x}^{u}\sum_{j=y}^{v
阅读全文
摘要:题目链接: P3967 [TJOI2014]匹配 题目大意: 给定n男n女,n男与n女两两之间有一个幸福值H[i][j],请求出他们之间的完美匹配并且输出匹配的必须边的端点.($n\leq80$) solution: 对于完美匹配,我们可以跑最大费用最大流.至于求必须边,不难发现第一次跑完完美匹配后
阅读全文
摘要:题目大意: 有$n(n\leq 13)$个人,其中你是1号.每个人都有一个初始经验值,给定一个$n*n$的矩阵gift,gift[i][j]表示第i个人与第j个人比赛能够获得的经验值.再给定一个$n*n$的矩阵val,val[i][j]表示第i个人与第j个人比赛获胜能赢得的积分(一个人获胜,当且仅的
阅读全文
摘要:题目链接: https://www.luogu.com.cn/problem/P2768 题目大意: T组数据,对于每组数据,输入两个值n、k,表示有$k(k\in[1,1000])$种宝石,每种宝石数量为$n(n\in[1,10000000000])$且同种宝石之间完全相同.请你求出取出$x(x\
阅读全文
摘要:题目通道: https://www.luogu.com.cn/problem/P5784 题目大意: 给你一个数n,表示全为非负数的矩阵大小为3*n,给你3个数$c_{1}$、$c_{2}$、$c_{3}$,分别表示矩阵第一、二、三列的数值之和,再给你n个数,表示第$a_{i}$行的数值之和,请你求
阅读全文
摘要:题目大意: 折叠的定义如下: 一个字符串可以看成它自身的折叠。记作S = S X(S)是X(X>1)个S连接在一起的串的折叠。记作X(S) = SSSS…S(X个S)。 如果A = A’, B = B’,则AB = A’B’ 例如,因为3(A) = AAA, 2(B) = BB,所以3(A)C2(B
阅读全文
摘要:题目大意: 给你$n$个点和$m$条边,要求你输出最小生成树的边权之和并判断最小生成树是否唯一. solution: 最小生成树板子,Kruskal即可.至于判断唯一性,这里有一种耐人寻味的解法.对于每一个边权值$z$,我们可以寻找所有边权与其相等的边并统计其中合法边数sum,然后再扫描一次选其中足
阅读全文
摘要:题目大意: 给你一个长为$n$的数组和$m$次操作机会,每次操作可以选择一个数使其加上或减去$k$,请你求出进行m次操作后得到序列的乘积最小值. solution: 此题很明显是贪心,需要努力将所有数的乘积变为负,故消$0$策略:如果当前乘积已为负,则全部变正,否则使最后一个$0$变为负即可. 若没
阅读全文
摘要:题目大意: 给你$k$种颜料,每种颜料有$c_{i}$份,每份颜料涂一块木板,求恰好用完所有颜料且相邻两木板颜色不同的涂色方案种数.($1\leq k\leq 15$,$1\leq c_{i}\leq 5$) 基本思路: 由于此题数据较小,考虑DP套组合数学,但重复dp运算量极大,考虑记忆化搜索优化
阅读全文
摘要:题目大意: 求序列${a_{i}}$,使得$|\sum_{i=1}^{n}a_{i}\cdot i^{2}|_{min}$,其中$a_{i}\in{1,-1}$. 解题思路: 由打表可以看出,$n\leq 5$时,答案为特殊情况,打表解决;$n\geq 6$时,答案呈10011001......排布
阅读全文
摘要:题目大意: 给你一个n*m(n,m<=1100)的矩阵,其中a[i][j]的值均不超过n*m,需要求出所有以[1][1]为左上顶点的子矩阵中只出现一次的数的个数总和,ans对19900907取模. 解题思路: 如果是对于求以单个点作为右下顶点的矩阵中只出现一次的数的个数,我们便可以极具洞察力(nai
阅读全文
摘要:题目大意: 给你两个4*4的01矩阵A、B,要求你从矩阵A中将'1'移动若干步(移动即与相邻的'0'交换位置),变换为B,输出最小步数. 基本思路: 本题数据较小,固定为4*4,第一时间想到状压(2^16),用状压代替hash比较容易.由于要求最小步数,bfs扫描到B矩阵即可输出答案,复杂度远小于d
阅读全文
摘要:题目大意: 给你n个点n条边,每个点只有一个出度和一个权值,请你选出若干个点,使得这些点之间两两没有边相连且权值之和最大. 解题思路: 根据题意,不难看出n个点构成一个基环树森林且只有一个环,于是我们只需要找环断边树形dp即可. code: #pragma GCC optimize(2) #prag
阅读全文
摘要:神题++ 题目大意: 给你一个有n个节点的无向图,1为源点,n为汇点,求最大流和将最大流扩容goal个单位所需最小费用. 解题思路: 此题思路较为灵活,不失为网络流好题. 最大流明显板子,先求出最大流maxflow.由于最大流扩容需要费用,我们不妨新建m对边,流量为正无穷,费用为w[i],流量为in
阅读全文
摘要:日常网络流. 题目大意: 在一个n*m的矩阵中,每个格子有一定的高度,当高度为0时该格子便不存在,现在这个矩阵中有若干只蜥蜴,每只蜥蜴可以跳到距离不大于d的格子,问有几只蜥蜴无法逃离. 解题思路: 一开始看到这道题迷了好久,知道是网络流但是不懂怎么建边,仔细分析了一波题解,发现思路其实很清晰. 首先
阅读全文

浙公网安备 33010602011771号