题目:http://acm.hdu.edu.cn/showproblem.php?pid=6736
思路:dfs+栈 判环
           设图中环的大小分别为 c1, c2, ..., ck,不属于任何一个环的 边数为 b,则答案为:
           ( 2 ^ c1 - 1 ) * ( 2 ^ c2 - 1 ) * ......* ( 2 ^ ck - 1 ) * 2 ^ b
           dfs判环时 各点入栈 若点已存在于栈中 则存在环 计算环大小即可 不必出栈
            跑一遍连通图即可计算出所有环

#include<bits/stdc++.h>
#define ll long long
using namespace std;
;
;
vector<int>edge[maxn];
int vis[maxn],ins[maxn],s[maxn];
int top;
int n,m;
ll ans;
void init()
{
    ans=;
    memset(vis,,sizeof vis);
    memset(ins,,sizeof ins);
    ;i<=n;i++) edge[i].clear();
    top=;
}
ll qPow(ll n,int a)
{
    ll res=;
    while(a)
    {
        ) res=res*n%mod;
        n=n*n%mod;
        a>>=;
    }
    return res;
}
void dfs(int u,int pre)
{
    s[++top]=u;
    ins[u]=;
    vis[u]=;
    for(auto x:edge[u])
    {
        if(!vis[x]) dfs(x,u);
        else if(ins[x]&&x!=pre)
        {
            int t=top;
            ;
            while(s[t]!=x)
            {
                t--;
                sum++;
            }
            m-=sum;
            ans=ans*(qPow(,sum)-+mod)%mod;
        }
    }
    ins[s[top]]=;
    top--;
}
int main()
{
    int a,b;
    while(~scanf("%d%d",&n,&m))
    {
        init();
        ;i<m;i++)
        {
            scanf("%d%d",&a,&b);
            edge[a].push_back(b);
            edge[b].push_back(a);
        }
        ;i<=n;i++)
            if(!vis[i])
                dfs(i,i);
        printf(,m)%mod);
    }
    ;
}
 

HDU6736 2019CCPC秦皇岛赛区 F. Forest Program的更多相关文章

  1. 2019ccpc秦皇岛/Gym102361 F Forest Program 仙人掌上dfs

    题意: 某地沙漠化严重,沙漠里长了很多仙人掌,现在要让你删掉仙人掌的一些边让它的所有连通分量都是树,就完成了沙漠绿化(什么鬼逻辑?)让你计算删边的方案数. 仙人掌是一种特殊的图,它的每一条边只属于1或 ...

  2. 2019CCPC秦皇岛 F Forest Program

    队友过的:https://blog.csdn.net/liufengwei1/article/details/101632506 Forest Program Time Limit: 2000/100 ...

  3. [CCPC2019秦皇岛] F. Forest Program

    [CCPC2019秦皇岛 F] Link https://codeforces.com/gym/102361/problem/F Description 给定一个仙人掌,删去一些边可以让它变成一个森林 ...

  4. 2019CCPC秦皇岛赛区(重现赛)- F

    链接: http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1006&cid=872 题意: Z 国近年来一直在考虑遏制国土沙 ...

  5. 2019CCPC秦皇岛赛区(重现赛)- I

    链接: http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1009&cid=872 题意: 在 dota2 中有一个叫做祈求 ...

  6. 2019 China Collegiate Programming Contest Qinhuangdao Onsite F. Forest Program(DFS计算图中所有环的长度)

    题目链接:https://codeforces.com/gym/102361/problem/F 题意 有 \(n\) 个点和 \(m\) 条边,每条边属于 \(0\) 或 \(1\) 个环,问去掉一 ...

  7. 2019CCPC秦皇岛赛区(重现赛)- J

    链接: http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1010&cid=872 题意: 鉴纯夏是一名成绩不太好的高中生. ...

  8. HDU6740 2019CCPC秦皇岛赛区 J. MUV LUV EXTRA

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=6740思路:求小数部分后k位的真前后缀 倒着kmp就好 #include<bits/stdc++.h& ...

  9. HDU6739 2019CCPC秦皇岛赛区 I. Invoker

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=6739思路:暴力dp           一个special skill最多有6种排列组合          ...

随机推荐

  1. C# Job System概述

    C# 作业系统是如何工作 允许用户编写与Unity其余部分良好交互的多线程代码,并使编写正确的代码变得更加容易. 编写多线程代码可以提供高性能的好处,其中包括帧速率的显著提高.以及将Burst编译器与 ...

  2. PJzhang:微软出口管制条例

    猫宁!!! 翻译:PJzhang 微软公司的技术,产品和服务受美国出口管理法规(EAR)的约束,由美国商务部工业与安全局(BIS)监督执行. 此外,财政部,国务院对其他与出口相关的技术和产品转让,交易 ...

  3. 3的倍数 或运算构造x(牛客第四场)-- triples I

    题意: 给你一个数,希望你能用最少的3的倍数或运算成它,让你输出答案. 思路: 进制%3有规律,1.2.4.8.16%3是1.2.1.2.1 ... 利用这一点分情况取一些位合成一些数就是答案了. # ...

  4. IDEA2018.2.6激活(可用)

    破解插件下载: 链接:https://pan.baidu.com/s/1j2_kEm_Akcph6Qb8hr6soQ 提取码:hv64 将下载包放入bin文件夹下,修改bin中的两个文件 idea.e ...

  5. PYQT5 pyinstaller 打包工程

    win+R 输入cmd  回车 首先安装 pyinstaller : pip install pyinstaller 安装 pywin32: pip install pywin32 在cmd中输入工程 ...

  6. Feign声明式服务调用

    Feign是一种声明式.模板化的HTTP客户端(仅在Application Client中使用).声明式调用是指,就像调用本地方法一样调用远程方法,无需感知操作远程http请求. Spring Clo ...

  7. PermissionError: [Errno 13] Permission denied: '/run/user/0/jupyter'

    解决办法:需要给/run/user整个目录开放权限,不能单独给'/run/user/0/jupyter'这个文件,因为jupyter是需要往目录中添加文件,/run/user/0/jupyter,此时 ...

  8. MySQL性能优化(二):优化数据库的设计

    原文:MySQL性能优化(二):优化数据库的设计 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.n ...

  9. Mac下的Web性能压力测试工具:ab(ApacheBench)

    Web开发,少不了的就是压力测试,它是评估一个产品是否合格上线的基本标准. ab是一种用于测试Apache超文本传输协议(HTTP)服务器的工具.apache自带ab工具,可以测试Apache.IIS ...

  10. Django框架——基础之路由系统(urls.py)11111111

    1.URL路由系统前言 URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除 ...