Bubble Cup 8 finals D. Tablecity (575D)
题意:
(无输入,纯输出题)
一个城市用1000列2行的格子表示,一个小偷藏在城市的某一处。
在每一小时的开始,
在(X, Y)位置的小偷可以移动到
(X - 1, Y), (X + 1, Y),(X - 1, Y - 1), (X - 1, Y + 1), (X + 1, Y - 1), (X + 1, Y + 1)中的任意一个位置。
在每一小时中,警察可以控制搜索两个格子,如果小偷藏在这个格子就会被发现。
请输出一种方案,
使得在2015小时内,对于小偷的初始位置和移动方法的所有可能情况都能保证抓到小偷。
题解:
绝对是签到题…几行代码就没了。
观察小偷的移动方法,发现不能垂直移动。
也就是说,每次移动时X坐标一定会变动1,Y坐标可能变也可能不变。
通过这个很容易发现,如果警察搜索的两个区域的X坐标不同,也就是说两个区域的上或下都有躲避处时,
如果小偷将被发现,那么小偷经过另一种移动序列使其中某一次Y坐标的是否变化反转时,
(这样会让这个时刻小偷的Y坐标变化)
小偷就不会被发现了。所以可以确定搜索的一定是同一列的两个格子。
所以问题转化为一维,于是可以奇偶分析。
考虑从左到右扫一次的方法,只有一种情况会让小偷躲过,
就是警察搜索x,小偷在x+1,下一小时小偷跑到x,警察搜索x+1…
这种情况如果发生,则每一小时内警察和小偷的位置的奇偶性不同。
也就是说第1小时小偷的位置是偶数。
那么我们可以做两次这个过程,要使得两次中某一次的第一小时中小偷在奇数位置。
显然只需要第一次过程进行奇数次搜索就好了,因为题目要求是2015,所以多一次少一次都可以。
(少一次可以是因为1000是偶数,小偷在奇数位置的情况肯定不会发生在1000这个位置)
(因为题目太水就不放代码了……)
Bubble Cup 8 finals D. Tablecity (575D)的更多相关文章
- 构造 Bubble Cup 8 - Finals D. Tablecity
题目传送门 题意:在1000*2的格子里,在每个小时能派出两个警察在两个地点搜查小偷,求在2015小时内能抓住小偷的方案. 分析:首先每次扫过一列即i1 i2从左往右扫,这样会漏掉小偷正好从间隙穿过的 ...
- Bubble Cup 12 - Finals Online Mirror, unrated, Div. 1
Bubble Cup 12 - Finals Online Mirror, unrated, Div. 1 C. Jumping Transformers 我会状压 DP! 用 \(dp[x][y][ ...
- Bubble Cup 11 - Finals [Online Mirror, Div. 1]题解 【待补】
Bubble Cup 11 - Finals [Online Mirror, Div. 1] 一场很好玩的题啊! I. Palindrome Pairs 枚举哪种字符出现奇数次. G. AI robo ...
- Codeforces Bubble Cup 8 - Finals [Online Mirror] D. Tablecity 数学题
D. Tablecity Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/575/problem/D ...
- Bubble Cup 8 finals I. Robots protection (575I)
题意: 有一个正方形区域, 要求支持两个操作: 1.放置三角形,给定放置方向(有4个方向,直角边与坐标轴平行),直角顶点坐标,边长 2.查询一个点被覆盖了多少次 1<=正方形区域边长n<= ...
- Bubble Cup 8 finals H. Bots (575H)
题意: 简单来说就是生成一棵树,要求根到每个叶子节点上的路径颜色排列不同, 且每条根到叶子的路径恰有n条蓝边和n条红边. 求生成的树的节点个数. 1<=n<=10^6 题解: 简单计数. ...
- Bubble Cup 8 finals G. Run for beer (575G)
题意: 给定一个带权无向图,每条边的代价为边权/当前速度,每次到达一个新节点,速度都会除以10. 求0号点到n-1号点的最小代价,如果多解输出点数最少的解,输出代价.路径点数.路径经过的点. 1< ...
- Bubble Cup 8 finals F. Bulbo (575F)
题意: 给定初始位置,查询n次区间,每次查询前可以花费移动距离的代价来移动, 查询时需要花费当前位置到区间内最近的点的距离,求最小代价. 1<=n<=5000,1<=所有位置< ...
- Bubble Cup 8 finals E. Spectator Riots (575E)
题意: 一个长宽是100000单位的球场上有很多暴动的观众,每个观众都有一个速度v, 在一秒内,观众会等概率地移动到与原位置的曼哈顿距离<=v的地方(不会移动到界外). 你需要选取三个位置,这三 ...
随机推荐
- AngularJS 系列 02 - 模块
引导目录: AngularJS 系列 学习笔记 目录篇 前言: 其实,在上篇文章介绍数据绑定的时候,我们的HelloWorld的代码案例中就已经使用了模块(module).哈哈. 本篇就着重介绍一下a ...
- rsync同步
本地同步: rsync -avz /boot /test C/S架构: 远程同步:rsync+ssh 远程浏览器目录文件:rsync 用户@192.168.0.250:/boot 下行:rsync ...
- mdadm设定RAID磁盘阵列,且当分区故障后如何重建
首先,fdisk建立不同分区,且设为fd格式 其次, mdadm -C md0 -a yes -l -n /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sd ...
- nginx整理
一.为什么选择Nginx搭建Web服务器 Apache和Nginx是目前使用最火的两种Web服务器,Apache出现比Nginx早.Apache HTTP Server(简称Apache)是世界使用排 ...
- Linux 信号(二)—— signal 函数
弗洛伊德认为:要解决这些苦恼,当事人就要通过回忆并理解自己早期的童年经历,来获得对潜意识冲突的顿悟.弗洛伊德的疗法被称为“精神分析” (psychoanalysis),在 20 世纪的很长一段时间被心 ...
- Maven build lifecycle
Clean Lifecycle 运行mvn clean执行clean生命周期,包含三个生命周期阶段: pre-clean clean post-clean clean:clean会删除一次构建后的输出 ...
- 为什么 C++ 中成员函数指针是 16 字节?
当我们讨论指针时,通常假设它是一种可以用 void * 指针来表示的东西,在 x86_64 平台下是 8 个字节大小.例如,下面是来自 维基百科中关于 x86_64 的文章 的摘录: Pushes a ...
- [笔记]ng2的webpack配置
欢迎吐槽 前言 angular.cn教程中用的是systemjs加载器,那用webpack应该怎么配置呢?本文 demo: https://github.com/LeventZheng/angular ...
- C# 动态修改Config
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); confi ...
- swfit-学习笔记(数组的使用)
Swift数组的使用,参考:<The Swift Programming Language>中文版 // Copyright (c) 2015年 Zsmile. All rights re ...