
搜索
文章平均质量分 51
CHCXCHC
这个作者很懒,什么都没留下…
展开
-
poj 3160 Father Christmas flymouse 强连通缩点+bfs
本题的题意为 给n个点m条边原创 2014-07-03 21:49:04 · 1118 阅读 · 0 评论 -
hdu 5380 Travel with candy 贪心&队列
题意:A想从0走到n,A每走一单位的距离就要吃一颗糖,现在给出第i个点离0的距离a[i](保证a[i] < a[i+1]),和每个点买入一颗糖和卖出一颗糖的单价buy[i]和sell[i],A能携带糖的上限为C,问从0走到n的最小花费。如何使得花费最小?低价买入&高价卖出这种情况可以使得花费最小,而且走的顺序是定下来的。。必须从0…1…2…3…n,可以这么做,记录走到每个点都满载的情况花费,然后只需原创 2015-08-17 16:26:19 · 534 阅读 · 0 评论 -
SCU 4444 Travel (2015四川省省赛I题)
题意很简单。这题是真的可以做出来的。但是用set TLE了。。就差这么一题。。原创 2015-06-22 22:22:30 · 1641 阅读 · 1 评论 -
hdu 5424 Rikka with Graph II 判n点n边的图是否为哈密顿通路
题意:给n个点n条边,判断图是否为哈密顿通路。直接暴力搜//author: CHC//First Edit Time: 2015-08-30 16:12#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <set>#include <vector>#include <map>原创 2015-08-30 21:40:56 · 623 阅读 · 0 评论 -
hdu 5379 Mahjong tree dfs
题意:在一棵树上给所有点标号,要求任意一个子树里的点编号连续,每一个点的儿子编号连续。分析:考虑到一个连续的序列[l,r],如果这颗子树有超过3个非叶子儿子,那么一定是无解的。因为对于一个连续序列[l,r]最多可以分配给两个非叶子节点。分别是l和r,[l+1,r-1]这些可以随意分配给叶子节点。 考虑到这一点其实问题就可以简化了 对于每一个节点。 如果确定[l,r]是分配到以这个节点为根的子树原创 2015-08-12 10:39:42 · 719 阅读 · 0 评论 -
hdu 5413 CRB and Roads 位运算优化复杂度
题意:给一个包含n个点m条边的无环单向简单图,然后问有多少条多余边。((u,v)(u,v)是多余边当且仅当u−>vu->v不经过(u,v)(u,v)这条边。)都说了是无环单向图。因此很容易想到拓扑排序:对于当且点u,如果存在(u,v)(u,v),v可以由u通过另一条路径到达,那么(u,v)(u,v)这条边就是多余边,但是这样暴力下来复杂度大概是O(n∗(n+m))O(n*(n+m)),然后再乘以一个原创 2015-08-25 20:38:39 · 1325 阅读 · 0 评论 -
SCU 4439 Vertex Cover (2015四川省省赛D题)
题意:给一个有n个点m条边的无向图,染色某些点,使得任意一条边都有某个端点被染色,其实就是求最小点覆盖的点数。原创 2015-06-22 21:57:50 · 1970 阅读 · 0 评论 -
hdu 3313 Key Vertex BFS应用
题意:给定一个有向图,给一对点(s,t),可删除点的定义为:删除某个点之后使得s没有路径到达t,问有多少个可删除点。思路:想法1:这题一开始我的思路就是用网络流来做。。就是先跑s->t的网络流,若最大流量==1则代表存在关键点,否则不存在关键点(>1和==0的情况分别讨论),然后找关键点就是每次找到可通过的边的最远的那个点开始第二次跑网络流。。之后。。发现不好处理。所以路就断了原创 2014-12-02 21:39:15 · 808 阅读 · 0 评论 -
HDU 5025 Saving Tang Monk
搜索原创 2014-09-21 20:48:34 · 711 阅读 · 0 评论 -
HDU 5040 Instrusive 搜索
题意:原创 2014-09-21 20:44:06 · 852 阅读 · 0 评论 -
hdu 5416 CRB and Tree 求树上路径异或结果为s的有多少
题意:给一颗树,定义f(u,v)为u到v路径上的异或结果,现在给定s,要求异或结果为s的路径有多少条。(1,2)和(2,1)只算一种。根据异或的特性有f(u,v)=f(1,u)^f(1,v),先把f(1,i)的所有i都求出,然后对于每一个u(1~n)如果有f(u,v)=s的话那么有f(1,v)=s^f(1,u),所以求一下f(1,v)有多少个,加起来就行了,最后要特殊讨论下s==0的情况。//aut原创 2015-08-22 18:43:58 · 1078 阅读 · 0 评论