弦图判定

  代码

 #include<cstdio>
#include<queue>
#define mp make_pair
#define fi first
#define sc second
using namespace std;
const int N = ;
int n,m,a,b,i,j;
int dp,p[N],pre[N],tt[N],o,vis[N],sum[N],id[N],ID[N];
priority_queue<pair<int,int> > Q;
void link(int x,int y)
{
dp++;pre[dp]=p[x];p[x]=dp;tt[dp]=y;
}
int main()
{
scanf("%d%d",&n,&m);
for (i=;i<=m;i++)
{
scanf("%d%d",&a,&b);
link(a,b);
link(b,a);
}
for (i=;i<=n;i++)
Q.push(mp(,i));
o=n;
while (!Q.empty())
{
int x=Q.top().fi;
int y=Q.top().sc;
Q.pop();
if (vis[y]) continue;
if (x<sum[y]) continue;
ID[y]=o;
id[o--]=y;
vis[y]=;
i=p[y];
while (i)
{
if (!vis[tt[i]])
{
sum[tt[i]]++;
Q.push(mp(sum[tt[i]],tt[i]));
}
i=pre[i];
}
}
for (i=;i<=n;i++) vis[i]=; for (j=;j<=n;j++)
{
int x=id[j],cnt1=,cnt2=,mi=0x37373737,y=;
i=p[x];
while (i)
{
if (ID[tt[i]]>j)
{
if (ID[tt[i]]<mi) mi=ID[tt[i]],y=tt[i];
vis[tt[i]]=;cnt1++;
}
i=pre[i];
} if (y)
{
i=p[y];
while (i)
{
if (vis[tt[i]]) cnt2++;
i=pre[i];
}
}
if ((cnt1!=cnt2+)&&(y))
{
printf("Imperfect");
return ;
}
i=p[x];
while (i)
{
vis[tt[i]]=;
i=pre[i];
}
}
printf("Perfect");
}

Zju1015 Fishing Net的更多相关文章

  1. bzoj 1242: Zju1015 Fishing Net 弦图判定

    1242: Zju1015 Fishing Net弦图判定 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 214  Solved: 81[Submit ...

  2. [bzoj1242] Zju1015 Fishing Net弦图判定

    弦图判定..MCS算法. 先选一个点,然后每次拿 相邻已选点最多 的未选点. 选完之后判断一下是否是完美消除序列. #include<cstdio> #include<iostrea ...

  3. bzoj AC倒序

    Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...

  4. ZOJ 1015 Fishing Net(弦图判定)

    In a highly modernized fishing village, inhabitants there make a living on fishery. Their major tool ...

  5. Poj/OpenJudge 1042 Gone Fishing

    1.链接地址: http://bailian.openjudge.cn/practice/1042/ http://poj.org/problem?id=1042 2.题目: Gone Fishing ...

  6. POJ 1042 Gone Fishing (贪心)(刘汝佳黑书)

    Gone Fishing Time Limit: 2000MS   Memory Limit: 32768K Total Submissions: 30281   Accepted: 9124 Des ...

  7. uva757 - Gone Fishing(馋)

    题目:uva757 - Gone Fishing(贪心) 题目大意:有N个湖泊仅仅有一条通路将这些湖泊相连. 每一个湖泊都会给最開始5分钟间隔内能够调到的鱼(f).然后给每过5分钟降低的鱼的数量(d) ...

  8. ●BZOJ 1006 [HNOI2008]神奇的国度(弦图最小染色数)○ZOJ 1015 Fishing Net

    ●赘述题目 给出一张弦图,求其最小染色数. ●题解 网上的唯一“文献”:<弦图与区间图>(cdq),可以学习学习.(有的看不懂) 摘录几个解决改题所需的知识点: ●子图和诱导子图(一定要弄 ...

  9. Cocos2d-X开发教程-捕鱼达人 Cocos2-x development tutorial - fishing talent

    Cocos2d-X开发教程-捕鱼达人 Cocos2-x development tutorial - fishing talent 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱 ...

随机推荐

  1. springmvc项目中java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 严重: Error co ...

  2. 关于C#引用Dll后,找不到命名空间的问题

    在引用里明确添加了一个Dll,能够看到该Dll详细信息,可就是用using找不到命名空间.并且发现刚引用时是有该命名空间,一编译就消失了. 最后发现原因如下: 原目标框架为.Net Framework ...

  3. SpringMVC+Thymeleaf如何处理URL中的动态查询参数

    1.使用一个Map<String, String>接收数据 When you request a Map annotated with @RequestParam Spring creat ...

  4. C#操作文件夹及文件的方法的使用

    本文收集了目前最为常用的C#经典操作文件的方法,具体内容如下:C#追加.拷贝.删除.移动文件.创建目录.递归删除文件夹及文件.指定文件夹下面的所有内容copy到目标文件夹下面.指定文件夹下面的所有内容 ...

  5. 用java页面下载图片

    try { //根据String形式创建一个URL对象 String filePath = materialProductWorks.getDownloadImageUrl(); URL url = ...

  6. HDU 2955(0-1背包问题)

    题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=87125#problem/M 题目: Description The aspir ...

  7. JAVA双向链表

    1.链表是一种重要的数据结构,在程序设计中占有很重要的地位 2.我们可以用类List来实现链表结构,用变量Head.Tail.Length.Pointer来实现表头.存储当前结点的指针时有一定的技 巧 ...

  8. cookie&&session再理解笔记

    就拿php来说,两个php页面之间不拿get,post传递变量的话,数据是不能共享的.访问完1.php页面该页面的变量就被销毁了.所以就拿学校食堂来说,拿现金买饭的话你交完钱后,他给你个票以便确认你, ...

  9. 使用javascript实现在页面打印的效果的三种方式

    <div id="console"></div> <script type="text/javascript"> var c ...

  10. GsonUtils.java

    package com.vcredit.ddcash.batch.util; import java.util.ArrayList;import java.util.List; import org. ...