- 博客(4)
- 资源 (3)
- 收藏
- 关注
原创 HDU 4804 Campus Design(状压DP)
题目链接 题意 给你n行m列矩阵,有的地方有地砖,你有1∗11*11∗1 地砖和1∗21*21∗2地砖,求放1∗11*11∗1地砖数在[c,d][c,d][c,d]区间内铺满地板的方案数。 思路 一看感觉比普通贴地砖状态多了一个记录1∗11*11∗1使用次数的状态,然后其他无太大区别,转移方程需要考虑一些情况。 dp[枚举位置][包括本身的连续m个地砖状态][已经放了多少个1∗1]=方案数dp[枚...
2019-07-27 23:40:14 113
原创 CodeForces 449B Jzzhu and Cities(最短路)
题目连接 题意 给你一个由n个点m条边组成的无向图,再给你k条边(起点必为1),再k条边中求最多能删掉几条边,使得1到各个点的最短路大小不变。 思路 Dijkstra 变形,dis数组初始化正无穷,可以直接用k条边先更新dis数组(因为起点必为1),然后将当前所有起点据终点长度不为正无穷的入队(1号点先入队),修改dijkstra中判断,如果当前点是第一次能够缩短,且不为正无穷说明铁路能够舍去。 ...
2019-07-22 12:53:02 90
原创 洛谷 P3402 【模板】可持久化并查集
题目链接 思路 用可持久化数组维护历史版本的 fa 父亲数组和 dep 树深度数组,以树深按秩合并。 代码 #include <stdio.h> const int maxn = 2e5+5; int n, m; struct Node { int l, r, val; }h[maxn*80]; int cnt, rootfa[maxn], rootdep[maxn], t...
2019-07-17 16:35:09 91
原创 UVA 11354 Bond(Kruskal+并查集启发式合并)
题目链接 题意 给一张无向图,多次查询两点,求两点之间最小瓶颈路的权值。 思路 最小生成树+LCA是一种,下面讲另种方法通过限制树的高度暴力LCA求解。 首先可以用Kruskal求最小生成树,那么任意两连通的点最小瓶颈路都会在生成树上。 在Kruskal算法中的并查集我们不能使用路径压缩,会破坏树的结构。比如两点间 a=>b,变成了a=> c <=b,那么答案就可能出错。 可以按...
2019-07-16 16:06:08 115
数据结构课程设计——Huffman(简单压缩)
2019-01-10
web前端课程设计
2018-12-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人