题目描述

近来,初一年的XXX小朋友致力于研究班上同学的配对问题(别想太多,仅是舞伴),通过各种推理和实验,他掌握了大量的实战经验。例如,据他观察,身高相近的人似乎比较合得来。

万圣节来临之际,XXX准备在学校策划一次大型的“非常男女”配对活动。对于这次活动的参与者,XXX有自己独特的选择方式。他希望能选择男女人数相等且身高都很接近的一些人。这种选择方式实现起来很简单。他让学校的所有人按照身高排成一排,然后从中选出连续的若干个人,使得这些人中男女人数相等。为了使活动更热闹,XXX当然希望他能选出的人越多越好。请编写程序告诉他,他最多可以选出多少人来。

输入输出格式

输入格式:

第一行有一个正整数n,代表学校的人数。n<=100000

第二行有n个用空格隔开的数,这些数只能是0或1,其中,0代表一个女生,1代表一个男生

输出格式:

输出一个非负整数。这个数表示在输入数据中最长的一段男女人数相等的子序列长度。

如果不存在男女人数相等的子序列,请输出0。

/*还是那天的前缀和思想,用 一个记录前缀和的数组,讲0
看做-1记录。遍历时,找到与当前前缀和相等的最早的数字,
(用另一个数组记录)之后 位置相减即可*/
#include<cstdio>
#include<algorithm>
#define maxn 100001
#define INF 100000
using namespace std;
int sum[maxn];
int map[maxn*2];
int n,maxx=-1;
int read()
{
int now=0;
char c=getchar();
while(c>'9'||c<'0')c=getchar();
while(c>='0'&&c<='9')
{
now*=10;
now+=c-'0';
c=getchar();
}
return now;
}
int main()
{
n=read();
for(int i=1;i<=n;i++)
{
int num=read();
num==1?num=1:num=-1;
sum[i]+=num+sum[i-1];
}
for(int i=0;i<=200001;i++)map[i]=-1;
for(int i=0;i<=n;i++)
{
if(map[sum[i]+INF]==-1)
{
map[sum[i]+INF]=i;
}
if(map[sum[i]+INF]!=-1)
maxx=max(maxx,i-map[sum[i]+INF]);
}
printf("%d",maxx);
return 0;
}

转载于:https://www.cnblogs.com/luoyibujue/p/6884126.html

洛谷 P1114 “非常男女”计划相关推荐

  1. 【洛谷】P1137旅行计划

    [洛谷]P1137旅行计划 题目描述 小明要去一个国家旅游.这个国家有N个城市,编号为1至N,并且有M条道路连接着,小明准备从其中一个城市出发,并只往东走到城市i停止. 所以他就需要选择最先到达的城市 ...

  2. 洛谷千题复习计划(一)(Codeforces + AtCoder)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 每天花一个小时简单复习一下我写过的洛谷的题目! 虽然还没有到千题,但是快了(等我复习完这些以后我 lu ...

  3. 我的洛谷冬日绘板计划

    我为什么要画这个? 首先,这是一只金色的企鹅--不是鸭子啦! 金企鹅(JQE)是我的一个学长,从我走上oi这条路开始,他就一直在给予我极大的帮助. 可是oi的美好时光流逝得太快,现在他已经高三了,成为 ...

  4. 外卖(food) 洛谷4040宅男计划 三分套二分贪心

    food评测传送门 [题目描述] 叫外卖是一个技术活,宅男宅女们一直面对着一个很大的矛盾,如何以有限的金钱在宿舍宅得尽量久.     外卖店一共有 N 种食物,每种食物有固定的价钱 Pi 与保质期 S ...

  5. 洛谷 P2762 太空飞行计划问题

    题目背景 题目描述 W 教授正在为国家航天中心计划一系列的太空飞行.每次太空飞行可进行一系列商业性实验而获取利润.现已确定了一个可供选择的实验集合E={E1,E2,-,Em},和进行这些实验需要使用的 ...

  6. 洛谷 P2762 太空飞行计划问题(自己理解的口胡版)

    题目描述 W 教授正在为国家航天中心计划一系列的太空飞行.每次太空飞行可进行一系列商业性实验而获取利润.现已确定了一个可供选择的实验集合E={E1,E2,-,Em},和进行这些实验需要使用的全部仪器的 ...

  7. P1114 “非常男女”计划(相对差,前缀和,剪枝)

    如果有一段区间 特殊点:需要特判 k1==k2  男女数相同,他们的l[t]一定是0,r[t]可以变化 所以只有k1=k2  t!=n   l数组才可以存下标,不然会出错 所以需要增加一个特判  t! ...

  8. 【洛谷_P1137】旅行计划

    旅行计划 题目描述 小明要去一个国家旅游.这个国家有#NN个城市,编号为11至NN,并且有MM条道路连接着,小明准备从其中一个城市出发,并只往东走到城市i停止. 所以他就需要选择最先到达的城市,并制定 ...

  9. 洛谷 2680 (NOIp2015) 运输计划

    题目:https://www.luogu.org/problemnew/show/P2680 因为是最长的时间最短,所以二分! 离线LCA可以知道路径长度.每次只看超过二分值的路径. 原本的想法是遍历 ...

  10. 洛谷 P3627 [APIO2009]抢掠计划 题解

    Analysis 建图+强连通分量+SPFA求最长路 但要保证最后到达的点中包含酒馆 虽然思路并不难想,但要求的代码能力很高. 1 #include<iostream> 2 #includ ...

最新文章

  1. 【死磕JVM】五年 该知道JVM加载机制了!
  2. 死磕Java并发:J.U.C之并发工具类:Semaphore
  3. linux内核地址映射,Linux内核设备驱动地址映射笔记整理
  4. Unique Paths II leetcode java
  5. iis 7 php_Windows server 2008 下基于IIS7配置php7.2运行环境
  6. 关于LGame-0.2.9版的开发进度
  7. centos6系列版本防火墙图形化设置
  8. 虚拟机里面安装Openfiler 2.99
  9. 服务器文档读取不了,服务器读取不到内存
  10. 光谱共焦传感器应用于哪些领域
  11. 如果使用git克隆远程创库,pull提示Can‘t update master has no tracked branch
  12. c语言工业设计中的案例,工业设计中CMF为什么这么重要?看看设计案例就知道了!...
  13. 用PySimpleGui做户籍资料查询工具
  14. 央视国际节目定价发布接口规范C2
  15. 读《TOWARDS EXPRESSIVE SPEAKING STYLE MODELLING WITH HIERARCHICAL CONTEXT INFORMATION FOR MANDARIN》
  16. 全球及中国汽车扬声器粘合剂行业市场发展状况与竞争格局分析报告2022-2028年
  17. java实现京东登陆界面,京东登陆界面的实现
  18. 【lizhi125】FindDupFile - 轻松查找与清理电脑上的重复文件、照片的绿色软件
  19. Java基础到Java进阶——Java小白的历练之路------从0到1,开卷!
  20. [ESP][驱动]ST7701S RGB屏幕驱动

热门文章

  1. (27)python-多维数组
  2. jmeter html插件,Jmeter最常见的几个插件(一)
  3. double几位小数_算法竞赛入门之每日一题:分数化化小数(decimal) C语言
  4. linux安装opencv
  5. ubuntu将一个文件夹下的所有内容复制到另一个文件夹下
  6. 【OpenCV入门指南】第一篇 安装OpenCV
  7. 面试常问:BIO,NIO,AIO
  8. cmake静态编译以及安装带有opencv的静态库并调用
  9. Oracle基础查询
  10. hbase 伪分布安装 java_HBase伪分布搭建