Problem DescriptionThere is a town with N citizens. It is known that some pairs of people are friends. According to the famous saying that “The friend...
分类:
其他好文 时间:
2014-07-27 22:26:19
阅读次数:
199
并查集的水题,比赛时怎么都AC不了,后来发现是没有考虑先3 2 后1 2的情况,下次注意!#include#include#includeusing namespace std;int x[30010];int k[30010];int num[30010];int find(int y){ ...
分类:
其他好文 时间:
2014-07-27 22:18:59
阅读次数:
228
题目来源:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1549 并查集,求出每个friends集合,然后再计算每个集合friends个数,求出最...
分类:
其他好文 时间:
2014-07-27 22:01:29
阅读次数:
234
http://blog.csdn.net/metaphysis/article/details/6926997先向作者表达一下敬佩吧,十分巧妙地利用了状态压缩。这道题有点组合数学的味道,当一个格子选后,就把行最大值与格子值相等的行标志位置1.这样,当111111111111即是求的状态了。这样,可以...
分类:
其他好文 时间:
2014-07-27 21:46:20
阅读次数:
362
#include
#include
#include
#include
#include
#include
using namespace std;
const int maxn = 1000;
char s[maxn];
bool failed;
vector ans;
struct node
{
bool have_value;
int v;
node *left,*...
分类:
其他好文 时间:
2014-07-27 11:54:43
阅读次数:
198
UVA 10410 - Tree Reconstruction
题目链接
题意:给定一个树的dfs序列和bfs序列,求出这颗树
思路:拿dfs的序列,分成若干段,每一段相当一个子树,这样就可以利用bfs的序列去将dfs的序列分段,然后利用一个队列去存放每一段,不断求出子树即可。一开始以为parse tree一定是二叉树,原来不一定啊。
代码:
#include
#i...
分类:
其他好文 时间:
2014-07-27 11:49:23
阅读次数:
155
我今天做的这叫什么题……
今天这个题直接跪了,一看十六进制直接懵了。。
然后在csdn上竟然发现了身边直系学长写的解题报告,然后问了一下解题的思路。然后写出来的代码,想要测试数据吗吧哈哈
给一组最基本的~
5 3
fff
f0f
fff
f0f
fff
输出应该是K
AC代码如下:
#include
#include
#include
#include
using name...
分类:
其他好文 时间:
2014-07-27 11:41:10
阅读次数:
313
题目链接:uva 1444 - Knowledge for the masses
题目大意:给出R和L,R表示有R行,L表示一行的最大长度。
对于每一行,给出n,然后是n个数,arr[i]为0表示空格,长度为1,否则表示书架,长度为arr[i]。现在人要从上边走到下边,问说最少移动几个书架,并且输出可以通过的路径坐标。
解题思路:c[i]表示第i个坐标有多少行可以通过,当c[i]==...
分类:
其他好文 时间:
2014-07-27 11:37:46
阅读次数:
214
UVA 246 - 10-20-30
题目链接
题意:给52张的扑克堆,先从左往右发7张牌,之后连续不断从左往右发7张牌,如果有牌堆形成了以下3种情况(按顺序判断):
1、头两张+尾一张和为10或20或30
2、头一张+尾两张和为10或20或30
3、尾三张和为10或20或30
就把这三张牌拿走,放到总牌堆底(这步要不断执行直到不再满足条件或牌堆没了)
如果有一个牌堆因为这个...
分类:
其他好文 时间:
2014-07-27 11:22:52
阅读次数:
202