【前言】话说好久没有写题解了。到暑假了反而忙。o(╯□╰)o
【原题】
2458: [BeiJing2011]最小三角形
Time Limit: 10 Sec Memory Limit: 128 MB
Submit: 574 Solved: 177
[Submit][Status]
Description
Xaviera现在遇到了一个有趣的问题。
平面上有N个点,X...
分类:
其他好文 时间:
2014-07-13 00:00:29
阅读次数:
302
点击打开链接
二分图的最小顶点覆盖数 = 二分图的最大匹配数
题意: 在N*N的网络中有K颗小行星。小行星i的位置是(Ri, Ci)。现在有一个强力的武器能够用一发光束将一整行或一整列的小行星消灭。想要利用这个武器消灭所有的小行星最少需要几发光束?
分析: 以小行星的左右坐标建立二分图,就可以看出是求二分图的最小顶点覆盖数。
#include
#include
#inc...
分类:
其他好文 时间:
2014-07-12 23:37:10
阅读次数:
220
【前言】话说好久没有写题解了。到暑假了反而忙。o(╯□╰)o
【原题】
2458: [BeiJing2011]最小三角形
Time Limit: 10 Sec Memory Limit: 128 MB
Submit: 574 Solved: 177
[Submit][Status]
Description
Xaviera现在遇到了一个有趣的问题。
平面上有N个点,X...
分类:
其他好文 时间:
2014-07-12 23:08:35
阅读次数:
194
多重背包的可行性问题。
题意是说有 1~6 种石头,分别价值1~6 。然后有不同的数量,问你能不能平均分给两个人。
这时候可以把价值当作费用,求能不能到达 总价值的一半。即讲背包的容量设为 总价值的一半,能否装满。
据说有个很强大的“剪树” 1~6的最小公倍数是60 。
个数超过60……if(n&1)n=61; else n=60;
ORZ……没想到,也没用这个。...
分类:
其他好文 时间:
2014-07-12 21:39:06
阅读次数:
257
题目来源:Light OJ 1406 Assassin`s Creed
题意:有向图 派出最少的人经过所有的城市 并且每个人不能走别人走过的地方
思路:最少的的人可以走完全图 明显是最小路径覆盖问题 这里可能有环 所以要缩点 但是看样例又发现 一个强连通分量可能要拆分 n最大才15 所以就状态压缩
将全图分成一个个子状态 每个子状态缩点 求最小路径覆盖 这样就解决了一个强连通分量拆分的问题...
分类:
其他好文 时间:
2014-07-12 20:42:34
阅读次数:
265
哈夫曼树
给定n个权值作为n个叶子结点,构造一棵二叉树,若带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。节点的带权长度是这样定义的:节点的权值*根节点到该节点的路径长度。树的带权路径长度(Weighted Path Length of Tree,简记为WPL)则是指所有节点的带权长度和。哈夫曼树就是使WPL最小的一种树,并且哈夫曼树是满二叉树。它的构造方法是哈夫曼方法。哈夫曼树是这样构造的:...
分类:
其他好文 时间:
2014-07-12 19:49:04
阅读次数:
252
【前言】话说好久没有写题解了。到暑假了反而忙。o(╯□╰)o
【原题】
2458: [BeiJing2011]最小三角形
Time Limit: 10 Sec Memory Limit: 128 MB
Submit: 574 Solved: 177
[Submit][Status]
Description
Xaviera现在遇到了一个有趣的问题。
平面上有N个点,X...
分类:
其他好文 时间:
2014-07-12 18:47:21
阅读次数:
190
F - MST
Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others)
SubmitStatus
Problem Description
Given a connected, undirected graph, a spanning tree of that graph...
分类:
其他好文 时间:
2014-07-12 17:42:21
阅读次数:
199
题目不难,但由于个人英语不好。。。。。
百度了下,题目意思是要求出字典序最小的并且不是所输入字符的子串;
也就是输出最多的连续的A;
如果没有A,输出一个A;
#include
#include
int main()
{
int a,i,j,b,c,d;
char t[105];
scanf("%d",&a);
while(a--)
{
d=1;
scanf("%s",t...
分类:
其他好文 时间:
2014-07-12 17:14:32
阅读次数:
152
很常见的想法了= =#include #include #include using namespace std;const int N=400;const int MAXE=200000;const int inf=10&&d[u]+edge[j].w=0) printf("Oh, I lose ...
分类:
其他好文 时间:
2014-07-12 14:33:52
阅读次数:
167