【洛谷 P6268】【二分图】 舞会

news/2024/11/17 5:35:41/

【洛谷 P6268】【二分图】 舞会

题目

在这里插入图片描述


解题思路

先染色,确定性别
然后挑一个性别跑最大匹配
用总人数n减去最大匹配即为答案
因为邀请的人都不能一起跳过舞
如果去的人中有最大匹配中的
那么至少有一对跳过舞


代码

#include<iostream>
#include<cstring> 
#include<cstdio>
using namespace std;
int n,m,x,y,ans,a[1010][1010],c[1010],p[1010],g[1010],q[10100];
void dfs(int x,int s)
{c[x]=s;for (int i=1;i<=n;i++)if (a[x][i]&&!c[i])dfs(i,3-s);
}
int solve(int x)
{for (int i=1;i<=n;i++)if (!p[i]&&a[x][i]){p[i]=1;if (!g[i]||solve(g[i])){g[i]=x;return 1;}}return 0;
}
int main()
{scanf("%d%d",&n,&m);for (int i=1;i<=m;i++){scanf("%d%d",&x,&y);x++,y++;a[x][y]=1;a[y][x]=1;}for (int i=1;i<=n;i++)if (!c[i])  //染色dfs(i,1);for (int i=1;i<=n;i++)if (c[i]==1){memset(p,0,sizeof(p));ans+=solve(i);   //找和ta跳过舞的舞伴匹配}printf("%d",n-ans);return 0;
}

http://www.ppmy.cn/news/177079.html

相关文章

Leetcode6268-查询树中环的长度

易知环的长度为两个点到他们最近公共祖先的长度之和再加一。所以这题即求任意两点的最近公共祖先。因为是满二叉树&#xff0c;所以我们每次向上一层查找&#xff0c;即把当前点除以2即可&#xff0c;直到找到他们的第一个公共祖先即可。 class Solution { public:vector<i…

hdu6268 Master of Subgraph(点分治+连通块背包+bitset优化)

题意&#xff1a; 解法&#xff1a; 一开始肯定考虑树形dp, 任取一个点作为根,令d[x][i]表示x的子树是否可以组合成i, 复杂度O(n* m^2),bitset优化的话也还是要O(n* m^2 /64), 主要问题在于dp[v]合并到dp[x]上每次需要O(m),没什么办法优化.可以考虑不进行背包dp[v]和背包dp[x]…

[LOJ#6268] 分拆数 [多项式求ln][多项式exp]

Link LOJ - https://loj.ac/problem/6268 G ( x ) ∑ n 0 ∞ p r ( n ) x n ∏ k 1 n ( 1 x k x 2 k ⋯ x ⌊ n k ⌋ k ) G(x)\sum\limits_{n0}^\infty p_r(n)x^n\prod\limits_{k1}^{n}(1x^kx^{2k}\cdotsx^{\lfloor\frac{n}{k}\rfloor k}) G(x)n0∑∞​pr​(n)xnk1∏n​…

题解 P6268 【[SHOI2002]舞会】

题目链接 某学校要召开一个舞会。已知学校所有 nn 名学生中&#xff0c;有些学生曾经互相跳过舞。当然跳过舞的学生一定是一个男生和一个女生。在这个舞会上&#xff0c;要求被邀请的学生中的任何一对男生和女生互相都不能跳过舞。求这个舞会最多能邀请多少个学生参加。 这道题…

MTK6268-FAT

1. MBR(Master Boot Record) 高亮前的446个字节为MBR引导代码, 之后为DPT(Disk Patition Table)占64个字节, 再之后两位(55 AA(101010110101010))位结束符.(第1扇区结束) DPT结构: 表1 分区表第1字段(第一分区) 字节位移 字段长度 值 字段名和定义 0x01BE BYTE 0x80 …

P6268 [SHOI2002]舞会 题解

博客园同步 原题链接 前置知识&#xff1a; 匈牙利算法 简要题意&#xff1a; 求图的二分图最大独立集。 二分图最大独立集指&#xff1a;最大的一个点集使得每两个点都不在同一边上的这个点集的大小。 你会发现&#xff0c;这和 二分图最大匹配 似乎是有联系的。 给出…

洛谷 P6268 [SHOI2002]舞会(二分图最大独立集)

[SHOI2002]舞会 题目描述 某学校要召开一个舞会。已知学校所有 n n n 名学生中&#xff0c;有些学生曾经互相跳过舞。当然跳过舞的学生一定是一个男生和一个女生。在这个舞会上&#xff0c;要求被邀请的学生中的任何一对男生和女生互相都不能跳过舞。求这个舞会最多能邀请多…

[HDU6268]Master of Subgraph

[HDU6268]Master of Subgraph 题目大意&#xff1a; 一棵\(n(n\le3000)\)个结点的树&#xff0c;每个结点的权值为\(w_i\)。给定\(m(m\le10^5)\)&#xff0c;对于任意\(i\in[1,m]\)&#xff0c;问书中是否有一个连通子图的权值和等于\(i\)。 思路&#xff1a; 重心剖分。考虑处…