- 博客(21)
- 资源 (6)
- 收藏
- 关注
原创 poj 2492 A Bug's Life(种类并查集)
要求根据M对交配关系找出N个虫子中是否存在同性恋/...和上题一样...T_T/*Problem ID:I - A Bug's Lifemeaning: 寻找同性恋Analyzing:种类并查集,bug:1,2;1,2.。。T_T*/#include #include#include#include#includeusing namespace std;typede
2012-08-31 13:23:55 1049
原创 poj 1703 Find them, Catch them(种类并查集)
接上文:食物链的多种类并查集.http://blog.csdn.net/cqlf__/article/details/7381467本题比上面那题要简单.原理都是一样的都是种类并查集。/*Problem ID:H - Find them, Catch themmeaning: 两个黑班。D:a,b different A:ask diff or same Analyzing:种类并查
2012-08-31 11:00:53 1030
原创 Codeforces Beta Round #1(A,B)
A水题,,,求n*m的矩形需要几块a*a才能覆盖完.水题。注意要用long longint main(){ LL n,m,a; while(~scanf("%I64d%I64d%I64d",&n,&m,&a)){ LL num1=0; num1=n/a; if(n%a!=0) num1++;
2012-08-30 12:58:45 1792
原创 hdu 3635 Dragon Balls(并查集)
题目是给出N座城市,(第i个城市有ith龙珠),Q个操作:T A B :表示把Ath球在的城市的所有球搬到Bth球在的城市. Q A表示查询Ath球所在城市的编号X,以及X城市的球数Y,还有A球移动的次数Z....求移动次数,是要A球移动+A求父亲移动次数+...这样可以在路径压缩时处理.其他都好求.可是,,可是T_T WA。。。泪啊最后还是芒果大神发现了我的错误/////
2012-08-29 17:14:48 823
原创 Ural 1671. Anansi's Cobweb(并查集)
这两天复习下基础算法.并查集忘得差不多,开了个专题:http://acm.hust.edu.cn:8080/judge/contest/view.action?cid=12105#overview 密码zisu123本题的题意是:给出一张无向图,然后依次删除一些边,问每次删边后图中有几个连通分量,简单的并查集../*Problem ID:F - Anansi's Cobwebmean
2012-08-29 17:06:32 1097
原创 POJ2441 2441 Arrange the Bulls
大意:有N头牛,有M个房间,每个牛有特定的房间,每个房间只能养一只牛。分析:最近在学状态DP,这道题目居然被我做出来了,估计难度也是为0,偷着乐吧。我发现ACM其实和以前的高中做题也差不多,而且对迁移能力的要求更高,我是若菜,不会迁。记得曾经做过求棋盘覆盖的题,迁一下,把每头牛当做一行,每个房间当做一列,覆盖为1,否则为0.,附加一个like数组,记录牛的特定房间,选了为1,否则为0。#i
2012-08-28 18:38:06 1052
原创 群赛54
E - Relax! It's just a game a,b至少为1.才是==http://livearchive.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2366/*Problem ID:meaning:Analyzing:*/#include
2012-08-28 11:02:21 1747
原创 Codeforces Round #135 (Div. 2)
A题:水题,可惜一开始犯糊涂,结果30min才做出来-.-统计下字母出现次数,重新排列,okint main(){ int N,flag[27]; char A[1005],B[1005]; while(~scanf("%d",&N)){ scanf("%s",A); memset(flag,0,sizeof(flag));
2012-08-28 10:32:20 745
原创 poj1966 Cable TV Network 最大流
大意:任意的一个图,计算让图不连通所需删去的最小点数。分析:最近在搞网络流,所以就往那个方面想,首先,拆点。原先节点所形成的那一段的容量为1,原先点与点之间的路径的容量为无穷大。让后枚举源汇点,计算所以这些情况所取得的最大流的最小值。一开始RE许久,后来改了一下,去掉了一维,只枚举汇点,因为若图被分割成多部分时,无论以图中哪一个点为源头,一定会存在一个最大流为0的汇点。(似乎, 还可以用最小割
2012-08-27 18:19:52 1516
原创 poj 1026 Cipher(置换群T_T)
跪了一个下午了,才发现在循环哪里写错了WA到死。题目意思是:104 5 3 7 2 8 1 6 10 91 Hello Bob1995 CERC00给出了一个长为N的序列,和需要按这序列交换k次的字符串 (如长度不足n,就补空格) .交换方式时字符串下标为i与序列中num[i]进行交换。做法,还是根据循环节,既然它都说按照这个关系交换的,那就有个规律进过L
2012-08-27 17:42:12 1372
原创 poj 2369 Permutations(置换群)
早起一水.求原始序列到有序序列按照规则最少需要移动多少次.分析下样例1 2 3 4 5 原始序列: 4 1 5 2 32 4 3 1 5p(p(1))=p(4)=2;p(p(2))=p(1)=4;p(p(3))=p(5)=3;......1 2 5 4 3p(p(p(1)))=p(2)=1;p(p(p(2)))=p(4)=2;p(p(
2012-08-27 10:07:43 2198
原创 hdu4259 Double Dealing (置换群).
热身赛的1003,,水题啊,可是我折腾了一天。首先要先发一次牌,得到一个顺序,再根据这个顺序获得各个循环节的长度,对循环节求最小公倍数,便是总的最少移动次数.题意是,n张牌每次发给k个人,再堆叠起来重新发:比如样例 10 3原始状态是: 1 2 3 4 5 6 7 8 9 10一次过后: 10 7 4 1 8 5 2 9 6 3第二次 3 2 1 10 9 8
2012-08-26 20:18:28 1143
原创 poj 3270 Cow Sorting(置换群)
链接:http://poj.org/problem?id=3270做这道题,是昨天的比赛被1003给虐爆了./*Problem ID: poj 3270meaning: 给出一列数,要将其排列成升序序列所需的最少花费,ps:cost 是交换的两数之和.Analyzing:置换群.黑书p248.找到每个循环节的长度ki和它的最小元素ti cost=sum+sum(m
2012-08-26 16:01:29 1326
转载 ACM组合数学题目列表
转自:http://www.cnblogs.com/hebozi/archive/2012/08/06/2624623.html基本组合计数HDU1028 Ignatius and the Princess III 整数划分HIT1402 整数划分问题 多种整数划分解题报告:点击进入查看置换群PKU2369 求置换的周期
2012-08-26 10:48:16 3443
原创 poj 3468 A Simple Problem with Integers[线段树 ]
把这几天做的线段树都贴下...表示是跟着hh走的,,,贴海报,,,还是成段更新.范围有点大,离散化操作.最后能看见几张,查询..参考:#include #include#include#includeusing namespace std;#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1
2012-08-23 16:44:08 517
原创 poj 3225 Help with Intervals[线段树]
//我觉得还是挺复杂...本来不想发...膜拜hdu的hh神牛0,0/*题意:区间操作,交,并,补等思路:我们一个一个操作来分析:(用0和1表示是否包含区间,-1表示该区间内既有包含又有不包含)U:把区间[l,r]覆盖成1I:把[-∞,l)(r,∞]覆盖成0D:把区间[l,r]覆盖成0C:把[-∞,l)(r,∞]覆盖成0 , 且[l,r]区间0/1互换S:[l,r]区间0/
2012-08-23 16:24:43 542
原创 poj 1436 Horizontally Visible Segments[线段树]
/*poj 1436 题意:给出N(N <= 8000)条垂直线段,如果两条线段在水平方向上连一条线之后不和其他任何垂直线段相交,那么我们称这两条线段水平可见,如果三条垂直线段两两水平可见,则称其为一个三角,问着N条线段能组成多少三角。解法:线段树记录线段的id号。先将每一条线段按照x坐标排序,然后对于每一条线段,先查询之前在它覆盖的区域内能看见哪些线段没有被完全覆盖,然后再用这条线
2012-08-23 16:02:55 916
原创 群赛53
很久没做群赛...秀逗了.A水:#include#includeint main(){ char a[33]; int counter; while(~scanf("%s",a)){ if(a[0]=='#') break; counter=0; int len=strlen(a); for(i
2012-08-21 10:11:21 1848 1
原创 poj 3264 Balanced Lineup[线段树,,水]
求区间里最值的差.用了两个查询.时间3S+...好慢,,求快速算法#include#include#includeusing namespace std;#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1const int MM=1000005;const int maxn=50005;int MAX[maxn<<2
2012-08-20 13:04:23 616
原创 zoj 1610 Count the Colors[线段树]
#include//给了每一线段的颜色,存在颜色覆盖,求表面上看能看到的颜色种类和各种颜色的段数#includeusing namespace std;#define lson l,m,rt<<1#define rson m,r,rt<<1|1struct node{int l,r,col;};const int maxn=8008;node no[maxn<<2];i
2012-08-20 10:26:26 481
原创 CF#134
15号回学校,16号开始集训,但今天的CF做的屎一样...rating差点历史最低.A题,题意!!!要求偶数个点上的k个山峰-1后仍是山峰。水...表示对英语母语者无比羡慕,秒A的题.[code]#includeint main(){ int a[305]; int n,m; while(~scanf("%d%d",&n,&m)){ for(i
2012-08-18 23:54:18 623
浙江外国语学院 ACM入门资料
2012-08-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人