51nod1521 一维战舰
原题链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1521
思路:每一次猜测后检查剩下的区域是否可以还可以放下k个战舰,而每一次猜测后剩余的面积是可以算出来的
AC代码:
#include<bits/stdc++.h>
using namespace std;const int MAXN = 2 * 1e5 + 5;
int n, k, a, p, m;
bool flag[MAXN];
int main() {scanf("%d %d %d", &n, &k, &a);scanf("%d", &m);int sum = (n + 1) / (a + 1);for (int i = 1; i <= m; i++) {scanf("%d", &p);flag[p] = true;int left = p - 1, right = p + 1;for (; left >= 1 && !flag[left]; left--);for (; right <= n && !flag[right]; right++);sum -= (right - left) / (a + 1) - (p - left) / (a + 1) - (right - p) / (a + 1);if (sum < k) {printf("%d\n", i);return 0;}}printf("-1\n");return 0;
}
51nod1521 一维战舰相关推荐
- 一维战舰(51Nod-1521)
题目 爱丽丝和鲍博喜欢玩一维战舰的游戏.他们在一行有n个方格的纸上玩这个游戏(也就是1×n的表格). 在游戏开始的时候,爱丽丝放k个战舰在这个表格中,并不把具体位置告诉鲍博.每一只战舰的形状是 1×a ...
- 51 nod 1521 一维战舰 时间复杂度O(n),同 Codeforces 567D. One-Dimensional Battle Ships 有详细注释
题目:51nod: 题目Codeforces: 题目注意到两个战舰不能挨在一起就可以了. // 每一段 struct node{int left; // 段的左端点int right; // 段的右端 ...
- 51 nod 1521 一维战舰 时间复杂度O(n),同 Codeforces 567D. One-Dimensional Battle Ships 有详细注释...
题目:51nod: 题目Codeforces: 题目注意到两个战舰不能挨在一起就可以了. // 每一段 struct node{int left; // 段的左端点int right; // 段的右端 ...
- 常用技巧 —— 桶排
[概述] 桶排的思想是一种比较重要的技巧,在 由于桶排的特殊性,桶排仍需进行模拟装桶的过程,而且有时由于数据范围无法开很大的数组,需要使用 map 与其结合 关于桶排:点击这里 [例题] Romaji ...
- element表格里面放图片_Element ui表格展示图片问题
在MyBook Live上部署svn 一直以来都在用svn管理源代码,美中不足的是由于svn服务器端部署在本地,无法实现在异地迁入迁出程序,因此考虑将svn服务器部署在我的MyBook Live上. ...
- Numpy 生成 Bool型数组、一维转多维数组reshape、多维转一维数组、替换数组元素、提取数组元素、数组交集、差集、过滤数组元素、二维数组反转行、交换数组维度
1. 创建一个 [3,5] 所有元素为 True 的数组 In [162]: b = np.ones((3,5), dtype=bool)In [163]: b Out[163]: array([[ ...
- Numpy 一维、二维数组、size/dtype/shape属性、数组函数arange/linspace/logspace /diag/zeros/ones/random 、多维数组索引和筛选)
参考: https://gitbook.cn/gitchat/column/undefined/topic/5e3bceadec8d9033cf924665 打开 IPython ,创建 Python ...
- 一维卷积filter_从零开始学Pytorch(七)之卷积神经网络
卷积神经网络基础 我们介绍卷积神经网络的卷积层和池化层,并解释填充.步幅.输入通道和输出通道的含义. import torch from torch.autograd import Variable ...
- 正点原子:STM32F103(战舰)、STM32F407(探索者)、STM32F103(MINI)原理图和PCB
目录 1.STM32F103(战舰) 2.STM32F407(探索者) 3.STM32F103(MINI) 为各位嵌入式好朋友分享三个重磅资源,正点原子三件套,可直接打样使用~ 1.STM32F103 ...
- Udacity机器人软件工程师课程笔记(三十二) - 卡尔曼滤波器 - 一维卡尔曼滤波器 - 多维卡尔曼滤波器 - 拓展卡尔曼滤波器(EKF)
卡尔曼滤波器 一.概述 二.一维高斯分布 均值和方差 三.一维卡尔曼滤波器 变量命名约定 卡尔曼滤波循环 1.测量值更新 (1)平均值计算 (2)程序实现 2.位置预测 位置预测公式 3.一维卡尔曼滤 ...
最新文章
- 【Linux】Shell三类变量的作用域——linux shell “永久环境变量”、“临时环境变量”和普通变量之完全解读...
- 编程没基础学python多长时间-零基础学Python的过程有多难?需要多久?
- Win10安装玩Ubuntu19.04后,bios和grub页面都没有Windows启动项,无法进入Windows
- opencv图像处理常用完整示例代码总结
- 记录一次大对象导致的Java堆内存溢出问题
- SAP 电商云 Spartacus UI 支持延迟加载的新功能的入口设计
- ufo帧率测试网站_一加7游戏续航测试 满电开始玩猜猜能玩多久
- java 获取当前函数名
- ant压缩和解压缩工具类
- 明晚直播丨MySQL的查询与优化
- Redis五大数据类型String、Hash、List、Set、ZSet
- 前端实现街道地图_来自法国的注重保护个人隐私的开源地图
- Android 计算地球上两点的距离
- 如何在C#中从同步方法调用异步方法?
- String 和 InputStream 互转方式
- 一份招聘需求的分析 (转载)
- spirng 事物只支持 dml语句 update,insert delete
- 弘辽科技:淘宝改SKU图片会影响权重吗?
- 年末展望:Oracle 对 JDK收费和.NET Core 给我们的机遇
- 交互体验设计优秀的产品