首页 > 其他分享 >CF723E One-Way Reform

CF723E One-Way Reform

时间:2023-10-09 20:23:43浏览次数:39  
标签:度数 typedef Way Reform int long CF723E include define

很有意思的一个题,刚开始想复杂了后面看了题解才发现是个傻逼题

首先不难发现答案的上界数就是度数为偶数的节点数,考虑一种构造方法能打到这个上界

不妨新建一个虚拟节点,将所有度数为奇数的点与其连边,这样图中所有点度数都变成了偶数,包括这个虚拟节点

而对于一个所有点度数均为偶数的图,我们知道它一定存在欧拉回路,并且欧拉回路一定会使得进入某个点的次数和离开某个点的次数相等

因此这种方案一定能到达理论上界,复杂度\(O(n^2)\)

#include<cstdio>
#include<iostream>
#include<utility>
#include<vector>
#include<cstring>
#include<cmath>
#include<cstdlib>
#include<algorithm>
#include<queue>
#include<set>
#include<map>
#include<set>
#include<array>
#include<random>
#include<bitset>
#include<ctime>
#include<limits.h>
#include<assert.h>
#include<unordered_set>
#include<unordered_map>
#define RI register int
#define CI const int&
#define mp make_pair
#define fi first
#define se second
#define Tp template <typename T>
using namespace std;
typedef long long LL;
typedef long double LDB;
typedef unsigned long long u64;
typedef __int128 i128;
typedef pair <int,int> pi;
typedef vector <int> VI;
typedef array <int,3> tri;
const int N=205;
int t,n,m,x,y,G[N][N],deg[N],vis[N];
inline void DFS(CI now)
{
	for (RI i=0;i<=n;++i) if (G[now][i])
	{
		if (now&&i) printf("%d %d\n",now,i);
		--G[now][i]; --G[i][now]; DFS(i);
	}
}
int main()
{
	//freopen("CODE.in","r",stdin); freopen("CODE.out","w",stdout);
	for (scanf("%d",&t);t;--t)
	{
		RI i,j; for (scanf("%d%d",&n,&m),i=1;i<=m;++i)
		scanf("%d%d",&x,&y),++deg[x],++deg[y],++G[x][y],++G[y][x];
		int cnt=0; for (i=1;i<=n;++i) if (deg[i]&1) ++G[0][i],++G[i][0]; else ++cnt;
		for (printf("%d\n",cnt),i=0;i<=n;++i) DFS(i);
		for (i=0;i<=n;++i) deg[i]=vis[i]=0;
	}
	return 0;
}

标签:度数,typedef,Way,Reform,int,long,CF723E,include,define
From: https://www.cnblogs.com/cjjsb/p/17753049.html

相关文章

  • CF131D Subway 题解
    题目传送门前置知识强连通分量|最短路解法考虑用Tarjan进行缩点,然后跑最短路。缩点:本题的缩点有些特殊,基于有向图缩点修改而得,因为是无向图,所以在Tarjan过程中要额外记录一下从何处转移过来,防止在同一处一直循环。基环树上找环还有其他方法,这里仅讲解使用Tarjan求......
  • 【Citrix篇】2-Citrix ADC/Gateway远程代码执行XSS漏洞修复方案
    、一、前言    最近我们根据修复了CVE-2023-3519漏洞,仍有部分安全厂商扫描出XSS漏洞,我们从400获悉该XSS漏洞不存在风险的,但是可拒绝请求,拦截掉。【Citrix篇】1-CitrixADC/Gateway远程代码执行漏洞CVE-2023-3519和升级方法二、漏洞详情    我们根据构建XSS语句,发现Citrix......
  • Spring Cloud Gateway:打造可扩展的微服务网关
    在当今的微服务架构中,一个高性能、可扩展的网关是至关重要的。而SpringCloudGateway作为SpringCloud生态系统的一部分,成为许多开发者选择的首选网关解决方案。本文将为您提供一个简单易懂的SpringCloudGateway入门指南,帮助您快速上手并开始构建强大的微服务网关。1.Gateway服......
  • 【Citrix篇】1-Citrix ADC/Gateway 远程代码执行漏洞CVE-2023-3519和升级方法
    一、前言近期我们收到Citrix发布关于NetScalerADC、NetScalerGateway的风险通告,漏洞编号为CVE-2023-3519,漏洞等级:严重,漏洞评分:9.8漏洞影响:Hack可根据该漏洞,在配置了网关(VPN虚拟服务器、ICA代理、CVPN、RDP代理)或AAA虚拟服务器的Netscaler上可绕开任何认证直接进入到shell......
  • 在Kubernetes环境中有关Nginx Ingress与API Gateway的连接问题
    文章目录小结问题解决参考小结在Kubernetes环境中是通过NginxIngress来从外部访问Kubernetes内部的环境,并用APIGateway来分发请求,碰到了502Badgateway.的问题,并尝试解决。问题从外部通过NginxIngress访问Kubernetes内部的环境APIGateway,返回错误:502Badgateway.这里API......
  • SpringCloud微服务学习笔记(二)【Feign,Gateway,Docker】
    Feign先来看我们以前利用RestTemplate发起远程调用的代码:存在下面的问题:•代码可读性差,编程体验不统一•参数复杂URL难以维护Feign是一个声明式的http客户端,官方地址:https://github.com/OpenFeign/feign其作用就是帮助我们优雅的实现http请求的发送,解决上面提到的问题。基......
  • springcloud gateway 获取响应体进行加密操作,byte[]转换String乱码
    记录一下困扰一星期的问题!在全局过滤器中,获取响应体进行加密操作,在拿到byte[]之后转成String,控制台打印出来是乱码,编码也加了UTF-8还是报错。publicMono<Void>filter(ServerWebExchangeexchange,GatewayFilterChainchain){ServerHttpResponseoriginalResponse=ex......
  • 531_平台屏蔽太敏感?不如试试WordsAway
    这是一篇原发布于2020-06-1913:30:00得益小站的文章,备份在此处。前言本文提到的工具仅用于帮助发送正常的内容,只能避开机器检测,若有人举报,人工审核后可能遭至更严重的处罚!发布言论在公共平台时请注意自己的一言一行!虽然这是个好东西但是切勿滥用,不然到时候某一天算法可以识别......
  • 在Spring Boot API Gateway中实现Sticky Session
    文章目录小结问题在APIGateway中实现StickySession在同一个APIGateway中同时支持StickySession和RoundRobinLoadBalancer参考小结在Kubernetes微服务的云环境中,如何在SpringBootAPIGateway中实现StickySession,当服务请求被某一个服务器处理后,所有后续的请求都被转发到被......
  • 基于 COLA 架构的 Spring Cloud Alibaba(六) Spring Cloud Gateway
    在之前的篇章中,我们访问账户服务、商品服务、订单服务时,都要分别指定服务对应的端口进行访问。在实际应用中,服务的实际端口是不对外暴露的。如果要搭建更多的服务,那么我们对服务的访问将要维护更多的端口和访问路径。对此,本篇将介绍使用SpringCloudGateway对服务入口进行统一管......