弦图判定

  代码

 #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. Window对象简介

    Window对象是JavaScript层级中的顶层对象. Window对象表示一个浏览器窗口或一个框架,它在<body>或<frameset>出现时被自动创建. Window对 ...

  2. 去掉tppabs冗余代码,怎样批量去掉tppabs代码

    去掉tppabs冗余代码,怎样批量去掉tppabs代码 刚用teleport pro拉了一个整站到本地 所有的超链都被强行加了一句tppabs="   就玩了一把dw的替换功能 查找范围:整 ...

  3. [LintCode] Valid Parentheses 验证括号

    Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the inpu ...

  4. java二叉树的实现和遍历

    /* * Java实现二叉树 */ public class BinaryTree { int treeNode; BinaryTree leftTree; BinaryTree rightTree; ...

  5. Odoo 9 PDF不显示中文字体

    在Ubuntu中安装中文字体:    $ sudo apt-get install ttf-wqy-zenhei    $ sudo apt-get install ttf-wqy-microhei

  6. HDU1166线段树(单点更新,区间求和)

    敌兵布阵 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  7. HTTP协议 (六) 状态码详解

    HTTP协议 (六) 状态码详解 HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了.  如果 ...

  8. python 的重载

    python 的重载主要包括方法重载和运算符重载.1.python 方法重载: 其他的语言一般对于方法重载的话,主要是根据参数的类型不同或者是数量不同来区分同名的方法.而python则比较特殊,它本身 ...

  9. java之接口(笔记)

    1.特征 (1)所有成员变量都是public, static, final.(2)所有方法都是public, abstract.(3)所有嵌套类型都是public, static. 2.接口也是继承自 ...

  10. 数据库---T-SQL语句提纲

    T-SQL语句: 创建表:create table Name(Code varchar(50)) 主键:primary key自增长列:auto_increment外键关系:references非空: ...