摘要: 你需要放置一盏灯来照亮房间的每个角落,问这是否能办到? 输入包含多组数据。 每组数据第一行是正整数n(4<=n<=100),表示房间轮廓所形成的多边形的顶点个数。 接下来n行,每行表示房间的一个顶点。 顶点按顺时针的顺序给出,房间轮廓多边形的所有边都平行于坐标轴。 输入以n=0表示结束。 对每组数据 阅读全文
posted @ 2018-01-01 23:07 sulley 阅读(1169) 评论(0) 推荐(0) 编辑
摘要: 描述: 玩过RPG(尤其是国产RPG)的童鞋都应该对迷宫这种神棍的设定深恶痛绝,尤其是当你转了半小时之后发现回到了原地,这种感觉真是无比的痛苦。。。万一游戏还中途崩溃了那真是连掀桌子、砸键盘、摔鼠标的心都有了…… 经过无数次的TRIAL AND ERROR之后,玩家终于下定决心认定迷宫存在的意义就是 阅读全文
posted @ 2017-12-24 14:07 sulley 阅读(1060) 评论(0) 推荐(0) 编辑
摘要: 带权并查集,其实这种并查集的核心就是“向量” 阅读全文
posted @ 2017-12-19 23:12 sulley 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 这道题在输出上太坑了,画出来不像树... 阅读全文
posted @ 2017-12-03 15:50 sulley 阅读(1843) 评论(1) 推荐(0) 编辑
摘要: 判断最小生成树是否唯一 阅读全文
posted @ 2017-11-20 22:15 sulley 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 就是判断一个有向图是否有环,注意图可能不连通。 用dfs搜一下就行了。 阅读全文
posted @ 2017-11-18 11:38 sulley 阅读(695) 评论(0) 推荐(0) 编辑
摘要: 这道题因为自己把1000000007写成了100000007而浪费了三个小时,所以告诫自己:数一下几位!数一下几位!数一下几位! 先贴代码~ 现在来一一解释上面的三个地方。 题目要求的是数量,自然就可以想到next[]数组的意义:最长公共前后缀长度,也就是next[i]即前i个字符的最长公共前后缀长 阅读全文
posted @ 2017-11-12 22:09 sulley 阅读(393) 评论(0) 推荐(0) 编辑
摘要: //ver1:用树的性质:顶点数=边数+1,注意空树的情况 #include #include int main() { int x,y,v,e,kase=0,n[100000]; while(1){ memset(n,0,sizeof n); v=e=0; while(scanf("%d%d",&x,&y)&&x&&x!=-1)... 阅读全文
posted @ 2017-11-02 19:35 sulley 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 显然本题是要将文件组织成一棵树,直观的想法就是用相应的文件名(字符串)作为结点的data域,同时给结点编号,形成一个一一映射。 如果用指针和动态建树的方法,由于我们并不确定一个文件名下到底有多少子文件(子树),所以就难以确定子结点的个数,因此考虑用类似字典树的方式建树。不同的是,字典树的每个结点是一 阅读全文
posted @ 2017-11-01 16:05 sulley 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 int T,x,y,p[30001],a[30001],r[30001]; //r[i]表示i号战舰和它的队头战舰之间的距离 4 char ch[2]; //a[i]是代表为i的队一共有多少战舰 5 void init(){ //实际上... 阅读全文
posted @ 2017-11-01 12:39 sulley 阅读(274) 评论(0) 推荐(0) 编辑