当前位置: 首页 > news >正文

蓝桥杯刷题DAY1:前缀和

所谓刷题,讲究的就是细心 

帕鲁服务器崩坏【算法赛】

“那个帕鲁我已经观察你很久了,我对你是有些失望的,进了这个营地,不是把事情做好就可以的,你需要有体系化思考的能力。”

《幻兽帕鲁》火遍全网,成为了一款现象级游戏。

猫猫作为顶级帕鲁自然是首当其冲搭好了游戏私服,叫上好兄弟开始了愉快私服开荒。

但是这个游戏好玩归好玩,服务器有一堆 bug。比如说众所周知的内存泄漏问题。猫猫很无奈,写了一个脚本去检测服务器的内存占用问题,当超过一定数值就自杀。

但是问题又来了,服务器自杀了之后还要猫猫亲自去手动重启,配置守护进程的诸多方法都不适合。

最终,猫猫决定一分钟监听一次服务器端口是否正常放通。并记录下日志。

具体如下:脚本每隔一分钟监听一次服务端口是否正常,如果服务没有正常运行,则输出 1 并重启服务,否则输出 0。

现在日志形如一段 01 字符串,0 代表正常运行,1 代表端口关闭。在定时任务监听中遇到端口关闭时会自动重启一次服务器。

现在拿到日志之后,猫猫想知道 [l,r) 区间内到底有多少次重启成功。(l 为起点时刻,r 为终点时刻。)

注:重启成功为服务从端口关闭状态转换为端口正常运行状态。如果日志的最后一分钟为 1,那么你可以视作最后一分钟为重启失败。

输入格式

第一行输入一个正整数 n。(1≤n≤2×105)

第二行输入一个长度为 n 的 01 字符串 S。(∣S∣=n,si∈{0,1},1≤i≤n)

第三行输入一个正整数 m。(1≤m≤2×105)

接下来 m 行,每行输入两个正整数 l,r,表示区间 [l,r)。(1≤l<r≤n+1)。

输出数据

输出 m 行,表示对于 m 次查询的结果。

样例输入

5
10110
4
1 2
1 3
2 4
2 5

样例输出

1
1
0
1

说明

对于第 1 分钟,在重启后第 2 分钟变成 0,说明第 1 分钟重启成功。

对于第 3 分钟,在重启后第 4 分钟依旧是 1,说明第 3 分钟重启失败。

对于第 4 分钟,在重启后第 5 分钟变成 0,说明第 4 分钟重启成功。

运行限制

语言最大运行时间最大运行内存
C++1s256M
C1s256M
Java2s256M
Python33s256M
import os
import sys# 请在此输入您的代码if __name__=="__main__":n=int(input())s=input()prefix =[0]*nfor i in range(1,n):if s[i-1]=='1' and s[i]=='0':prefix[i]=prefix[i-1]+1else:prefix[i]=prefix[i-1]m=int(input())for i in range(m):a,b=map(int,input().split())if b==n+1:print(prefix[b-2]-prefix[a-1])else:print(prefix[b-1]-prefix[a-1])

求和

问题描述

给定 n 个整数 a1,a2,⋅⋅⋅,an​ ,求它们两两相乘再相加的和,即:

S=a1⋅a2+a1⋅a3+⋯+a1⋅an+a2⋅a3+⋯+an−2⋅an−1+an−2⋅an+an−1⋅an

输入格式

输入的第一行包含一个整数 n。

第二行包含 n 个整数 a1,a2,⋯,an​。

输出格式

输出一个整数 S,表示所求的和。请使用合适的数据类型进行运算。

样例输入

4
1 3 6 9

样例输出

117

http://www.lryc.cn/news/529869.html

相关文章:

  • 【基于SprintBoot+Mybatis+Mysql】电脑商城项目之用户注册
  • MINIRAG: TOWARDS EXTREMELY SIMPLE RETRIEVAL-AUGMENTED GENERATION论文翻译
  • 微服务入门(go)
  • Baklib揭示内容中台实施最佳实践的策略与实战经验
  • C++11新特性之lambda表达式
  • 洛谷 P10289 [GESP样题 八级] 小杨的旅游 C++ 完整题解
  • 使用 Tauri 2 + Next.js 开发跨平台桌面应用实践:Singbox GUI 实践
  • JWT入门
  • Python - Quantstats量化投资策略绩效统计包 - 详解
  • 智慧园区管理系统推动企业智能运维与资源优化的全新路径分析
  • 【数据结构-字典树】力扣14. 最长公共前缀
  • 《深入浅出HTTPS​​​​​​​​​​​​​​​​​》读书笔记(31):HTTPS和TLS/SSL
  • Go学习:Go语言中if、switch、for语句与其他编程语言中相应语句的格式区别
  • L30.【LeetCode笔记】设计链表
  • java日志框架详解-Log4j2
  • C++中vector追加vector
  • 加一(66)
  • 远程连接-简化登录
  • canvas的基本用法
  • Tailwind CSS - Tailwind CSS 引入(安装、初始化、配置、引入、构建、使用 Tailwind CSS)
  • 鸿蒙开发黑科技“stack叠层”替代customdialog
  • FreeRTOS从入门到精通 第十五章(事件标志组)
  • 智慧园区管理平台实现智能整合提升企业运营模式与管理效率
  • markdown公式特殊字符
  • 【深度分析】微软全球裁员计划不影响印度地区,将继续增加当地就业机会
  • 学习数据结构(5)单向链表的实现
  • 刷题记录 HOT100回溯算法-5:22. 括号生成
  • Keepalived高可用集群企业应用实例二
  • C++计算特定随机操作后序列元素乘积的期望
  • c++字母大小写转换