博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces 1038E Maximum Matching
阅读量:5131 次
发布时间:2019-06-13

本文共 1843 字,大约阅读时间需要 6 分钟。

可能写了个假算法

 

假设定义:含有一个欧拉路的图为类欧拉图

欧拉路的定义:一个无向连通图中,存在一条路径对所有边都遍历且仅遍历一次;判断方法:该连通图中度为奇数的点的个数不能超过2,即为0或者2

 

题目解法:

对每一条数据a,b,c,想象成a点与b点之间连了一天值为c的边,则此图共有4个点

问题变成求图中一个合法的类欧拉图的边权和最大值

此值等于任意一个连通图的边权值之和,但一种情况除外,即此图中度为奇数的点个数超过2,对应此题中,度为奇数的点的个数即为4,此时连通图的所有边权和大于此图中合法的类欧拉图的边权和最大值,其之间的差值为图中一条边的权值,此边需要满足的条件为:如果这个连通图减去这条边,则可以形成一个合法的类欧拉图即可,此边的最小权值即为代码中的mx

 

 

 

 

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;#define fio ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);#define fopen freopen("input.in", "r", stdin);freopen("output.in", "w", stdout);#define left asfdasdasdfasdfsdfasfsdfasfdas1#define tan asfdasdasdfasdfasfdfasfsdfasfdasmt19937 rng(chrono::steady_clock::now().time_since_epoch().count());typedef long long ll;typedef unsigned int un;const int desll[4][2]={ { 0,1},{ 0,-1},{ 1,0},{-1,0}};const int mod=1e9+7;const int maxn=1e5+7;const int maxm=1e5+7;const double eps=1e-4;int m,n;int ar[maxn];int ans=0;int num[10],sum[5];int f[5][5],mx=1e5+7,all;bool ma[5];pair
,int> pa[maxn];int dfs(int x){ all+=sum[x]; ma[x]=1; int mid = num[x]%2; for(int i=1;i<=4;i++){ if(f[x][i] && !ma[i])mid += dfs(i); } return mid;}void solve(int i){ memset(ma,0,sizeof(ma)); all=0; int x= dfs(i); all/=2; if(x==4)ans=max(ans,all-mx); else ans=max(ans, all);}int main(){ scanf("%d",&n); memset(num,0,sizeof(num)); memset(sum,0,sizeof(sum)); memset(f,0,sizeof(f)); ans=0; for(int i=0;i
1){ mx=min(b,mx); } else{ f[a][c]--; f[c][a]--; memset(ma,0,sizeof(ma)); dfs(a); if(ma[c])mx=min(mx,b); f[c][a]++; f[a][c]++; } } } //cout<<"mx = "<
<

 

转载于:https://www.cnblogs.com/wa007/p/9610991.html

你可能感兴趣的文章
【大数模板】C++大数类 大数模板
查看>>
【123】
查看>>
《收获,不止Oracle》pdf
查看>>
用户权限设置
查看>>
java 之equals与"=="的区别
查看>>
LinkedList<E>源码分析
查看>>
学习微软 Excel 2002 VBA 编程和XML,ASP技术
查看>>
游戏开发常用算法
查看>>
Real-Time Rendering 笔记
查看>>
如何理解HTML结构的语义化
查看>>
Intellij IDEA(eclipse设置)常用快捷键
查看>>
learning express step(五)
查看>>
推荐2013年最新的10款jquery插件
查看>>
推荐十款来自极客标签的超棒前端特效[第十一期]
查看>>
51nod 1270 数组的最大代价 思路:简单动态规划
查看>>
51 nod 1624 取余最长路 思路:前缀和 + STL(set)二分查找
查看>>
c# linq <未完>
查看>>
模型选择评估方法
查看>>
Beta 冲刺(4/7)
查看>>
Spring 配置相关
查看>>