#10 //I [HNOI/AHOI2018]毒瘤
题解:
80分做法还是听简单的
对于非树边枚举一下端点状态
然而我也不知道为什么就多t了一个点
具体实现上
最暴力的是3^n次 但是我们可以发现对于i不取,j取 i不取,j不取是可以等效成i不取,j没有限制,这样是2^n
或者直接容斥一下搞i取j取 这样C(n,1)+C(n,2)...=2^n一样的吧
100pts应该是虚树处理一下系数吧
代码:
#include <bits/stdc++.h>
using namespace std;
#define N 300000
#define rg register
#define mo 998244353
#define ll long long
struct re{
int a,b;
}a[N],ts[];
const int n2=1e7;
int head[N],l2,l,v[N],n,m,hash[n2];
ll dp[N][],ans;
bool f[N],ff[N];
inline void arr(int x,int y)
{
a[++l].a=head[x];
a[l].b=y;
head[x]=l;
}
inline void dfs(int x,int y)
{
rg int u=head[x];
f[x]=;
while (u)
{
rg int v=a[u].b;
if (u!=y)
{
if (f[v])
{
if (!ff[u])
{
ts[++l2].a=a[u].b;
ts[l2].b=x;
ff[u]=;
ff[u%?u+:u-]=;
}
} else dfs(v,u%?u+:u-);
}
u=a[u].a;
}
}
inline void dfs3(rg int x,rg int y)
{
rg int u=head[x];
dp[x][]=; dp[x][]=;
if (v[x]==) dp[x][]=;
if (v[x]==-) dp[x][]=;
while (u)
{
rg int v=a[u].b;
if (u!=y&&!ff[u])
{
dfs3(v,u%?u+:u-);
dp[x][]*=dp[v][];
dp[x][]%=mo;
dp[x][]*=(dp[v][]+dp[v][]);
dp[x][]%=mo;
}
u=a[u].a;
}
}
const int mo1=9e6+;
inline void dfs2(rg int now)
{
if (now==)
{
memset(dp,,sizeof(dp));
dfs3(,);
ans+=dp[][]+dp[][];
ans%=mo;
return;
}
rg int x=ts[now].a,y=ts[now].b;
rg int tmp1=v[x],tmp2=v[y];
if (v[x]!=&&v[y]!=-)
{
v[x]=-; v[y]=; dfs2(now-); v[x]=tmp1; v[y]=tmp2;
}
if (v[y]!=)
{
v[y]=-; dfs2(now-); v[y]=tmp2;
}
}
int main()
{
freopen("noi.in","r",stdin);
freopen("noi.out","w",stdout);
std::ios::sync_with_stdio(false);
cin>>n>>m;
int x,y;
for (rg int i=;i<=m;i++)
{
cin>>x>>y;
arr(x,y); arr(y,x);
}
dfs(,);
dfs2(l2);
cout<<ans<<endl;
return ;
}
#10 //I [HNOI/AHOI2018]毒瘤的更多相关文章
- Luogu P4426 [HNOI/AHOI2018]毒瘤
题目 神仙题. 首先我们可以把题意转化为图的独立集计数.显然这个东西是个NP-Hard的. 然后我们可以注意到\(m\le n+10\),也就是说最多有\(11\)条非树边. 我们现在先考虑一下,树上 ...
- 题解 [HNOI/AHOI2018]毒瘤
题目传送门 题目大意 给出一个 \(n\) 个点 \(m\) 条边的无向图,问有多少个点集满足点集中任意两点均不存在边相连. \(n\le 10^5,m-n\le 10\),答案对 \(9982443 ...
- 洛谷 P4426 - [HNOI/AHOI2018]毒瘤(虚树+dp)
题面传送门 神仙虚树题. 首先考虑最 trival 的情况:\(m=n-1\),也就是一棵树的情况.这个我相信刚学树形 \(dp\) 的都能够秒掉罢(确信).直接设 \(dp_{i,0/1}\) 在表 ...
- [HNOI/AHOI2018]毒瘤
题目描述 https://www.lydsy.com/JudgeOnline/upload/201804/%E6%B9%96%E5%8D%97%E4%B8%80%E8%AF%95%E8%AF%95%E ...
- P4426 [HNOI/AHOI2018]毒瘤
挺不错的一个题. 题意即为求一个图的独立集方案数. 如果原图是一棵树,可以直接大力f[x][0/1]来dp. 由于非树边很少,考虑2^11容斥,强制某些点必选,然后再O(n)dp,这样应该过不了. 发 ...
- 【LG4437】[HNOI/AHOI2018]排列
[LG4437][HNOI/AHOI2018]排列 题面 洛谷 题解 题面里这个毒瘤的东西我们转化一下: 对于\(\forall k,j\),若\(p_k=a_{p_j}\),则\(k<j\). ...
- [Bzoj5285][洛谷P4424][HNOI/AHOI2018]寻宝游戏(bitset)
P4424 [HNOI/AHOI2018]寻宝游戏 某大学每年都会有一次Mystery Hunt的活动,玩家需要根据设置的线索解谜,找到宝藏的位置,前一年获胜的队伍可以获得这一年出题的机会. 作为新生 ...
- [HNOI/AHOI2018]转盘(线段树优化单调)
gugu bz lei了lei了,事独流体毒瘤题 一句话题意:任选一个点开始,每个时刻向前走一步或者站着不动 问实现每一个点都在$T_i$之后被访问到的最短时间 Step 1 该题可证: 最优方案必 ...
- 【题解】Luogu P4436 [HNOI/AHOI2018]游戏
原题传送门 \(n^2\)过百万在HNOI/AHOI2018中真的成功了qwqwq 先将没门分格的地方连起来,枚举每一个块,看向左向右最多能走多远,最坏复杂度\(O(n^2)\),但出题人竟然没卡(建 ...
随机推荐
- Java基础编程题——水仙花数
package com.yangzl.basic; /** * 题目:打印出所有的"水仙花数". * 所谓"水仙花数"是指一个三位数, * 其各位数字立方和等于 ...
- POJ2031 Building a Space Station【最小生成树】
题意: 就是给出三维坐标系上的一些球的球心坐标和其半径,搭建通路,使得他们能够相互连通.如果两个球有重叠的部分则算为已连通,无需再搭桥.求搭建通路的最小边长总和是多少. 思路: 先处理空间点之间的距离 ...
- Mac下压力测试工具siege
安装: brew install siege 用法: siege -c 并发数 -t 运行测试时间 URL 如: siege -c 1000 -t 5S URL 这里要注意的是-t后面的时间要带单位, ...
- AJAX请求头Content-type
发送json格式数据 xhr.setRequestHeader("Content-type","application/json; charset=utf-8" ...
- arm-linux-gcc/ld/objcopy/objdump参数总结【转】
arm-linux-gcc/ld/objcopy/objdump参数总结 转自:http://blog.csdn.net/muyuyuzhong/article/details/7755291 arm ...
- n个随机变量中第k小值的期望
Problem 有\(n\)个相互独立的取值在\([0,1]\)的随机变量,问其中第\(k\)小的变量期望是多少? Solution 之前pkuwc的神仙找我换友链,让我受宠若惊.. 我今天突然翻到他 ...
- ASP.NET Core Identity 实战(4)授权过程
这篇文章我们将一起来学习 Asp.Net Core 中的(注:这样描述不准确,稍后你会明白)授权过程 前情提要 在之前的文章里,我们有提到认证和授权是两个分开的过程,而且认证过程不属于Identity ...
- 【转】C Runtime Library的来历
由于我看到的文章也是转载且未提供原文链接,所以这里没有提供原文链接! msvcrt.dll(名称:Microsoft C Runtime Library)提供了printf,malloc,strcpy ...
- redis安全 (error) NOAUTH Authentication required
Redis 安全 我们可以通过 redis 的配置文件设置密码参数,这样客户端连接到 redis 服务就需要密码验证,这样可以让你的 redis 服务更安全. 实例 我们可以通过以下命令查看是否设置了 ...
- tomcat端口冲突,多个tomcat同时启动问题
一台PC机上安装了两个tomcat,需要同时启动,每个tomcat上跑一个程序,但是现在提示端口号冲突,需要手动更改. 需要修改/conf/server.xml四个地方: 1.<Server p ...