Binary Differences
https://csacademy.com/contest/archive/task/binary-differences
n个数,只有0和1,求所有子区间价值不相同的有多少中,价值是0的个数-1的个数
解法:0的贡献是1,1的贡献是-1,求出贡献的前缀和为s[i],利用上一个区间[l,r]求出当前区间[sum-r,sum-l],同时更新最大范围
//#pragma comment(linker, "/stack:200000000") //#pragma GCC optimize("Ofast,no-stack-protector") //#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native") //#pragma GCC optimize("unroll-loops") #include<bits/stdc++.h> #define fi first #define se second #define mp make_pair #define pb push_back #define pi acos(-1.0) #define ll long long #define mod 1000000007 #define C 0.5772156649 #define ls l,m,rt<<1 #define rs m+1,r,rt<<1|1 #define pil pair<int,ll> #define pii pair<int,int> #define ull unsigned long long #define base 1000000000000000000 #define fio ios::sync_with_stdio(false);cin.tie(0)using namespace std;const double g=10.0,eps=1e-12; const int N=100000+10,maxn=100000+10,inf=0x3f3f3f3f,INF=0x3f3f3f3f3f3f3f3f;int a[N]; int main() {int n,sum=0;scanf("%d",&n);int l,r,tel,ter;l=r=tel=ter=0;for(int i=1;i<=n;i++){scanf("%d",&a[i]);if(a[i])sum--;else sum++;l=min(l,sum-ter);r=max(r,sum-tel);tel=min(tel,sum);ter=max(ter,sum);}printf("%d\n",r-l+1);return 0; } /****************************************/
View Code
转载于:https://www.cnblogs.com/acjiumeng/p/8522630.html
Binary Differences相关推荐
- 给定key值,在Binary Search Tree中查找最接近该键值的结点集合
http://blog.csdn.net/zhouhao011280s/article/details/8044056 给定key值,在Binary Search Tree中查找最接近该键值的结点集合 ...
- 107. Binary Tree Level Order Traversal II
题目 Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from l ...
- 102. Binary Tree Level Order Traversal
题目 Binary Tree Level Order Traversal 层次遍历二叉树 链接 Given a binary tree, return the level order traversa ...
- Binary XML file line #8: Error inflating class android.support.v7.widget.RecyclerView
今天创建了一个 demo ,然后就是复制RecyclerView 过去, 到最后完成运行的时候发现 系统奔溃了, 然后 提示 Binary XML file line #8: Error inflat ...
- Android运行时候报错:android.view.InflateException: Binary XML file line #19: Binary XML file lin
Android运行时候报错:android.view.InflateException: Binary XML file line #19: Binary XML file lin 这个问题自己大致在 ...
- android.view.InflateException: Binary XML file line #7: Binary XML file line #7
错误如下 11-21 08:19:44.040 3608-3608/com.leon.oldrecyclerview E/AndroidRuntime: FATAL EXCEPTION: main ...
- [Java]LeetCode297. 二叉树的序列化与反序列化 | Serialize and Deserialize Binary Tree
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...
- Java for LeetCode 067 Add Binary
Given two binary strings, return their sum (also a binary string). For example, a = "11" b ...
- LeetCode刷题记录14——257. Binary Tree Paths(easy)
LeetCode刷题记录14--257. Binary Tree Paths(easy) 目录 前言 题目 语言 思路 源码 后记 前言 数据结构感觉理论简单,实践起来很困难. 题目 给定一个二叉树, ...
最新文章
- Android Build.VERSION.SDK_INT
- 漫画|小白到大神程序员的进阶,都是什么生活状态?
- java BigDecimal实现精确加减乘除运算
- 在flask上使用websocket
- stdarg.h(c标准库)
- 安装phpredis扩展以及phpRedisAdmin工具
- this.$modal.confirm 自定义按钮关闭_Excel迫使人类基因重命名?用VBA给科学家们支一招!—— 怎样快速定制工具栏按钮...
- VTK:可视化之ChooseTextColorDemo
- 利用webBrowser获取页面iframe中的内容
- 当Sklearn遇上Plotly,会擦出怎样的火花?
- js调用WebService(复杂对象传入)[原创]
- keras提取模型中的某一层_Keras做图片分类(四):迁移学习--猫狗大战实战
- MH370 找到个毛!
- SCCM2012SP1---资产管理和远程管理
- 怎么注册tk域名_关于注册免费TK域名不成功的几个问题解决方案
- 台式计算机是32位还64位,电脑系统装64位还是32位系统好?考虑这些才能正确安装...
- 冰雪之城鸿蒙碎片,冰雪之城地图推荐:
- python编程解数学方程(纯字符串格式)
- SaaS 软件开发为企业数字化转型赋能
- WEB接口测试之Jmeter接口测试自动化 (二)
热门文章
- Docker入门六部曲——Swarm
- bert as service
- 奇异值分解与最小二乘问题 线性回归
- AndroidSDK结合SpringBoot实现支付宝支付功能
- 使用最新版(2020)IntelliJ IDEA 新建 Spring Boot 2.0 项目
- 全文翻译(一):TVM: An Automated End-to-End Optimizing Compiler for Deep Learning
- 2021年大数据常用语言Scala(二十七):函数式编程 聚合操作
- Python爬虫实战糗事百科实例
- Cocos Creator 音频文件Audio的绑定与使用(TypeScript)
- ViewPager 设置间距的方法