3896. 【NOIP2014模拟10.26】战争游戏 (Standard IO)
Time Limits: 1000 ms Memory Limits: 262144 KB Detailed Limits
Description
Input
Output
Sample Input
7 9 1 2 1 3 1 4 1 5 1 6 1 7 2 3 4 5 6 7
Sample Output
18 6 6 6 6 6 6
Data Constraint
Source / Author: 长乐一中 game
题解:
找割点
算答案。
#include<bits/stdc++.h>
#define N 50010
#define inf 2147483647
#define rint register ll
#define ll long long
#define point(a) multiset<a>::iterator
#define mod (ll)(500000)
#define mem(a,b) memset(a,b,sizeof (a))
#define open(x) freopen(x".in","r",stdin);freopen(x".out","w",stdout);
using namespace std;struct edge
{ll v,fr;}e[N*4];ll n,m,i,j,k,tot,cnt,chid,root;
ll tail[N],dfn[N],low[N],vis[N],size[N],suf[N],a[N],cut[N],ans[N],f[N];void add(ll u,ll v)
{e[++tot].v=v;e[tot].fr=tail[u];tail[u]=tot;
}void tarjan(ll x,ll fr)
{dfn[x] = low[x] = ++cnt;vis[x]=1;size[x]=1;int can=0,cannot=0,sum=0;for(ll p=tail[x];p;p=e[p].fr){ll v=e[p].v;if(!vis[v]){tarjan(v,fr);size[x] = size[x] + size[v];low[x] = min(low[x] , low[v]);if(dfn[x] <= low[v] ){cut[x]=1;sum +=size[v] * (n-1 - size[v]);can+=size[v];} else cannot+=size[v];}low[x] = min(low[x] , dfn[v]);}if(cut[x])sum+=can*(cannot+n-size[x]);ans[x]+=sum/2;
}// ll l ll ll l l int main()
{open("war");scanf("%lld%lld",&n,&m);for(i=1;i<=m;i++){ll u,v;scanf("%lld%lld",&u,&v);add(u,v);add(v,u);}mem(vis,0); mem(cut,0);mem(ans,0); mem(size,0);for(i=1;i<=n;i++)ans[i]=n-1;tarjan(1,1);for(i=1;i<=n;i++)printf("%d\n",ans[i]);return 0;
}
3896. 【NOIP2014模拟10.26】战争游戏 (Standard IO)相关推荐
- JZOJ 3896. 【NOIP2014模拟10.26】战争游戏
Are you ready? 题目: 题意: 分析: 代码: 题目: 传送门 题意: 给出一个图,问我们删掉每一个节点可影响的方案的个数 分析: 缩点+割点裸题 对于经过每个割点的路径,我们分两种情况 ...
- 3896. 【NOIP2014模拟10.26】战争游戏
鉴于如此一道恶心的题,作者还花了一个晚上草草学了tarjan. 于是乎,这道题就是道tarjan 具体怎么实现呢?正解上有个什么树形DP,看的我一脸懵逼. 这道题可以运用到tarjan一个高科技的算法 ...
- 【NOIP2014模拟10.26】战争游戏
这题就是求割点并计算答案. 上标: #include<cstdio> #include<algorithm> #define N 50010 using namespace s ...
- jzoj3058. 【NOIP2012模拟10.26】火炬手
jzoj3058. [NOIP2012模拟10.26]火炬手 题目 Description Input Output Sample Input Sample Output Hint 分析 做法一 做法 ...
- JZOJ 5930. 【NOIP2018模拟10.26】山花
Description 3.1 Background 春日的山中灌木茂盛,几乎长到了人的腰间,将山间都铺满了绿色.雨后的灌木之间还带着晨露,总会沾湿走过的行人的衣裳. 林中枝叶茂密,不过树木长的并不紧 ...
- JZOJ 3885. 【长郡NOIP2014模拟10.22】搞笑的代码
Description 在OI界存在着一位传奇选手--QQ,他总是以风格迥异的搞笑代码受世人围观 某次某道题目的输入是一个排列,他使用了以下伪代码来生成数据 while 序列长度< n do { ...
- JZOJ 3886. 【长郡NOIP2014模拟10.22】道路维护
Description 最近徆多人投诉说C国的道路破损程度太大,以至亍无法通行 C国的政府徆重视这件事,但是最近财政有点紧,丌可能将所有的道路都进行维护,所以他们决定按照下述方案进行维护 将C国抽象成 ...
- JZOJ 3057. 【NOIP2012模拟10.26】电影票
.. 分析: 代码: 分析: 我们通过找规律,可以得知答案为: 但我们直接通过高精度计算的话铁定TTT飞 所以我们将式子带入其中,就会发现分母和分子是可以约分的!并且分母可以被约掉 所以我们可以创建两 ...
- 【NOIP2012模拟10.26】火炬手
Description 全运会就要开始了,笨笨想成为湖南地区的火炬手,经过层层选拔,最终到了最后一关,这一关给出了一个正整数n(N<=100000),求一个最小的正整数m,使得n*m的十进制表示 ...
最新文章
- “我在苹果商店下载了一个诈骗 App,损失 60 万美金!”
- AI扫雷有多牛?他国纷纷来求师学艺(附完整教程)
- Android之Bitmap的内存优化方案总结
- 域做文件服务器,linux 做域文件服务器
- 《笨办法学Python》笔记33-----一个项目骨架(转)
- html5 dom api,HTML5 DOM File API
- 【赛尔原创】如何自动地向知识图谱中添加属性?
- Dependency, Association, Aggregation Composition的四种区别
- JavaSE基础——IO流详解(1)字节流和字符流
- 遥感影像数据下载网址
- vcpkg快速入门手册
- TracePro模拟LED手电筒整个照明系统并分析
- C++定义一个对象和new一个对象的区别与联系
- Jetty 安全漏洞分析
- 精简ttf,svg字体库文件,删除多余字体,保留用到字体
- java xap_阻止xap文件在浏览器中缓存
- 有什么值得入手的蓝牙耳机品牌?2022年蓝牙耳机品牌排行榜
- Unresolved compilation problem,问题
- 图的广度优先遍历-06-图3 六度空间
- 分库与分表带来的分布式困境与应对之策
热门文章
- 优化 | 线性化:含绝对值的线性化
- 智能金融再突破·TAI让反洗钱更快一步
- matlab 脉冲压缩算法,线性调频脉冲压缩原理及其MATLAB仿真+程序
- 计算机CMOS设置详解
- python 二级考试操作题(一)
- 老化的骨骼干细胞产生炎性退行性微环境
- 将包含经纬度点位信息的Excel表格数据导入到ArcMap中并输出成shapefile
- H3Cs5500堆叠配置
- D3D渲染技术之纹理
- [深入研究4G/5G/6G专题-10]: 物理层-开机功能验证第一步:通过测试终端验证、调试基站的小区初始功能