随笔分类 - 紫薯
摘要:#题意: n个城市,告诉每个城市的坐标,还有q个联通块,现在要把这n个城市连起来,可以购买联通块(每个有一定的费用),或者新建一条边(费用为点之间的距离的平方),问最小费用是多少。 #思路: 首先可以想到朴素的做法,二进制枚举每个连通块选还是不选,判断该状态下图是否已经联通,如果未联通的话再从朴素的
阅读全文
摘要:#思路: 1.$f[i]%n$具有周期性,找循环节即可 2.数据范围很大,要用ull #代码: ll ksm_u(ull a, ull b, ll p) { ll res = 1; a%=p; while(b) { if(b & 1)res = res * a % p; a = a * a % p;
阅读全文
摘要:#思路 求人数的部分为经典题 重点是判断方案是否唯一: 设$vis[u][j]$表示以$u$为根并且$u$的状态为$j$时方案是否唯一 转移就是如果子节点有方案不唯一的话,父节点的方案也不唯一 #代码: #include<bits/stdc++.h> using namespace std; typ
阅读全文
摘要:传送门 #题意: 给定一个括号序列,要求增加最少的字符使得该序列变为合法的括号序列,输出增加后任意一种方案。 #思路 可能是区间$dp$写少了,感觉模板题都不会写了 $dp[i][j]\(表示将区间\)[i,j]$变为合法的括号序列所需要的最少的增加的字符数。 先考虑初始化,如果该区间长度为1的话,
阅读全文
摘要:原题链接 #思路 #代码 #pragma GCC optimize(2) #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pair<l
阅读全文
摘要:#include<bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pair<ll, ll>PLL; typedef pair<int, int>PII;
阅读全文
摘要:#题意 $n$种箱子,每种箱子都有无数个,有三个属性:长宽高,其中箱子可以任意旋转。 一个箱子能够叠在另一个箱子上的条件是必须有两个属性小于另一个箱子。 求最大能够叠加的高度。 #思路 $n$只有$30$,考虑$n^{2}$的写法。 由于属性是都小于才可以,所以同样摆法的箱子贡献是相同的。 由于箱子
阅读全文

浙公网安备 33010602011771号