最新要闻
- 世界报道:2022年新能源车销量出炉:每卖出3辆车就有1辆新能源
- 全球动态:高分国漫《中国奇谭》B站播放量破1800万 网友:碾压《三体》动画
- 今年上映!国产航空大片《长空之王》新海报:尖端战机亮眼
- 超过6万台!国产龙芯CPU采购大单拿到手软
- 四川女子回娘家屋旁偶遇大熊猫直言激动 并不怕人:圆滚滚超可爱
- 全球看点:2022年押注特斯拉亏大了!50支重仓基金惨不忍睹
- 环球视讯!加州新法实施 特斯拉仍宣传“全自动驾驶”:或被罚数千万美元
- 当前资讯!15分钟出结果 快速检测试剂盒:25份到手74.9元
- 司机酒后睡着 原地踩油门致车辆起火:烧成废墟
- 焦点播报:奇瑞营销公司总经理:自家2.0T发动机能与奔驰、宝马媲美
- 比亚迪高端品牌“仰望”发布 超级技术叩开百万级新能源市场大门
- 观察:首次集成AI引擎 AMD对锐龙7000移动版极其自信:超越苹果不是问题
- 新年微信红包封面领取攻略 谁还没有几个红包皮呢?
- 大桶更尽兴 溜溜梅六味青梅宝藏桶480g 25.1元
- 环球热点评!百万级U8、U9双双亮相!比亚迪已注册多个仰望品牌商标
- 环球资讯:笔记本显示屏变天了!OLED面板大爆发:加速淘汰LCD
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
【天天报资讯】AcWing.1175 最大半连通子图
题目描述
\(\qquad\)一个有向图 \(G = (V,E)\) 称为半连通的,如果满足:\(\forall u,v \in V\),满足 \(u \to v\) 或 \(v \to u\),即对于图中任意两点 \(u,v\),存在一条 \(u\) 到 \(v\) 的有向路径或者从 \(v\) 到 \(u\) 的有向路径。
\(\qquad\)若 \(G’ = (V’,E’)\) 满足,\(E’\) 是 \(E\) 中所有和 \(V’\) 有关的边,则称 \(G’\) 是 \(G\) 的一个导出子图。
【资料图】
\(\qquad\)若 \(G’\) 是 \(G\) 的导出子图,且 \(G’\) 半连通,则称 \(G’\) 为 \(G\) 的半连通子图。
\(\qquad\)若 \(G’\) 是 \(G\) 所有半连通子图中包含节点数最多的,则称 \(G’\) 是 \(G\) 的最大半连通子图。
\(\qquad\)给定一个有向图 \(G\),请求出 \(G\) 的最大半连通子图拥有的节点数 \(K\),以及不同的最大半连通子图的数目 \(C\)。
\(\qquad\)由于 \(C\) 可能比较大,仅要求输出 \(C\) 对 \(X\) 的余数。
解题思路
\(\qquad\)还是先从拓扑图\(DAG\)的角度来思考,毕竟不是\(DAG\)我们也可以用Tarjan
把它缩点
成\(DAG\)。\(\qquad\)在一张图上,一个强连通分量必定是半连通子图,一条链上的若干个强连通分量,也必定可以构成半连通子图,为什么?假设是这样一个串
从\(A_1\)到\(A_2\)是必定存在一条有某个分界点\(u\in A_1\)和另一个点\(v\in A_2\)之间有一条边,只要这样我们就可以保证\(A_1和A_2\)可以构成半连通子图(因为强连通分量内每个点都是“有关系的”)
\[因而可以推出$A_2和A_3$也可以构成半连通子图,因此整条链都可以构成半连通子图。\]\(\qquad\qquad\)所以我们这道题尽量跑长一点的链,这样我们最后构成的半连通子图才会尽量大
\(\qquad\)因为已经是拓扑图,我们就可以通过拓扑序\(DP\),这样就可以很容易地得到它的最长链,顺便也可以统计出方案数,通过加法原理就可以得到下列方程
\[\begin{array}c1.当f[k]=0,也就是没有被更新过的时候\\f[k] = sz[k]\\g[k]=1\\2.当f[k] < f[i] + sz[k] (发现更长的链可以更新)\\f[k] = f[i] + sz[k]\\g[k] = g[i] (所有从走到i的,再从i走到k是唯一的)\\3.当f[k]=f[i]+sz[k] (发现一样长的链一起选)\\g[k] += g[i] (顺便取模)\end{array}\]这边我们半连通子图的大小应该是
\[整条链上所有的强连通分量内点的个数和\]然后跑最长链,就行了。
代码
#include #include #include #include using namespace std;const int N = 1e5 + 10, M = 2e6 + 10;int h[N], hs[N], e[M], ne[M], idx;int stk[N], top, in_stk[N];int dfn[N], low[N], stmp, scc_cnt;int f[N], g[N], maxf, sum, id[N];int n, m, mod, sz[N];void add(int *h, int a, int b) { e[idx] = b, ne[idx] = h[a], h[a] = idx ++ ;}void tarjan(int u) { dfn[u] = low[u] = ++ stmp; stk[ ++ top] = u, in_stk[u] = true ; for (int i = h[u]; ~i; i = ne[i]) { int j = e[i]; if (!dfn[j]) { tarjan(j); low[u] = min(low[u], low[j]); } else if (in_stk[j]) low[u] = min(low[u], dfn[j]); } if (dfn[u] == low[u]) { int y; ++ scc_cnt; do { y = stk[top -- ]; in_stk[y] = false ; id[y] = scc_cnt; sz[scc_cnt] ++ ; } while (y != u); }}int main() { scanf("%d%d%d", &n, &m, &mod); memset(h, -1, sizeof h); memset(hs, -1, sizeof hs); while (m -- ) { int u, v; scanf("%d%d", &u, &v); add(h, u, v); } for (int i = 1; i <= n; i ++ ) if (!dfn[i]) tarjan(i); unordered_set mp; for (int i = 1; i <= n; i ++ ) { for (int j = h[i]; ~j; j = ne[j]) { int k = e[j], a = id[i], b = id[k]; if (a != b && !mp.count(a * 1e6 + b)) { add(hs, a, b); mp.insert(a * 1e6 + b); } } } for (int i = scc_cnt; i; i -- ) { if (!f[i]) { f[i] = sz[i]; g[i] = 1; } for (int j = hs[i]; ~j; j = ne[j]) { int k = e[j]; if (f[k] < f[i] + sz[k]) { f[k] = f[i] + sz[k]; g[k] = g[i]; } else if (f[k] == f[i] + sz[k]) { g[k] += g[i]; if (g[k] >= mod) g[k] -= mod; } } } for (int i = scc_cnt; i; i -- ) { if (f[i] > maxf) maxf = f[i], sum = g[i]; else if (f[i] == maxf) { sum += g[i]; if (sum >= mod) sum -= mod; } } printf("%d\n%d\n", maxf, sum); return 0;}
-
如何给所有的 await async 函数添加try/catch?
如何给所有的awaitasync函数添加try catch?做全局捕获异常。面试官:如何给所有的awaitasync函数添加t...
来源: -
世界微资讯!mybatis使用postgresql中的jsonb数据类型
最近新开发的一个功能使用到postgresql中的jsonb数据类型。架构师可能考虑到这种数据格式更加便于存储js...
来源: 【天天报资讯】AcWing.1175 最大半连通子图
如何给所有的 await async 函数添加try/catch?
世界微资讯!mybatis使用postgresql中的jsonb数据类型
世界报道:2022年新能源车销量出炉:每卖出3辆车就有1辆新能源
全球动态:高分国漫《中国奇谭》B站播放量破1800万 网友:碾压《三体》动画
今年上映!国产航空大片《长空之王》新海报:尖端战机亮眼
超过6万台!国产龙芯CPU采购大单拿到手软
四川女子回娘家屋旁偶遇大熊猫直言激动 并不怕人:圆滚滚超可爱
学习笔记——书城项目第五阶段之购物项加号、购物项减号
【世界快播报】记一次2022某地HVV中的逆向分析
全球看点:2022年押注特斯拉亏大了!50支重仓基金惨不忍睹
环球视讯!加州新法实施 特斯拉仍宣传“全自动驾驶”:或被罚数千万美元
当前资讯!15分钟出结果 快速检测试剂盒:25份到手74.9元
司机酒后睡着 原地踩油门致车辆起火:烧成废墟
焦点播报:奇瑞营销公司总经理:自家2.0T发动机能与奔驰、宝马媲美
docker network
比亚迪高端品牌“仰望”发布 超级技术叩开百万级新能源市场大门
观察:首次集成AI引擎 AMD对锐龙7000移动版极其自信:超越苹果不是问题
新年微信红包封面领取攻略 谁还没有几个红包皮呢?
大桶更尽兴 溜溜梅六味青梅宝藏桶480g 25.1元
世界快看点丨【甘特图软件部件】上海道宁与DlhSoft助力您的Windows与移动应用程序开发
世界百事通!学习笔记——CommonResult工具、书城项目第五阶段(清空购物车、删除购物项、对数量的修改)
环球热点评!百万级U8、U9双双亮相!比亚迪已注册多个仰望品牌商标
环球资讯:笔记本显示屏变天了!OLED面板大爆发:加速淘汰LCD
一加11在京东抢购一空!3999元定价震撼整个手机行业
七彩虹RTX 4070 Ti 6499元起开卖:兔年惊喜礼盒 不加1分钱
副业不小心干成了主业!新东方在线拟更名为东方甄选控股有限公司
java中的多线程
2022 最新版 JDK 17 下载与安装 步骤演示 (图示版)
世界热讯:【验证码逆向专栏】某验四代滑块验证码逆向分析
世界讯息:Dubbo 3 端口协议复用
水里也能开!仰望U8核心系统支持IP68防水:可浮水行驶
百万级纯电性能超跑!比亚迪仰望U9来了:零百加速2秒级、电动蝴蝶门
对标比亚迪仰望U8 东风猛士M-Terrain官图发布:超级硬汉
时隔18年再出续篇!经典老片《神话》续集定名《传说》
144MB缓存性能无解!Zen4架构AMD锐龙9 7950X3D比酷睿i9-13900K快了52%
每日快看:浅谈多项式与生成函数
hive调优之参数设置
如何接入畅联云平台管理物联网设备?
【速看料】IM通讯协议专题学习(七):手把手教你如何在NodeJS中从零使用Protobuf
荣耀Magic 5系列镜头模组曝光:经典圆形设计、配100X长焦
每日观点:地表最快!realme宣布首发量产240W满级秒充:充满不到10分钟
李国庆称腾讯京东有大公司病 当当就是失败的案例
98年哥哥返乡给15个弟妹买一车礼物:塞满整个后备箱
荣耀MagicOS获新浪2022科技风云榜年度智能操作系统奖
统计B站番剧真实评分
基础可视化图表之分组条形图
锐龙9 6900HX加持!魔方M600迷你主机图赏
【世界报资讯】便宜还好用:绿联iPhone全系钢化膜冲量3.6元/张
世界速看:折叠屏我只认OPPO Find N2:安卓阵营独一无二
环球聚焦:宝马展示i Vision Dee概念汽车:可变换车身颜色 有科幻味了
全球视点!员工:不怕大家拿任何手机跟一加11比精致度和质感
天天消息!RHEL/CentOS yum 源问题
记 对接拼多多官方代报 辽宁电子口岸联达通客户端 ic卡加签版
天天视讯!透过现象看本质,我找到了Netty粘包与半包的这几种解决方案。
天天快资讯丨天府可乐因破产传闻销量暴增 民族品牌不会轻易垮:请理性消费
144MB暴力缓存!AMD锐龙7000 3D缓存版杀来:16核心神奇120W
马斯克最“惨” 福布斯:2022年美国亿万富翁身价创纪录暴跌
全球即时看!独立包装、现货速发:掌护快速检测试剂盒2.9元/份
世界微头条丨李斌发蔚来全员信:列举8大问题 有同行比我们更出色
全球热议:比亚迪宋PLUS上月热销50006台:接棒哈弗H6成新一代神车
环球速看:从菜鸟到团队协同大神:产品经理工具技能修炼
当前聚焦:DTALK直播预约 | 金融行业嘉宾分享:金融机构数据治理实践路径
视焦点讯!ZooKeeper 避坑实践:SnapCount 设置不合理导致磁盘爆满,服务不可用
一纸死亡威胁:让安卓最良心的PS2模拟器凉凉了
世界讯息:年底发福利 马自达推出全系购车优惠:CX-5置换1万补贴
环球头条:AMD正式发布锐龙7000三款新U:一键能效暴涨47%!就看价格了
微动态丨增程混动加持 Aska A5飞行汽车首发亮相:配降落伞、可垂直起降
最新资讯:AMD锐龙7000降临笔记本:4种CPU/3种GPU/4种工艺 性能最高提升78%!
环球热头条丨索尼《GT赛车》真人电影!《头号赛车手》先导预告发布:8月上映
全球动态:确定了!漫威新片《黑豹2》2月1号正式上线流媒体
不减薪、工作5小时下班!实探“四天半工作制”乐视:比预想的还好
天天新资讯:《阿凡达1/2》仅是开胃菜?卡梅隆:好戏在后面
当前视讯!元旦就“入夏”?极端暖冬席卷欧洲:至少7国破气温记录
快看点丨修改NuGet包默认存放位置
环球快消息!AcWing1174. 受欢迎的牛
当前信息:苹果砍单立讯精密最受伤?官方回应:与客户合作正常
环球热讯:iPhone 15 Pro/Ultra升级!钛合金边框+8GB内存
天天视讯!内存暴跌4成 现在不买待何时?
iPhone 14 Pro全天候显示屏有多费电?实测每小时不到1%
环球今热点:今日发布 比亚迪仰望首款硬派越野车内饰谍照:百万级豪华
『JNPF』低代码创新赋能数字经济建设
【环球新视野】iPhone一直收集用户数据!隐私捍卫者苹果被法国重罚:我们不服
微信红包升级!全新动态红包封面上线
司机免费代驾870公里送卡友回家 获5千元正能量奖金:这魄力网友点赞
天天快看点丨《阿凡达2》 已经被“烂片之王”翻拍了:豆瓣居然全5星
神U换代 AMD Zen4架构锐龙7 7800X3D来了:游戏性能提升30%
微信支付--JSAPI支付(微信小程序和微信公众号支付都可以采用该方式)
13+3相豪华供电!影驰RTX 4070 Ti星曜OC显卡图赏
女子跨年夜中1000万后悔跟孩子说 他们说不奋斗了引网友热议:这能躺平?
环球热议:乘联会:预计2022年乘用车销量2070万辆 今年或0增长
存款贬值了快一半 土耳其人把游戏当成了救命稻草
每周只上班4天半!乐视居然成了"反卷斗士":真是神仙日子吗?
一本通动态规划篇解题报告
当前视讯!Python的保留字、标识符、变量的定义、常用数据类型、数据类型转换
砍单三大产品线 苹果市值跌破2万亿美元 富士康表态
世界热点评!抄底吗?知名投资人段永平:已将手上腾讯美股换成苹果
天天观速讯丨二次元外观下带来澎湃性能!铭瑄MS RTX 4070 Ti OC12G璦珈评测:最强192bit显卡非它莫属
10升好身材!ROG发布冰刃X迷你机:居然有没发布的RTX 4070
金庸最成功的作品 来源自历史上让人耻辱的失败