CF1082G Petya and Graph】的更多相关文章

题意 定义图权 = 图中边权总和 - 图中点权总和(空图的图权=0),求 n 个点 m 条边的无向图最大权子图. 把边看成点,这个点与两个原图中的点连边.直接最小割求最大闭合子图即可.…
分析 发这篇博客的目的就是要让你们知道博主到底有多菜. 类似于[NOI2006]最大获利.(明明就是一模一样好吧!) 不知道怎么了,半秒就想到用网络流,却没想出怎么建图. 连这么简单的题都没做出来,我实在是太菜了. 反思反思! 简述一下建图方式: 把原图中的边看作点. S向每条边对应的的点连边,容量为边权. 每条边对应的点向这条边连接的两个点连边,容量为\(1e18\). 每个原图中的点向T连边,容量为点权. 答案即为总边权-最小割. 代码 #include <iostream> #inclu…
QWQ嘤嘤嘤 感觉是最水的一道\(G\)题了 顺便记录一下第一次在考场上做出来G qwqqq 题目大意就是说: 给你n个点,m条边,让你选出来一些边,最大化边权减点权 \(n\le 1000\) QWQ 看完这个题和数据范围,第一感觉就是网络流啊QWQ首先,我们可以将一条边视为依赖于两个端点,也就是表示,你要是选择了这一条边的收益,必须付出剩下两个点的代价. 那么这就是一个经典的最大权闭合子图 \(从S向每个边对应的点连边权,然后每个边向两个端点连inf,然后每个端点向T连点权\) 最后,用\(…
G - Petya and Graph 思路: 最大权闭合子图 对于每条边,如果它选了,那么它连的的两个点也要选 边权为正,点权为负,那么就是求最大权闭合子图 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize(4) #include<bits/stdc++.h> using namespace std; #define fi first #define se second #define pi ac…
Petya and Graph http://codeforces.com/contest/1082/problem/G time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Petya has a simple graph (that is, a graph without loops or multiple edges) con…
原题地址:https://codeforces.com/contest/1082/problem/G G. Petya and Graph time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Petya has a simple graph (that is, a graph without loops or multiple e…
Petya has a simple graph (that is, a graph without loops or multiple edges) consisting of n n vertices and m m edges. The weight of the i i -th vertex is a i  ai . The weight of the i i -th edge is w i  wi . A subgraph of a graph is some set of the g…
题意: 让你选一些边,选边的前提是端点都被选了,求所有的边集中,边权和-点权和最大的一个. 题解: 对于每个边建一个点,然后就是裸的最大权闭合子图, 结果比赛的时候我的板子太丑,一直T,(不会当前弧优化...) 当时补题用的是蔡队的Dinic当前弧优化板子 今天重写了一遍 #include <bits/stdc++.h> #define endl '\n' #define ll long long #define all(x) x.begin(),x.end() #define IO ios:…
网络流裸题 \(s\)向点连边\((s, i, a[i])\) 给每个边建一个点 边\((u, v, w)\)抽象成\((u, E, inf)\)和\((v, E, inf)\)以及边\((E, t, w)\) 最小割建模... 然后就没了....复习一下板子吧 #include <cstdio> #include <cstring> #include <iostream> using namespace std; #define ll long long #defin…
题目传送门 题意:现在有一个图,选择一条边,会把边的2个顶点也选起来,最后会的到一个边的集合 和一个点的集合 , 求边的集合 - 点的集合最大是多少. 题解:裸的最大权闭合子图. 代码: #include<bits/stdc++.h> using namespace std; #define Fopen freopen("_in.txt","r",stdin); freopen("_out.txt","w",std…