Not Sitting

题面翻译

Rahul 和 Tina 在玩一个游戏。游戏在一个 n×mn\times mn×m 的网格图上进行,记第 rrr 行第 ccc 列上的格子为 (r,c)(r,c)(r,c)。定义 (a,b)(a,b)(a,b) 与 (c,d)(c,d)(c,d) 之间的距离为 ∣a−c∣+∣b−d∣\left|a-c\right|+\left|b-d\right|∣a−c∣+∣b−d∣。

游戏开始后,Tina 会选择恰好 kkk 个格子,并将其涂成粉红色。涂完以后,Rahul 会选择任意一个没有被涂成粉红色的格子并在那个格子上坐下。此后,Tina 也会选择任意一个格子(包括被涂成粉红色和没有被涂成粉红色的格子)并在那个格子上坐下。Rahul 希望他和 Tina 之间的距离尽可能近,而 Tina 希望她和 Rahul 之间的距离尽可能远。于是,对于所有的 k∈[0,n×m−1]∩N∗k\in[0,n\times m-1]\cap\mathbb N ^*k∈[0,n×m−1]∩N∗,Rahul 都想知道他和 Tina 之间的距离是多少。

数据范围:

  • ttt 组数据,1⩽t⩽5×1041\leqslant t\leqslant 5\times 10^41⩽t⩽5×104。
  • 2⩽n×m,∑(n×m)⩽1052\leqslant n\times m,\sum(n\times m)\leqslant 10^52⩽n×m,∑(n×m)⩽105。

样例 #1

样例输入 #1

2
4 3
1 2

样例输出 #1

3 3 4 4 4 4 4 4 5 5 5 5
1 1

主要思路:模拟+贪心

Rahul 先选择位置,假设刚开始所有位置都未被涂色,那么 Rahul 一定会选择最靠近中间的某个位置;而 Tina 一定会选择四个墙角中离 Rahul 最远的一个位置。

对于每一个被涂色的格子,总是被涂色前 Rahul 的最佳选择,因为他们的选择都是明智的,也就是说我们可以将被涂色的格子作为 Rahul 的位置。

因为每个格子都会被涂色,所以每个格子都会作为 Rahul 的座位。

这样,问题就简化为了:求出每个位置距离四个角落的距离的最大值,然后将他们放到一个数组中,从小到大排序输出即可。

附源码:

#include<bits/stdc++.h>
using namespace std;
const int N = 100010;
int res[N];
int n, m, cnt;
int main(){
int T;
cin>>T;
while(T--){
cnt=0;//多组不清空,提交两行泪
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){//教室是二维的,要双重循环
res[cnt++]=max(max(abs(1-i)+abs(1-j),abs(n-i)+abs(1-j)),max(abs(1-i)+abs(m-j),abs(n-i)+abs(m-j)));//求每个位置距离四个角落的距离的最大值
}
}
sort(res,res+cnt);//排序
for(int i=0;i<cnt;i++){
cout<<res[i]<<' ';//输出
}
cout<<endl;//多组数据换行
}
return 0;
}

CF1627B题解的更多相关文章

  1. 2016 华南师大ACM校赛 SCNUCPC 非官方题解

    我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...

  2. noip2016十连测题解

    以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...

  3. BZOJ-2561-最小生成树 题解(最小割)

    2561: 最小生成树(题解) Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1628  Solved: 786 传送门:http://www.lyd ...

  4. Codeforces Round #353 (Div. 2) ABCDE 题解 python

    Problems     # Name     A Infinite Sequence standard input/output 1 s, 256 MB    x3509 B Restoring P ...

  5. 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解

    题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...

  6. 2016ACM青岛区域赛题解

    A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Jav ...

  7. poj1399 hoj1037 Direct Visibility 题解 (宽搜)

    http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...

  8. 网络流n题 题解

    学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...

  9. CF100965C题解..

    求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...

  10. JSOI2016R3 瞎BB题解

    题意请看absi大爷的blog http://absi2011.is-programmer.com/posts/200920.html http://absi2011.is-programmer.co ...

随机推荐

  1. 干掉visio,这个画图神器真的绝了!!!

    前言 看过我以往文章的小伙伴可能会发现,我的大部分文章都有很多配图.我的文章风格是图文相结合,更便于大家理解. 最近有很多小伙伴发私信问我:文章中的图是用什么工具画的.他们觉得我画的图风格挺小清新的, ...

  2. Elasticsearch性能优化干货

    1.集群规划优化实践 1.1 基于目标数据量规划集群 在业务初期,经常被问到的问题,要几个节点的集群,内存.CPU要多大,要不要SSD? 最主要的考虑点是:你的目标存储数据量是多大?可以针对目标数据量 ...

  3. Dummynet简单部署

    本文分享自天翼云开发者社区<Dummynet简单部署>,作者:凸凹 部署流程 ^准备内核版本 ^参看系统内核版本 uname -r 我们需要将ipfw编译成内核模块,请确保ipfw用到的内 ...

  4. 使用必读-使用Iceberg数据湖需要注意的点

    一.开发注意事项 1.Iceberg选择合适的表版本 简述:Iceberg目前有两个表版本(V1和V2),根据数据选择合适的表版本. V1表只支持增量数据插入,适合做纯增量写入场景,如埋点数据. V2 ...

  5. JVM堆内存分析,分析工具jmap heap

    一.查看堆信息 jmap -heap 33146 Debugger attached successfully. Server compiler detected. JVM version is 25 ...

  6. flutter-全局控制键盘收回和单独控制键盘收回

    局部控制键盘收回 import 'package:flutter/material.dart'; import 'package:TLDF/main.dart'; class KeyboardBack ...

  7. 本地一键运行大模型神器Ollama + DeepSeek R1尝鲜指南

    本地一键运行大模型神器Ollama + DeepSeek R1尝鲜指南 作为AI领域的弄潮儿,你是否苦恼于云端大模型API的高昂成本?想在本机零门槛体验顶尖开源模型?这篇保姆级教程将带你解锁「Olla ...

  8. [BZOJ4671] 异或图 题解

    我能说什么!抽象了这! 看到 \(n\le 10\) 的黑题顿感大事不妙. 我们考虑设 \(f(i)\) 表示将 \(n\) 个点划分为至少 \(i\) 个连通块时的方案数.我们可以暴力枚举每个点在哪 ...

  9. 当ABB机器人外部轴驱动器过流维修

    一.过流故障原因分析 电机负载异常 当ABB机器人外部轴驱动器所承受的负载超过其额定值时,电机需要产生更大的转矩以维持运行,从而导致电流增大.例如,在一些自动化生产线上,如果外部轴需要搬运的物品重量突 ...

  10. 批量删除MySQL生产环境数据库表或表字段注释脚本

    本文提供了一种批量删除MySQL生产环境中数据库表的注释或表字段注释的方法,通过脚本实现高效维护表结构的清晰性. 一.表注释修改 1.获取删除MySQL数据库表注释脚本select concat('A ...