09 2018 档案
摘要:Trie 计数+Trie,读清题意很重要 https://vjudge.net/problem/UVALive-5913 kmp AC自动机 模板:https://vjudge.net/problem/UVA-11488 https://vjudge.net/problem/UVA-11019 ht
阅读全文
摘要:对于每一条边,如果是树边,直接加入,否则,考虑最终的最短路会不会经过此边,如果会经过,就依此边的任意一个节点为初始点,在包含所有边的图中跑最短路,dis[a]+dis[b]即可(a,b为所求路径的两个点),dis[]为从该初始点出发到所有点最短距离的数组 在树边考虑最短路径时,需要用lca求最近公共
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2586
阅读全文
摘要://Dinic struct Edge{ int from,to,cap,flow; Edge(){ } Edge(int a,int b,int c,int d){ from=a; to=b; cap=c; flow=d; } }edges[maxm*2]; int n,m...
阅读全文
摘要:求第k短路模板 先逆向求每个点到终点的距离,再用dij算法,不会超时(虽然还没搞明白为啥。。。 #include<iostream> #include<cstdio> #include<cmath> #include<queue> #include<vector> #include<string.h
阅读全文
摘要:又一次写起了几何。。。。 特殊处理在于有可能出现多条线段交于一点的情况,每次考虑时,对每条线段与其他所有线段的交点存在一个set里,对每一个set,每次删除set.size()即可 重点在于判断两条线段的交点是否是一个整数点,需要特殊考虑,平行和y=kx+b关系式不能成立的情况 我的代码中没有判断除
阅读全文
摘要:可能写了个假算法 假设定义:含有一个欧拉路的图为类欧拉图 欧拉路的定义:一个无向连通图中,存在一条路径对所有边都遍历且仅遍历一次;判断方法:该连通图中度为奇数的点的个数不能超过2,即为0或者2 题目解法: 对每一条数据a,b,c,想象成a点与b点之间连了一天值为c的边,则此图共有4个点 问题变成求图
阅读全文
摘要:题目地址:http://codeforces.com/problemset/problem/1039/A 题目的关键在于理清楚思路,然后代码就比较容易写了 对于每一个位置的bus,即对于每一个i(i>=1 && i<=n) ,x[i]必然大于等于 i ,假设第 i 个车可以停在 x[i] 处,则对于
阅读全文
摘要:总感觉我这种做法会T,一直没写,看了其他人的题解也是这样,,,就果断写了,,可能数据不太深,或者玄学复杂度 题意即求xk-1长度的所有区间的最大值的和,对每一个i(数组下边),他对答案的贡献数量就是在以ar[i]为最大值的最大子区间中所有符合条件的区间数量 求ar[i]的作用区间,即,求最小的l,对
阅读全文
摘要:STL的强大不得不服,应该还有更优的做法 倒着查询,刚开始把所有边和点都考虑在内,之后依次从后往前删边,然后删除不符条件的点 重点在于如何删除不符合条件的点,我用set<pair<int,int>> 存储每个点和他的度(与他相连的点数),每次删除一条边时,减少两个点的度,依次从set中取出度最小的点
阅读全文

浙公网安备 33010602011771号