题目大意

平面上有n个矩阵,和n个数字,对于每个矩阵选择矩阵内的一个数字作为编号,让你给出唯一方案,使每个数字只作为一个矩阵的编号(多种方案即为不可行的)


解题思路

因为多种方案是不可行的,所以找到一个数字,它只在一个矩阵内,然后将其绑定,继续操作

对于一个矩阵内只有一个数字的,如果是可行的,那么简单推一下,可以发现消到最后,还是会出现前面的情况,所以无需考虑


代码

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define ll long long
#define N 100
using namespace std;
int n, m, s, v, p[N], pp[N], xx[N], yy[N], x[N][2], y[N][2];
bool pd(int i, int j)
{if (x[j][0] <= xx[i] && xx[i] <= x[j][1])if (y[j][0] <= yy[i] && yy[i] <= y[j][1])return true;return false;
}
int main()
{scanf("%d", &n);m = n;for (int i = 1; i <= n; ++i)scanf("%d%d%d%d", &x[i][0], &x[i][1], &y[i][0], &y[i][1]);for (int i = 1; i <= n; ++i)scanf("%d%d", &xx[i], &yy[i]);while(m){for (int i = 1; i <= n; ++i){if (pp[i]) continue;//选过了s = 0;v = 0;for (int j = 1; j <= n; ++j)if (pd(i, j) && !p[j]) s++, v = j;//查找包括它的矩阵个数if (!s) break;if (s == 1)//只有一个,就直接绑定{p[v] = i;pp[i] = 1;m--;break;}}if (s != 1) break;//到最后一都没找到就退出}if (m) puts("None");else{for (int i = 1; i <= n; ++i){putchar(i + 'A' - 1);printf(" %d\n", p[i]);}}return 0;
}

糊涂的教授(2015特长生 T3)相关推荐

  1. 糊涂的教授【拓扑排序】

    糊涂的教授 题目大意: 有n个矩阵(有些部分重叠在一起),现在有一些位置写着一些数字,表示它原来的序号,问每一个矩阵原来的序号 原题: 题目描述 陈教授是一个国际知名的教授,很多单位都争先恐后邀请他演 ...

  2. 【DP】K星人的语言(2020特长生 T3)

    题目大意 给你一个字符串和若干单词,问你最少删除多少字符使其成为若干单词连在一起的字符串 解题思路 设fif_ifi​为前i个位置的最小代价 然后枚举每个单词即可 代码 #include<cst ...

  3. 【DP】集合问题(2015特长生 T4/luogu 1466)

    正题 luogu 1466 题目大意 给你1~n的一个集合,问你有多少种方案把该集合分成两个集合,且两集合的数字之和相等 解题思路 设fi,jf_{i,j}fi,j​为放好i个数且集合1的和比集合2的 ...

  4. 【dfs】【hash】有趣的英语角(2015特长生 T2/luogu 1019)

    正题 luogu 1019 题目大意 给你若干个词语,让你把他们连起来(重复段叠在一起),每个词语最多用两次,问你该串最长是多少 解题思路 dfs枚举一个单词后面接哪个单词,然后枚举重叠长度,再用ha ...

  5. 【DP】建学校问题(luogu 2803/2018 特长生 T3)

    正题 luogu 2803 题目大意 给出n个点,和相邻的点的距离,每个点有一个权值,现在让你建k个特殊点,使所有点到其中一个特殊点的代价之和最小 解题思路 先预处理处一个区间到同一个特殊点的最小代价 ...

  6. 哈佛最年轻华人正教授尹希:中国教育问题在埋没太多天赋,少年班给了更多选择来弥补教育短板(公号回复“哈佛尹希”下载PDF资料)

    哈佛最年轻华人正教授尹希:中国教育问题在埋没太多天赋,少年班给了更多选择来弥补教育短板(公号回复"哈佛尹希"下载PDF资料) 秦汇编 知识简化 今天 科学Sciences导读:尹希 ...

  7. 清华姚班校友陈丹琦斩获2022斯隆奖!「诺奖风向标」27位华人学者入选

      视学算法报道   编辑:桃子 拉燕 [新智元导读]刚刚,有「诺奖风向标」之称的斯隆研究奖公布了最新获奖名单.今年,共有118名学者当选.值得一提的是,清华姚班毕业的华人科学家陈丹琦位列其中. 刚刚 ...

  8. 清华姚校友陈丹琦斩获2022斯隆奖!博士论文是近十年最热之一!共计27位华人入选...

    来源:新智元 有「诺奖风向标」之称的斯隆研究奖公布了最新获奖名单. 今年,共有118名学者获斯隆研究奖,华人学者占27席.他们将获得75000美元,这笔款项可在两年的时间内用于支持其研究的任何费用. ...

  9. 德扑 AI 之父解答 Libratus 的13个疑问:没有用到任何深度学习,DL 远非 AI 的全部

    来源: AI科技评论 概要:卡耐基梅隆大学计算机系在读博士生 Noam Brown 和计算机系教授 Tuomas Sandholm 来到 reddit 的机器学习分版,和网友们一起来了一场「你问我答」 ...

最新文章

  1. 如何配置FastReport.Net环境
  2. Go 语言基础(一)
  3. 手把手教你用1行代码实现人脸识别 -- Python Face_recognition
  4. a letter and a number(一封信和一个数字)
  5. P3966 [TJOI2013]单词
  6. 日本共享自行车建立的强大地下停车系统
  7. Android 应用开发(34)---反编译APK获取代码资源
  8. CCF201812-1 小明上学(100分)【序列处理】
  9. JAVA环境变量安装
  10. 一步一步安装 Windows Server 2008 Beta3(Code Name Longhorn)
  11. 彻底卸载VS2015
  12. vue点击按钮跳转路由
  13. Python爬虫—爬取京东商品信息(自动登录,换关键词,换页)
  14. win7与internet时间同步出错_电脑时间同步出错,教您电脑时间同步出错怎么办
  15. Ant批量打包工具的使用
  16. ubuntu 配置本地源
  17. 教您一招解决Word不能复制粘贴问题
  18. python列表是什么数据结构_Python之数据结构:列表
  19. “Go 仅是 Google 的编程语言,而不是程序员的!”
  20. opencv扩展包contrib算法简介

热门文章

  1. 计算机网络实验arp协议分析,计算机网络ARP地址协议解析实验报告
  2. 2019山科计算机专业分数线,2019山东科技大学研究生分数线汇总(含2016-2019历年复试)...
  3. [Java基础]自动装箱和拆箱
  4. [Java基础]Arrays的常用方法
  5. LeetCode 563二叉树的坡度-简单
  6. hdu1276 士兵队列训练问题-list容器
  7. Zookeeper实践与应用- Canal
  8. 新方法-根据上排给出十个数,在其下排填出对应的十个数
  9. Codeforces Round #715 (Div. 2) D. Binary Literature 构造
  10. 免费馅饼 HDU - 1176