FZU2232 炉石传说 最大匹配

思路:正好是二分图,自己敌人,符合条件的随从二人组建边,最大匹配为n是符合要求

#include <cstdio>
#include <cstring>
#include <queue>
#include <set>
#include <map>
#include <stack>
#include <cstdlib>
#include <algorithm>
#include <vector>
#include <cmath>
using namespace std;
typedef long long LL;
typedef pair<int,int>pii;
const int N=1e2+5;
const int INF=0x3f3f3f3f;
int match[N<<1],T,n;
bool vis[N<<1];
int a[N<<1],b[N<<1];
vector<int>g[N];
bool dfs(int u){
   for(int i=0;i<g[u].size();++i){
      int v=g[u][i];
      if(vis[v])continue;
      vis[v]=true;
      if(match[v]==-1||dfs(match[v])){
         match[v]=u;
         return true;
      }
   }
   return false;
}
int main(){
    scanf("%d",&T);
    while(T--){
      scanf("%d",&n);
      for(int i=1;i<=2*n;++i){
         scanf("%d%d",&a[i],&b[i]);
      }
      for(int i=1;i<=n;++i)g[i].clear();
      for(int i=1;i<=n;++i)
        for(int j=n+1;j<=2*n;++j)
          if(a[i]>b[j]&&b[i]>=a[j])g[i].push_back(j);
      int ans=0;
      memset(match,-1,sizeof(match));
      for(int i=1;i<=n;++i){
        memset(vis,false,sizeof(vis));
        if(dfs(i))++ans;
      }

      if(ans==n)printf("Yes\n");
      else printf("No\n");
    }
    return 0;
}

时间: 2024-11-06 04:23:11

FZU2232 炉石传说 最大匹配的相关文章

关于炉石传说的NGUI问题

前几天,将炉石传说的开场动画搬了上去.看实现界面. 感觉这个人物还是很性感的==!! 播放动画之后便是切换到主界面 1.在NGUI插件下打开prefabs Toolsbar. 2.将prefabs Toolsbar的background添加 3.删除backgroundController 4.找到背景图片之后右键NGUI,创建图集制作 5.在hierarchy面板中选定UIroot之后 在scene中右键创建精灵. 6.在图集的预制体上update/add logo的图片. 注释:sprite

炉石传说JJC英雄简评 &amp;&amp; JJC combo收集:Ver 1.0

? 1 2 3 4 5 6 7 /*-----------------------------------------------------------------------------  *  author:Rainboy and his GL 南柯CHY  *  wirte date:2014-04-29  * # LastUpdated: 2014-04-29 15:42  * ? Copyright 2014 Rainboy and his GL 南柯CHY.  All Rights

CCF - 201609-3 - 炉石传说

问题描述 试题编号: 201609-3 试题名称: 炉石传说 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 <炉石传说:魔兽英雄传>(Hearthstone: Heroes of Warcraft,简称炉石传说)是暴雪娱乐开发的一款集换式卡牌游戏(如下图所示).游戏在一个战斗棋盘上进行,由两名玩家轮流进行操作,本题所使用的炉石传说游戏的简化规则如下: * 玩家会控制一些角色,每个角色有自己的生命值和攻击力.当生命值小于等于 0 时,该角色死亡.角色分为英雄和随从. *

CCF2016093炉石传说(C语言版)

问题描述 <炉石传说:魔兽英雄传>(Hearthstone: Heroes of Warcraft,简称炉石传说)是暴雪娱乐开发的一款集换式卡牌游戏(如下图所示).游戏在一个战斗棋盘上进行,由两名玩家轮流进行操作,本题所使用的炉石传说游戏的简化规则如下: * 玩家会控制一些角色,每个角色有自己的生命值和攻击力.当生命值小于等于 0 时,该角色死亡.角色分为英雄和随从. * 玩家各控制一个英雄,游戏开始时,英雄的生命值为 30,攻击力为 0.当英雄死亡时,游戏结束,英雄未死亡的一方获胜. * 玩

《炉石传说》建筑设计欣赏(6):卡&amp;amp;在执行数据时,组织能力

上一篇文章我们看到了<炉石传说>核心存储卡的数据,今天,我们不断探索卡&身手. 基本的类 通过之前的分析,卡牌&技能涉及到几个类体系:Entity.Actor.Card.Spell,令人十分困惑,特别是前两者.在这里先略带武断的说一下这几个类的基本定位: Entity主要用来做网络数据同步用的: Actor主要处理client的渲染对象的控制,作为Component挂载在资源对象上: Spell是技能Prefab挂载的脚本. Card是卡牌Prefab挂载的脚本.在执行时处于中

借鉴炉石传说的战棋游戏《DarkWar》

<炉石传说>是现在很火的休闲对战游戏,本人也非常喜欢玩,玩的时候经常想能不能把炉石的这些元素融入到战棋类游戏中,于是思索良久,又恰逢游戏蛮牛开展第三届蛮牛杯游戏开发大赛,于是用Unity3D制作了这款游戏. 至于为什么叫DarkWar,那是因为一开始准备做成暗黑风格的,残酷的现实告诉我我不适合谈风格……游戏没有完全做好,素材还都是东拼西凑的,音效也就寥寥数个,因为要参加比赛只好先发出来了,正好有喜欢的玩家可以一起探讨下,欢迎加群:330838373.安卓版apk下载地址:http://yun.

《炉石传说》架构设计赏析(6):卡牌&amp;技能数据的运行时组织

前一篇文章我们看到了<炉石传说>的核心卡牌数据的存储,今天我们继续探索卡牌&技能. 主要的类 通过之前的分析,卡牌&技能涉及到几个类体系:Entity,Actor,Card,Spell,令人十分困惑,特别是前两者.在这里先略带武断的说一下这几个类的基本定位: Entity主要用来做网络数据同步用的: Actor主要处理客户端的渲染对象的控制,作为Component挂载在资源对象上: Spell是技能Prefab挂载的脚本: Card是卡牌Prefab挂载的脚本,在运行时处于中心

《炉石传说》架构设计赏析(4):Asset管理

欢迎转载,请注明作者[燕良@游戏开发]及原文地址:http://blog.csdn.net/neil3d/article/details/39580197 另外,欢迎大家来我的QQ群交流各种游戏引擎相关的技术:游戏引擎能吃吗(264656505) 话说,经过这段时间的学习和摸索,对于Unity3D的开发思路已经基本清晰了.唯独还剩下一个AssetBundle机制还没有搞透,这个涉及到前期项目的资源规划.资源管理代码的写法,以及自动更新机制的实现. 所以,还是想先把游戏逻辑的进一步分析押后,先来看

关于炉石传说AI

一直想做一个炉石传说自动出牌AI,感谢yangyuan在GITHUB上分享的hearthrock(https://github.com/yangyuan/hearthrock),让我不至于毫无头绪.目前,hearthrock(近两年前的项目,作者已不更新)的ai部分代码已经基本读完,该AI智能程度较低,基本就是有什么牌出什么牌,基本达不到要求.苦思冥想之余下载了德国人制作的Hearthbuddy,意外发现程序文件夹中带有AI功能源码且是C#的!量很大,得慢慢吃.