#include<bits/stdc++.h>
using namespace std;
#define mxn 510
struct E{
int from,to;
};
int dfn[mxn],iscut[mxn],bccno[mxn];
int step,bcc_cnt;
vector<int> v[mxn],bcc[mxn];
stack<E> s;
int dfs(int u,int fa){
int lowu=dfn[u]=++step;
int child=0;
for(int i=0;i<v[u].size();i++){
int to=v[u][i];
E e=(E){u,to};
if(!dfn[to]){
s.push(e);child++;
int lowv=dfs(to,u);
lowu=min(lowu,lowv);
if(lowv>=dfn[u]){
iscut[u]=1;
++bcc_cnt;
bcc[bcc_cnt].clear();
while(1){
E x=s.top();s.pop();
if(bccno[x.from]!=bcc_cnt){
bcc[bcc_cnt].push_back(x.from);
bccno[x.from]=bcc_cnt;
}
if(bccno[x.to]!=bcc_cnt){
bcc[bcc_cnt].push_back(x.to);
bccno[x.to]=bcc_cnt;
}
if(x.from==u&&x.to==to)break;
}
}
}
else if(dfn[to]<dfn[u]&&to!=fa)lowu=min(lowu,dfn[to]),s.push(e);
}
if(fa<0&&child==1)iscut[u]=0;
return lowu;
}
void init(){
memset(bccno,0,sizeof(bccno));
memset(dfn,0,sizeof(dfn));
memset(iscut,0,sizeof(iscut));
for(int i=1;i<mxn;i++)
v[i].clear();
step=bcc_cnt=0;
}
void bcc_do(int t){
for(int i=1;i<=t;i++)
if(!dfn[i])dfs(i,-1);
}
int main(){
int n,k=0;
while(scanf("%d",&n)&&n){
init();int t=0;k++;
while(n--){
int a,b;
scanf("%d%d",&a,&b);
t=max(t,a);t=max(t,b);
v[a].push_back(b);
v[b].push_back(a);
}
bcc_do(t);
long long ans1=0,ans2=1;
for(int i=1;i<=bcc_cnt;i++){
int c=0;
for(int j=0;j<bcc[i].size();j++)
if(iscut[bcc[i][j]])c++;
if(c==1){
ans1++;
ans2*=bcc[i].size()-1;
}
}
if(bcc_cnt==1){
ans1=2;ans2=bcc[1].size()*(bcc[1].size()-1)/2;
}
printf("Case %d: %lld %lld\n",k,ans1,ans2);
}
}

bcc的更多相关文章

  1. [Outlook] outlook如何实现自动CC和BCC邮件发送

    由于需要在不同机器上发送邮件,最终发送的邮件会在不同的机器上,最终导致邮件丢失,以后想找也找不回来,故在网上搜索一翻,找到解决办法. 1. 实现自动CC邮件发送: 方法:使用outlook的配置规则 ...

  2. bzoj 2959 长跑(LCT+BCC+并查集)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2959 [题意] n个点,提供操作:连边,修改点权,查询自定义边的方向后起点a终点b能经 ...

  3. poj 2117 Electricity【点双连通求删除点后最多的bcc数】

    Electricity Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 4727   Accepted: 1561 Descr ...

  4. poj 1523 SPF【点双连通求去掉割点后bcc个数】

    SPF Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7246   Accepted: 3302 Description C ...

  5. 【UVA10765】Doves and bombs (BCC求割点后联通块数量)

    题目: 题意: 给了一个联通无向图,现在问去掉某个点,会让图变成几个联通块? 输出的按分出的从多到小,若相等,输出标号从小到大.输出M个. 分析: BCC求割点后联通块数量,Tarjan算法. 联通块 ...

  6. UVAlive3523 Knights of the Round Table(bcc)

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=18122 [思路] 点-双连通分量 求出bcc,判断每个bcc是否为 ...

  7. 【HDU 4738 Caocao's Bridges】BCC 找桥

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4738 题意:给定一个n个节点m条边的无向图(可能不连通.有重边),每条边有一个权值.判断其连通性,若双 ...

  8. 【HDU 4612 Warm up】BCC 树的直径

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4612 题意:一个包含n个节点m条边的无向连通图(无自环,可能有重边).求添加一条边后最少剩余的桥的数 ...

  9. 百度云bcc建站

    一.购买百度云服务 1.百度云bcc购买网页http://bce.baidu.com/product/bcc.html 2.买完后管理:http://console.bce.baidu.com/bcc ...

  10. 百度云BCC配置Apache VirtualHost 实现相同域名不同端口访问不同应用

    问题描述:前戏:本人在百度云上购买了BCC虚拟服务,并购买域名,部署应用,可以正常访问(这里一切都很正常^_^). 事情正在起变化:随着开发的不断推进,工程在本地测试成功后,部署到服务器,会发现有些页 ...

随机推荐

  1. 一个好用的C# HttpCookieHelper.cs类

    using System; using System.Collections.Generic; using System.Text; using System.Text.RegularExpressi ...

  2. html 截图粘粘图片JS

    web前端socket聊天室功能和在线编辑器上传编辑内容的时候经常会需要上传一些图文信息,但是很多编辑器不支持截图粘粘的功能,这里参考了网友分享的可用方法做一个记录. <html> < ...

  3. struts2架构网站漏洞修复详情与利用漏洞修复方案

    struts2从开发出来到现在,很多互联网企业,公司,平台都在使用apache struts2系统来开发网站,以及应用系统,这几年来因为使用较多,被攻击者挖掘出来的struts2漏洞也越来越,从最一开 ...

  4. C语言实例解析精粹学习笔记——35(报数游戏)

    实例35: 设由n个人站成一圈,分别被编号1,2,3,4,……,n.第一个人从1开始报数,每报数位m的人被从圈中推测,其后的人再次从1开始报数,重复上述过程,直至所有人都从圈中退出. 实例解析: 用链 ...

  5. (数据科学学习手札25)sklearn中的特征选择相关功能

    一.简介 在现实的机器学习任务中,自变量往往数量众多,且类型可能由连续型(continuou)和离散型(discrete)混杂组成,因此出于节约计算成本.精简模型.增强模型的泛化性能等角度考虑,我们常 ...

  6. Hadoop Sentry 学习

    什么是Sentry? Sentry 是Cloudera 公司发布的一个Hadoop开源组件,它提供细粒度基于角色的安全控制 Sentry下的数据访问和授权 通过引进Sentry,Hadoop目前可在以 ...

  7. 3、Java并发编程:Thread类的使用

    Java并发编程:Thread类的使用 在前面2篇文章分别讲到了线程和进程的由来.以及如何在Java中怎么创建线程和进程.今天我们来学习一下Thread类,在学习Thread类之前,先介绍与线程相关知 ...

  8. python语法图

  9. 在 Ubuntu 16.04 LTS 上安装 Python 3.6.0

    原文连接:https://segmentfault.com/a/1190000007912666 最近 Python 3 发布了新版本 Python 3.6.0,好像又加入了不少黑魔法!- 由于暂时不 ...

  10. Python request 简单使用

    Requests 是用Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库.它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTT ...