Description

Zyh养着n盆太阳花,它们被排在一列直线上。为了简化问题,太阳花的朝向只有向左和向右这两种。Zyh非常喜欢这些花,于是他在每盆花的上方放置了光源。
太阳花和Zyh幸福地生活着,然而每次要关掉这些光源的时候就会出现一个问题。因为Zyh的动作问题,他每次只能关掉一个光源,在关掉这个光源后,这个光源下方的花就会休眠。然而,对于每一个未休眠的太阳花,如果它的朝向向左,那么每看到一个在它左边的光源关闭,它就会认为自己的人生有些黑暗,于是对Zyh的好感减1。同样地,如果它的朝向向右,那么每看到一个在它右边的光源关闭,也会导致它对Zyh的好感减1。
Zyh不想看到太阳花对他的好感下降太多。于是他想知道关掉所有灯后,太阳花下降的好感总值是多少。

Input

输入包含两行。第一行是一个数正整数n表示太阳花的盆数。然后第二行是n个由空格隔开的0或1。0表示向左,1表示向右。

Output

只有一个数,太阳花下降的好感总值。

Sample Input

输入1:

5
0 0 0 1 0

输入2:

5
1 0 1 0 1

Sample Output

输出1:

1

输出2:

3

Data Constraint

对于 30% 的数据 n<10n
对于 70% 的数据 n<=5000n
对于 100% 的数据 n<=1000000n

Solution

  • 这题一看数据吓一跳:n<=1000000n

  • 但是仔细推敲,发现一个神奇的结论:

  • 只会先关完同边的灯!!!

  • 因为这样之后就可以零花费处理了!

  • 那么只需要扫一遍,利用前缀和累加一遍即可!

  • 时间复杂度 O(N)O(N) 。

Code

#include<cstdio>
using namespace std;
const int N=1e6+1;
int a[N],f[N];
long long ans;
inline int read()
{int data=0; char ch=0;while(ch<'0' || ch>'9') ch=getchar();while(ch>='0' && ch<='9') data=data*10+ch-'0',ch=getchar();return data;
}
int main()
{int n=read();a[1]=read();for(int i=2;i<=n;i++){a[i]=read();f[i]=f[i-1];if(a[i-1]) f[i]++;}for(int i=n;i;i--)if(!a[i]) ans+=f[i];printf("%lld",ans);return 0;
}

JZOJ 3822. 【NOIP2014模拟9.9】逆光相关推荐

  1. jzoj2702. 探险jzoj3917. 【NOIP2014模拟11.2A组】福慧双修

    Description 探险家小T好高兴!X国要举办一次溶洞探险比赛,获奖者将得到丰厚奖品哦!小T虽然对奖品不感兴趣,但是这个大振名声的机会当然不能错过! 比赛即将开始,工作人员说明了这次比赛的规则: ...

  2. JZOJ 3809. 【NOIP2014模拟8.25】设备塔

    Description 为了封印辉之环,古代塞姆利亚大陆的人民在异空间中建造了一座设备塔. 简单的说,这座设备塔是一个漂浮在异空间中的圆柱体,圆柱体两头的圆是计算核心,而侧面则是 传输信息所用的数据通 ...

  3. JZOJ 3815. 【NOIP2014模拟9.7】克卜勒

    Description 一闪一闪亮晶晶/好像你的身体/藏在众多孤星之中/还是找得到你/挂在天上放光明/反射我的孤寂/提醒我/我也只是一颗寂寞的星星/oh~/浩瀚的世界里/更迭的人海里/和你互相辉映/而 ...

  4. JZOJ 3775. 【NOIP2014模拟8.15】因子的排列

    Description 一天,小B学习了分解质因数的相关内容.他发现,一个数的质因子可以有许多不同的排列方式,例如20=2*2*5=2*5*2=5*2*2,那么小B认为20的质因子有3种不同的排列方式 ...

  5. JZOJ 3899. 【NOIP2014模拟】逻辑的连通性

    Description 假如有命题p 一定能推出命题q,则称p 是q 的充分条件,q 是p 的必要条件. 特别的,当p 既是q 的充分条件,又是q 的必要条件时,称p 和q 互为充要条件 现在有n 个 ...

  6. JZOJ 3731. 【NOIP2014模拟7.10】庐州月

    Description [引子] 桥上的恋人入对出双 桥边红药叹夜太漫长 月也摇晃人也彷徨 乌蓬里传来了一曲离殇 庐州月光洒在心上 月下的你不复当年模样 太多的伤难诉衷肠 叹一句当时只道是寻常 庐州月 ...

  7. JZOJ 3885. 【长郡NOIP2014模拟10.22】搞笑的代码

    Description 在OI界存在着一位传奇选手--QQ,他总是以风格迥异的搞笑代码受世人围观 某次某道题目的输入是一个排列,他使用了以下伪代码来生成数据 while 序列长度< n do { ...

  8. JZOJ 3886. 【长郡NOIP2014模拟10.22】道路维护

    Description 最近徆多人投诉说C国的道路破损程度太大,以至亍无法通行 C国的政府徆重视这件事,但是最近财政有点紧,丌可能将所有的道路都进行维护,所以他们决定按照下述方案进行维护 将C国抽象成 ...

  9. JZOJ 3813. 【NOIP2014模拟9.7】我要的幸福

    Description 幸福/我要的幸福/渐渐清楚/梦想/理想/幻想/狂想/妄想/我只想坚持每一步/该走的方向/就算一路上/偶尔会沮丧/生活是自己/选择的衣裳/幸福/我要的幸福/没有束缚/幸福/我要的 ...

最新文章

  1. 系统启动时,spring配置文件解析失败,报”cvc-elt.1: 找不到元素 'beans' 的声明“异常...
  2. Windows server 2003 DHCP全攻略(二)
  3. python主要运用于-python主要应用领域有哪些?看这一篇就够了
  4. 201612-5 卡牌游戏
  5. 七夕秀恩爱新姿势!这波操作我给十分!
  6. Linux加密框架crypto AES代码相关
  7. php插入一个自增字段,thinkphp-自增或自减一个字段的值
  8. JVM简介(三)——GC
  9. 解读【ICLR2020】多伦多大学:基于策略网络的探索模型规划
  10. Spring中自动装配
  11. c++语言 进行验证码识别,C++ 借助 Tesseract-OCR 识别乐讯新版验证码
  12. adobe flash builder 4 能编php,Adobe Flash builder 4的序列号
  13. 存储过程实例(用存储过程获取单张表的总记录数)
  14. 网站速度这样优化,让你的网站飞起来
  15. WIN10你不能访问此共享文件夹,因为你组织的安全策略
  16. halcon获取图像中心点_Halcon学习之六:获取Image图像中Region区域的特征参数
  17. matlab绘制垂线(x轴或y轴)
  18. 统计学中sp_统计学假设检验中 p 值的含义具体是什么?
  19. 【原创】浅谈在探索数分之路上“数据思维”培养
  20. 国内第一创作平台大佬,教你如何写好一篇技术博客?

热门文章

  1. Python学习笔记:错误和异常
  2. 纯Python模块发布setup脚本编写示例
  3. 链表反转相关的题(C++模板)
  4. 【Python】if else 一行写完
  5. [云炬商业计划书阅读分享] 珠江啤酒公司企业文化调查
  6. MindSpore!这款刚刚开源的深度学习框架我爱了!
  7. C++文件操作:fopen / fread / fwrite
  8. linux-内核启动流程分析
  9. 【CyberSecurityLearning 53】信息收集
  10. idea里自动创建构造函数