#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. phpstorm代码提示不小心关了,如何开启

    在phpstrom右下角单击如图 ​ 出现event log窗口 ​ 如果不是​ 单击切换取消节电模式即可开启代码提示.

  2. Python学习手册之数据类型

    在上一篇文章中,我们介绍了 Python 的异常和文件,现在我们介绍 Python 中的数据类型. 查看上一篇文章请点击:https://www.cnblogs.com/dustman/p/99799 ...

  3. 最短路径问题 3.Bellman-Ford算法

    简要:Bellman-Ford算法计算的仍然是从一个点到其他所有点的最短路径算法,其时间复杂度是O(NE),N表示点数,E表示边数,不难看出,当一个图稍微稠密一点,边的数量会超过点数那么实际上效率是低 ...

  4. 42-EF Core Migration

    1-常用命令 1-由于2.1版本有点不一样,不会自动创建ApplicationUser类,发现合并没效果.暂时略 增加一个字段 E:\coding\netcore\IdentitySample> ...

  5. 关于cookie的一些学习笔记

    0x00 发现自己对一些原理性的东西实在是太不了解 最近看了<cookie之困>记一下笔记 0x01 因为http是无状态的 所以需要cookie和session来保持http的会话状态和 ...

  6. struts2官方 中文教程 系列九:Debugging Struts

    介绍 在Struts 2 web应用程序的开发过程中,您可能希望查看由Struts 2框架管理的信息.本教程将介绍两种工具,您可以使用它们来查看.一个工具是Struts 2的配置插件,另一个是调试拦截 ...

  7. php杂记——1(基础知识与文件读写)

    1.变量前面需要加美元符号"$",常量则不需要: define('PRICE',100); echo PRICE; 2.用一个变量的值作为另一个变量的名称可以得到类似C中的指针变量 ...

  8. 今天领导分享了一个探测端口的命令-linux下提示bash:command not found

    今天领导分享了一个探测端口的命令,于是试了一下,提示未找到-bash: nc: command not found  因此决定将bash的命令在复习一下,温故而知新 总结整理于此: 确定你的DNS可以 ...

  9. 解决上传app store卡在正在通过iTunes Store鉴定

    打开终端输入代码即可 cd ~ mv .itmstransporter/ .old_itmstransporter/ "/Applications/Xcode.app/Contents/Ap ...

  10. 获取.jar文件运行时所处的路径

    在Windows控制台中运行.jar文件时的两种环境: (1)控制台当前所在目录是.jar文件所在的目录 (2)控制台当前所在目录不是.jar文件所在的目录 我的期望: 我希望在上述两种环境下均可以得 ...