leetcode_1052. Grumpy Bookstore Owner
1052. Grumpy Bookstore Owner
https://leetcode.com/problems/grumpy-bookstore-owner/
题意:每个时刻i会有customer[i]个顾客进店,在i时刻店主的情绪是grumpy[i],若grumpy[i]==1则店主脾气暴躁,那么顾客会不满意,否则顾客讲感到满意,店主会一个技巧保证连续X时间内不暴躁,但他只能使用一次。问最多可以有多少顾客满意。
解法:找到一个连续X时间段,使用技巧后,得到的收益最大。计算前缀和,然后依次遍历所有连续X时间段,找到使用技巧能使最多的顾客从不满意变为满意。
class Solution
{
public:
int maxSatisfied(vector<int>& customers, vector<int>& grumpy, int X)
{
vector<int> presum(grumpy.size());
if(grumpy[]==)
presum[]=customers[];
for(int i=;i<grumpy.size();i++)
{
presum[i]=grumpy[i]==?(presum[i-]+customers[i]):presum[i-];
}
int max_sum=presum[X-],last_pos=X-;
for(int i=X;i<grumpy.size();i++)
{
int st_pos = i-X+;
if(max_sum<presum[i]-presum[st_pos-])
{
max_sum=presum[i]-presum[st_pos-];
last_pos=i;
}
}
int res=;
for(int i=;i<grumpy.size();i++)
{
if(grumpy[i]==)
res+=customers[i];
else if(i>=last_pos-X+&&i<=last_pos)
res+=customers[i];
}
return res;
}
};
leetcode_1052. Grumpy Bookstore Owner的更多相关文章
- 【leetcode】1052. Grumpy Bookstore Owner
题目如下: Today, the bookstore owner has a store open for customers.length minutes. Every minute, some ...
- Weekly Contest 138
1051. Height Checker Students are asked to stand in non-decreasing order of heights for an annual ph ...
- 100-days: twenty-eight
Title: Lawrence Ferlinghetti's(劳伦斯·费林盖蒂) enduring San Francisco(旧金山) 劳伦斯·费林盖蒂心中的旧金山,历久弥新 费林盖蒂:美国垮掉的一 ...
- owner:轻松管理java项目配置
前段时间,一同事说在 github 上“活捉了”一个很有趣的开源项目,它是一个超轻量级的 jar 包,能够帮助你在 java 项目中摒弃样板式的 properties 配置代码,让你轻松自如地管理和使 ...
- IOS 杂笔-14(被人遗忘的owner)
*owner在开发中现在已经很少用了 有兴趣的童鞋可以看看* 我们遇到owner通常是在类似 [[[NSBundle mainBundle] loadNibNamed:@"Food" ...
- 【转】WPF: 自动设置Owner的ShowDialog 适用于MVVM
原文地址:http://www.mgenware.com/blog/?p=339 WPF中的Windows的ShowDialog方法并没有提供设置Owner的参数,开发者需要在ShowDialog前设 ...
- Linked Server: EXECUTE permission denied on object 'xp_prop_oledb_provider', database 'master', owner 'dbo'
问题出现环境: 使用SQL Server Management Studio 2008 连接到SQL Server 2000的数据库,点击其中一个Oracle链接服务器,单击"目录" ...
- Unable to determine if the owner (Domain\UserName) of job JOB_NAME has server access
早上巡检的的时候,发现一数据库的作业报如下错误(作业名等敏感信息已经替换),该作业的OWNER为一个域账号: JOB RUN: 'JOB_NAME' was run on 2016-6-1 at 7: ...
- SQL Server修改数据库对象所有者(Owner)浅析
在SQL Server数据库中如何修改数据库对象(表.视图.存储过程..)的所有者(Owner)呢?一般我们可以使用系统提供的系统存储过程sp_changeobjectowner来修改. 我们先看看s ...
随机推荐
- 20个Flutter实例视频教程-第12节: 流式布局 模拟添加照片效果
视频地址: https://www.bilibili.com/video/av39709290/?p=12 博客地址: https://jspang.com/post/flutterDemo.html ...
- struts2 中的 addActionError 、addFieldError、addActionMessage的方法
addActionError .addFieldError.addActionMessage都是ActionSupport的方法 一.addActionError("错误内容"): ...
- 访问web-inf下jsp资源的几种方式
转自:http://blog.csdn.NET/eidolon8/article/details/7050114 方法一: 本来WEB-INF中的jsp就是无法通过地址栏访问的,所以安全. 如果说你要 ...
- Codeforces698B【并查集+拆环】
好题,好题,第一次写这个神秘的拆环.. 题意: 给你n个数,第i个数代表点i连向点a[i], 将这副图变成树,求最小改变边的数量: 思路: 已知有向树的定义, 除了根节点外每个节点都有且仅有一条边都指 ...
- opencv学习资料
搜集一些基础书 数字图像处理 信号与系统 计算机视觉中的多视图几何 图像处理.分析与机器视觉 基于序列图像的视觉检测理论与方法 官网(各版本api) http://opencv.org/ opencv ...
- 我叫mt2.0更新公告
一.2.0版<PVP的远征>军费发放 简体服<我叫MT>2.0版本<PVP的远征>更新在即!为备战新版本,我们宣布10天后(3月10日)发放军费振奋军心. 简体服3 ...
- IT兄弟连 JavaWeb教程 Servlet会话跟踪 Session技术
Servlet提供了HttpSession接口,该接口提供了一种跨多个页面请求或访问网站时识别用户以及存储有关用户信息的方式. Servlet容器使用这个接口来创建一个HTTP客户端和HTTP服务器之 ...
- 茅台【思维/数学/剪枝】By cellur925
题目传送门 给你\(n\)根木棍,问有多少种方法,使得选出的三根木棍能组成三角形. 开始想要用搜索的,但是写着写着卡壳了(?),于是改用贪心,开始对拍,觉得很稳,只是最后两个数据可能有点卡.很第一题难 ...
- c3p0连接池下载
- C - Heavy Transportation
//改版dijkstra #include <iostream> #include <algorithm> #define Faster ios::sync_with_stdi ...