告诉你一天n件事情

a[i]为1是休息 a[i]为2是工作

求最长连续的休息时间(即最长的1

可以作为环状来求。(即环状最长的1

这题就可以用前缀和贪心等什么操作。。

然后用\(ans1ans2\)瞎搞

#include <bits/stdc++.h>
using namespace std;
typedef long long LL ;
inline LL In() { LL res(0),f(1); register char c ;
while(isspace(c=getchar())) ; c == '-'? f = -1 , c = getchar() : f = 1 ;
while(res = (res << 1) + (res << 3) + (c & 15) , isdigit(c=getchar())) ; return res * f ;
}
int n ;
int a[200000+5] ;
int cnt[200000+5] ;
int flag = 1 ;
int ans = 0 ;
int ans1 = 0 ;
int ans2 = 0 ;
signed main() {
n = In() ;
for(register int i=1;i<=n;i++) a[i] = In() ;//读入
for(register int i=1;i<=n;i++)
if(a[i]==1) cnt[i]=cnt[i-1]+1,ans1=max(ans1,cnt[i]);//求前缀和 即当前最长的1 ans1储存最大值
else {
if(flag) ans2+=(i-1),flag=0;//储存最前面的一段1
cnt[i]=0;
}
if(cnt[n]) ans = cnt[n] + ans2;//如果第n个位置有连在一起的。
//则数字为 cnt[n]+ans2
cout << max(ans,ans1) << endl ;//ans求的是序列中最大值。 ans是首尾环状。 要求的是最长的则取max
return 0 ;
}

随机推荐

  1. java中通用权限管理设计(转)

    原文地址:http://www.cnblogs.com/a7345678/archive/2008/09/25/1298838.html 转自博客园暗夜精灵-鬼才阁 实现业务系统中的用户权限管理 B/ ...

  2. Python supprocess模块

    当我们需要调用系统的命令的时候,最先考虑的os模块.用os.system()和os.popen()来进行操作.但是这两个命令过于简单,不能完成一些复杂的操作,如给运行的命令提供输入或者读取命令的输出, ...

  3. Java控制台读写

    Java控制台读写 控制台读 Java中进行控制台读操作主要是通过Scanner,BufferReader,Console类进行 1. Scanner Scanner对象定义 在控制台 Scanner ...

  4. 从“菜鸟”码农到“资深”架构师,我到底经历了什么?--------http://baijiahao.baidu.com/s?id=1585813883835208757&wfr=spider&for=pc

    http://baijiahao.baidu.com/s?id=1585813883835208757&wfr=spider&for=pc

  5. java 日历计算农历和节假日的工具类

    背景 业务需求需要后端提供这样的接口,网上找了很多java代码例子,虽然功能实现了 但是不完善,特别是节日那一块儿.然后百度发现有这样的插件,但是信息也是java后端提供的非js 然后在开源js插件找 ...

  6. fetch api & response header

    how to get fetch response header in js https://stackoverflow.com/questions/43344819/reading-response ...

  7. WEB开发----springboot的登录拦截机制

    如果是一个后台的管理项目的,有些东西是不能直接就可以访问的,必须要登录才可以进去,所以就需要进行登录拦截,只有登录过的用户才可以正常访问. 登录拦截是不会拦截jsp页面的方法,所以我们需要在Contr ...

  8. HDU5266 LCA 树链剖分LCA 线段树

    HDU5266 LCA Description 给一棵 n 个点的树,Q 个询问 [L,R] : 求点 L , 点 L+1 , 点 L+2 -- 点 R 的 LCA. Input 多组数据. The ...

  9. [Vue] Setup custom keyCode

    Vue provide some shortcut methods: @mousemove.stop is comparable to e.stopPropogation() @mousemove.p ...

  10. 菜鸟nginx源代码剖析 框架篇(一) 从main函数看nginx启动流程

    菜鸟nginx源代码剖析 框架篇(一) 从main函数看nginx启动流程 Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.c ...