Codeforces Round #521 (Div. 3) B - Disturbed People (贪心)
题目链接:http://codeforces.com/contest/1077/problem/B
题意:给你一长度为n的01序列。0表示当前位置的房子灯是灭的,1表示当前房子的位置灯是亮的。判断某个位置的房子是否被打扰的条件为。a【i】 = 0,a【i+1】 = a【i - 1】 = 1. (2 <= i <= n)。求最少关掉几盏灯没有人被打扰。
题解:每当我们遇到 1 0 1情况的时候,我们一定是需要关掉 前面或者后面的一盏灯。我们选择关掉后面的灯。因为如果关掉前面的灯,会有1 0 1 0 1 这种情况。你需要关两次,实际上关掉中间的就可以了。
所以贪心策略为每次碰到101就把它变成100.
代码如下:
#include<bits/stdc++.h>
using namespace std;const int maxn = 1e3;
int a[maxn];int main(){int n ;scanf("%d",&n);for(int i = 1 ; i <= n ; i ++){scanf("%d",&a[i]);}int ans = 0;for(int i = 2 ; i <= n - 1 ; i ++ ){if(a[i] == 0 && a[i - 1] == 1 && a[i + 1] == 1)a[i+1] = 0,ans++;}cout << ans << endl;
}
Codeforces Round #521 (Div. 3) B - Disturbed People (贪心)相关推荐
- CodeForces Round #521 (Div.3) B. Disturbed People
http://codeforces.com/contest/1077/problem/B There is a house with nn flats situated on the main str ...
- Codeforces Round #521 (Div. 3) B. Disturbed People
There is a house with nn flats situated on the main street of Berlatov. Vova is watching this house ...
- Codeforces Round #521 (Div. 3) B. Disturbed People 思维
题解 题目大意 n个灯0关灯1开灯 101则中间的睡不着 问最少关掉多少个灯可以全都能睡着 遇见101则将后面的1的灯泡关掉 这样解决10101的问题 计数输出即可 AC代码 #include < ...
- Codeforces Round #433(Div. 2) D. Jury Meeting(贪心)
题目链接:Codeforces Round #433(Div. 2) D. Jury Meeting 题意: 有n个城市,每个城市有一个人,现在要让这些人来0号城市在一起k天,然后回去. 现在有m个日 ...
- Codeforces Round #656 (Div. 3) F. Removing Leaves 贪心 + 模拟
传送门 文章目录 题意: 思路: 题意: 思路: 首先有一个贪心策略就是每次都找一个叶子节点最多的点,让后删掉他的kkk个叶子节点,现在我们就来考虑如何模拟这个过程. 我们整一个vector<s ...
- B. Disturbed People(模拟) Codeforces Round #521 (Div. 3)
原题链接: https://codeforces.com/contest/1077/problem/B 样例: Examples Input 10 1 1 0 1 1 0 1 0 1 0 Output ...
- Codeforces Round #521 (Div. 3)
题目链接:http://codeforces.com/contest/1077 A.Frog Jumping 解题思路:作差再判断最后是否还要向右跳一次即可. AC代码: 1 #include< ...
- Codeforces Round #521 (Div.3)题解
A过水,不讲 题解 CF1077B [Disturbed People] 这题就是个显而易见的贪心可是我考场上差点没想出来 显然把一户被打扰的人家的右边人家的灯关掉肯定比把左边的灯关掉 从左到右扫一遍 ...
- Codeforces Round #521 (Div. 3): F. Pictures with Kittens(DP+单调队列)
题意: 你有n幅画,第i幅画的好看程度为ai,再给你两个数字k,x,表示你要从中选出刚好x幅画,并且相邻两幅画的距离不能≥k,好看程度之和最大能多少,选不出来输出-1,F1数据范围<200,F2 ...
最新文章
- Serverless:微服务架构的终极模式(文末赠书)
- DevExpress控件之GridControl、GridView
- js面向对象和继承的碎碎念
- Px4源码框架结构图
- QML的import目录爬坑记录
- 利用win7的applocker功能来有组织的阻止相关软件运行
- Dom4j完整教程~DOM4J简介
- 马云电脑水平曝光;快狗打车回应裁员50% ;华为邀请开发者加入应用商店 | 极客头条...
- mybatis_SQL映射(2)
- Ubuntu18.04安装配置Qt5.15
- MVCC(Multiversion concurrency control)
- CMS内容管理系统可行性分析
- 转载:日本动漫编年史
- 手机同步专家--基于SyncML协议同步通讯录的应用软件
- e1载波的数据速率是_基于宽带电力线载波通信的路由技术研究
- matlab图像频谱分析代码_信号频域分析方法的理解(频谱、能量谱、功率谱、倒频谱、小波分析)...
- 细说 MySQL登录
- 企业研发人员配备比例_高新技术企业对研发技术人员占企业总职工人数的比例为多少?...
- ExtJS各个版本官方API文档
- 汇编语言里 eax ebx ecx edx esi edi ebp esp这些都是什么意思啊