Codeforces 140B(模拟)
要点
- 题意读好久。大概这样理解:每个时间点按顺序收到序号1~n的卡片,只有收过的卡片才能发给别人并且主人公会发在他心中优先级最高的。由于主人公可以在任何时间给朋友发卡片,最后输出(说得很绕但等价于)1~n号朋友最好可以得到什么类型的卡片。
- 枚举时间点并看当前主角的最大优先级卡片是什么并给大家发,然后更新大家的接收类型。样例很良心,会发现只记录最大优先级的不够用,一旦等于这个人的编号就不允许发,这是该用第二优先级的来更新该人。
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int n;
int cmp[305][305], ans[305];
int main() {
scanf("%d", &n);
for (int i = 1; i <= n + 1; i++) {
for (int j = 1, x; j <= n; j++) {
scanf("%d", &x);
cmp[i][x] = j;
}
}
int fir = 0, sec = 0;
memset(ans, 0x3f, sizeof ans);
for (int i = 1; i <= n; i++) {
if (!fir || cmp[n + 1][fir] > cmp[n + 1][i]) sec = fir, fir = i;
else if (!sec || cmp[n + 1][sec] > cmp[n + 1][i]) sec = i;
for (int j = 1; j <= n; j++) {
if (fir && fir != j) {
if (ans[j] > 500 || cmp[j][ans[j]] > cmp[j][fir]) {
ans[j] = fir;
}
} else if (sec && sec != j) {
if (ans[j] > 500 || cmp[j][ans[j]] > cmp[j][sec]) {
ans[j] = sec;
}
}
}
}
for (int i = 1; i <= n; i++)
printf("%d%c", ans[i], " \n"[i == n]);
}
Codeforces 140B(模拟)的更多相关文章
- CodeForces - 427B (模拟题)
Prison Transfer Time Limit: 1000MS Memory Limit: 262144KB 64bit IO Format: %I64d & %I64u Sub ...
- CodeForces - 404B(模拟题)
Marathon Time Limit: 1000MS Memory Limit: 262144KB 64bit IO Format: %I64d & %I64u Submit Sta ...
- Codeforces 709B 模拟
B. Checkpoints time limit per test:1 second memory limit per test:256 megabytes input:standard input ...
- codeforces 140B.New Year Cards 解题报告
题目链接:http://codeforces.com/problemset/problem/140/B 题目意思:给出 Alexander 和他的 n 个朋友的 preference lists:数字 ...
- CodeForces - 404A(模拟题)
Valera and X Time Limit: 1000MS Memory Limit: 262144KB 64bit IO Format: %I64d & %I64u Submit ...
- Codeforces 390A( 模拟题)
Inna and Alarm Clock Time Limit: 1000MS Memory Limit: 262144KB 64bit IO Format: %I64d & %I64 ...
- Codeforces 452D [模拟][贪心]
题意: 给你k件衣服处理,告诉你洗衣机烘干机折叠机的数量,和它们处理一件衣服的时间,要求一件衣服在洗完之后必须立刻烘干,烘干之后必须立刻折叠,问所需的最小时间. 思路: 1.按照时间模拟 2.若洗完的 ...
- CodeForces - 796B 模拟
思路:模拟移动即可,如果球落入洞中停止移动.注意:有可能第一个位置就是洞!! AC代码 #include <cstdio> #include <cmath> #include ...
- CodeForces - 864C-Bus-(模拟加油站问题)
https://vjudge.net/problem/CodeForces-864C 题意:两地之间有个加油站,往返走k个单程,最少加油多少次. 大佬几十行代码就解决,我却要用一百多行的if语句模拟解 ...
随机推荐
- UTCformat 转换UTC时间并格式化成本地时间
/** * UTCformat 转换UTC时间并格式化成本地时间 * @param {string} utc */ UTCformat (utc) { var date = new Date(utc) ...
- [CTSC 2012] Cheat
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=2806 [算法] 首先建立广义后缀自动机 注意到问题具有单调性 , 不妨对于每组询问二 ...
- Python实例浅谈之五Python守护进程和脚本单例运行
一.简介 守护进程最重要的特性是后台运行:它必须与其运行前的环境隔离开来,这些环境包括未关闭的文件描述符.控制终端.会话和进程组.工作目录以及文件创建掩码等:它可以在系统启动时从启动脚本/etc/rc ...
- lwip【5】 lwIP配置文件opt.h和lwipopts.h初步分析之二
如何去配置lwip,使它去适合不同大小的脚,这就是本贴的主题lwIP的配置问题.尤其是内存的配置,配置多了浪费,配置少了跑不了或者不稳定(会出现的一大堆莫名奇妙的问题,什么打开网页的速度很慢啊?什么丢 ...
- php中替换中文引号不成功的原因
中文引号替换成英文引号,突然发现总是不成功. 后来查找资料得知,需要写成这种风格的. 正确代码如下: 中文单引号: str_replace('‘',''',$str);str_replace('’ ...
- 序列联配(alignment)和数据库搜索方法简介
根据一个打分系统,怎么样排对起来打分能够最大.就认为历史上应该是这样子的. 数据同源搜索软件Fasta和Blast 是目前功能最全,使用最广的同源性数据库搜索软件包.他们在Needleman的动态算法 ...
- 一个基于Tp3.2(thinkphp3.2)的工会管理系统
该系统包括11个模块. 会员管理模块 奖惩管理模块 运动会管理模块 新闻管理模块 文档管理模块 经费管理模块 电子提案管理模块 用户管理模块 权限管理模块 系统管理模块 系统的登录 系统主页 这里只是 ...
- Django 之 requirement.txt 依赖文件生成
通过依赖文件,别人在使用我们的项目时,不需要再一个个去安装所需模块,只需安装依赖文件即可. 1. 导出整个虚拟环境依赖 # 在项目根目录中,打开终端执行以下命令 # 生成 requirements.t ...
- 无法加载MainifestResourceTransformer
Cannot load implementation hint 'org.apache.maven.plugins.shade.resource.MainifestResourceTransforme ...
- C++11 assert/static_assert
assert assert 是运行期断言,它用来发现运行期间的错误,不能提前到编译期发现错误,也不具有强制性,也谈不上改善编译信息的可读性,既然是运行期检查,对性能当然是有影响的,所以经常在发行版本中 ...