洛谷P5234 越狱老虎桥 [JSOI2012] tarjan
2024-09-20 20:40:27
正解:tarjan+贪心(?并不会总结是什么方法QAQ,,,
解题报告:
传送门!
这题是真的题意杀,,,我我我要不是之前知道题目大意了我怕是怎么看都看不懂这是个什么意思昂QAQ
所以先说下题目大意好了QAQ
大概就是说有一个连通图,现加入一条边,这条边可以连接任意两个点麻油影响,然后现在要断开一条边使得这个图变得不连通,求保证不管怎么加边都满足不连通的边的最小值是多少
首先想到肯定是要把桥断开,然后把边双缩成一个点,这里不港,具体看代码就可可
然后仔细思考一下可以发现把边双缩成点之后形成的会是一棵树
可以发现就从小到大看当前边和之前的边484构成一条链就好,如果是,就说明不可以,不是就说明就是这条边辣!
顺便判断是否构链这里可以二分答案balabala的,有点麻烦明天具体说QAQ
#include<bits/stdc++.h> using namespace std; #define il inline #define ll long long #define rg register #define gc getchar() #define t(i) edge[i].to #define rp(i,x,y) for(rg int i=x;i<=y;++i) #define my(i,x,y) for(rg int i=x;i>=y;--i) #define e(i,x) for(rg int i=head[x];i;i=edge[i].nxt) +,M=+; int n,m,ed_cnt,nw_ed_cnt,fa[N],dfn[N],low[N],head[N],tim,in[N]; ]; struct eded{int fr,to,wei;}nwed[N]; il int read() { rg ;rg ; '))ch=gc; ; )+(x<<)+(ch^'),ch=gc; return y?x:-x; } il void ad(int x,int y,int z){edge[++ed_cnt]=(ed){x,head[y],z};head[y]=ed_cnt;} void tarjan(int x,int fat) { fa[x]=fat;dfn[x]=low[x]=++tim; e(i,x){if(t(i)^fat)if(!dfn[t(i)])tarjan(t(i),x),low[x]=min(low[x],low[t(i)]);else low[i]=min(low[i],dfn[t(i)]);} } il bool cmp(eded gd,eded gs){return gd.wei<gs.wei;} int main() { freopen("yylhq.in","r",stdin);freopen("yylhq.out","w",stdout); n=read();m=read();rp(i,,m){int x=read(),y=read(),z=read();ad(x,y,z);ad(y,x,z);} rp(i,,n)); rp(i,,n)e(j,i)if(low[i]==dfn[i] && dfn[t(j)]>dfn[i])nwed[++nw_ed_cnt]=(eded){i,t(j),edge[j].wei}; sort(nwed+,nwed++nw_ed_cnt,cmp); rp(i,,nw_ed_cnt){++ || );} printf("-1\n"); ; } /* www我判断是WA的,,,有时间再改趴我懒得打辣明天放正确代码趴QAQ */
然后我不想打二分答案了,,,所以我我我先mk趴QAQ
最新文章
- 在v-for中利用index来对第一项添加class(vue2.0)
- Front End Developer Questions 前端开发人员问题(二)
- Tomcat 的使用学习
- UvaLive 5026 Building Roads
- struts2的 result 通配符 OGNL
- [转载]Sublime Text 3 搭建 React.js 开发环境
- HDU3487 Play With Chains(Splay)
- Hibernate 配置派生属性
- 【行为型】Mediator模式
- linux复制文件命令scp
- 在TextView上显示图片信息
- 【转帖】系统软件工程师必备技能-进程内存的working set size(WSS)测量
- 【原创】大叔经验分享(4)Yarn ResourceManager页面如何实现主被自动切换
- Dev GridControl数据修改后实时更新数据源(转)
- Windows Server 2012 R2 双网卡绑定
- 【ThinkPHP】解析ThinkPHP5创建模块
- 合成/聚合复用原则(Composite/Aggregate Reuse Principle, CARP)
- 【PowerDesigner】【5】数据模型 CDM
- markdown简单入门
- System.Windows.Forms.Control : Component, IOleControl, IOleObject, IOleInPlaceObject, IOleInPlaceActiveObject....