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

Balanced Substring

题解:前缀和思想(菜菜菜,我为什么这么菜,太菜 了,不能忍不能忍,菜菜菜)

这和前缀和,你把他理解成折线图(就和股票一样),然后容易发现相等的地方就是答案(训练是画了折线图也没看出来,菜菜菜,太菜了)。然后遍历一下就行了

代码:

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e5+5;

char a[maxn];
int b[maxn];
int pre[maxn];
int vis[maxn*2+10];
int main()
{
    int n;
    while(~scanf("%d",&n))
    {
        memset(b,0,sizeof(b));
        memset(pre,0,sizeof(pre));
        memset(vis,-1,sizeof(vis));
        scanf("%s",a+1);
        int maxe=0;
//        printf("%d ",pre[0]);
        for(int i=1;i<=n;i++){
            if(a[i]=='0') b[i]=-1;
            else b[i]=1;
            pre[i]=pre[i-1]+b[i];
//            printf("%d ",pre[i]);
        }
//        puts("");
        for(int i=0;i<=n;i++){
            if(vis[pre[i]+n]==-1)vis[pre[i]+n]=i;
            else maxe=max(maxe,(i-vis[pre[i]+n]));
        }
//        for(int i=0;i<13;i++){
//            printf("%d==%d\n",i,vis[i]);
//        }
//        if(maxe<0) maxe=0;
        printf("%d\n",maxe);
    }
    return 0;
}
/*
6
000111
8
11010111
3
111
*/

 

转载于:https://www.cnblogs.com/lalalatianlalu/p/7725881.html

相关文章:

  • Python 元组 count() 方法
  • 全方位绕过软WAF攻略
  • 算法 - 排序数组中与x最近一点
  • java中的equals方法
  • 【BZOJ5060】魔方国 特判
  • set与multiset
  • 集体智慧编程笔记
  • 【探路者】第三周立会报告6(总第18次)
  • 如何在Windows下安装Linux子系统(Ubuntu,openSUSU,SUSU Linux Server)
  • 很想说点什么
  • 使用vue-cli构建vue项目流程
  • Python学习笔记(1)-列表
  • 【20171103中】sqli-libs Less 40-49
  • 迷宫问题
  • js:字符串(string)转json
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 【译】理解JavaScript:new 关键字
  • Android Volley源码解析
  • JavaScript-Array类型
  • Magento 1.x 中文订单打印乱码
  • SAP云平台里Global Account和Sub Account的关系
  • vue脚手架vue-cli
  • XML已死 ?
  • 从输入URL到页面加载发生了什么
  • 发布国内首个无服务器容器服务,运维效率从未如此高效
  • 翻译--Thinking in React
  • 前端之React实战:创建跨平台的项目架构
  • 软件开发学习的5大技巧,你知道吗?
  • 设计模式(12)迭代器模式(讲解+应用)
  • 为视图添加丝滑的水波纹
  • No resource identifier found for attribute,RxJava之zip操作符
  • const的用法,特别是用在函数前面与后面的区别
  • ​HTTP与HTTPS:网络通信的安全卫士
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • ​Python 3 新特性:类型注解
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • #Java第九次作业--输入输出流和文件操作
  • #pragma once
  • #绘制圆心_R语言——绘制一个诚意满满的圆 祝你2021圆圆满满
  • $.proxy和$.extend
  • (C#)获取字符编码的类
  • (C++17) optional的使用
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (PWM呼吸灯)合泰开发板HT66F2390-----点灯大师
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (算法)Game
  • (转)winform之ListView
  • * 论文笔记 【Wide Deep Learning for Recommender Systems】
  • .NET Core引入性能分析引导优化
  • .net 使用$.ajax实现从前台调用后台方法(包含静态方法和非静态方法调用)
  • .Net中的设计模式——Factory Method模式