首页 > 其他分享 >P1114 “非常男女”计划

P1114 “非常男女”计划

时间:2022-08-19 12:33:09浏览次数:50  
标签:P1114 int sum1 sum0 计划 男女 200010

https://www.luogu.com.cn/problem/P1114


前缀和,相对差
黄色题
思路:

引入相对差的概念。即a[i]表示第i个位置男生人数-女生人数的差值。

那么差值相等的两个位置之间的人数是满足男女相等的。(仔细体会)

从此统计l[a[i]]和r[a[i]]。

特别要注意的是a[0]=0 统计的时候要把0的位置当做差为0的起点。


 

#include <bits/stdc++.h>
using namespace std;
int l[200010],r[200010],sum1,sum0,ans,n;
int main()
{
    cin>>n;
    for (int i=1;i<=n;i++){
        int x; cin>>x;
        sum1+=(x==1), sum0+=(x==0);
        int t=sum0-sum1+n;
        if (!l[t]&&t!=n) l[t]=i; else r[t]=i;
    }
    for (int i=0;i<=2*n;i++) ans=max(ans,r[i]-l[i]);
    cout<<ans<<endl;
    return 0;
}

 

标签:P1114,int,sum1,sum0,计划,男女,200010
From: https://www.cnblogs.com/2elaina/p/16601607.html

相关文章

  • 阿里云无影发布生态共荣计划,携手伙伴推动终端算力上云
    2022年8月11日,阿里云无影在飞天技术峰会上发布生态共荣计划,与首批生态伙伴完成签约,将携手伙伴共建基于无影架构的生态链,让更多客户共享云计算红利。 多家华南企业......
  • 欧拉计划
    \(\texttt{Problem1}\)\(\texttt{Describe}\)在小于\(10\)的自然数中,\(3\)或\(5\)的倍数有\(3,5,6\)和\(9\),这些数之和是\(23\)。求小于\(1000\)的自然数中......
  • 三级炼钢计划流程
    三级作业计划流程:炼钢计划履历代码事件:PSA9运行状态RUN_STATUS  炼钢计划状态:PONO_STATUS     1.四级计划通过8O9J51电文接口,将炉次信息写入TPSSM01,TP......
  • MySQL使用Explain查看执行计划
    概述Explain模拟优化器执行SQL语句,在5.6以及以后的版本中,除了select,其他insert,update和delete均可以使用explain查看执行计划,从而知道mysql是如何处理sql语句,分析查询语句......
  • 在jira上创建测试计划,你的每一步都能有像手游奖惩系统一样的心流体验
      1、新建测试计划2、完成测试计划创建 3、添加测试计划用例 4、添加测试周期     5、执行测试周期    当人沉浸在当下着手的某件事......
  • [2004年NOIP提高组] 津津的储蓄计划
    津津的零花钱一直都是自己管理。每个月的月初妈妈给津津300元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同。 为了让津津学习如何储蓄,妈妈提出,津津可以随时......
  • [2004年NOIP提高组] 津津的储蓄计划
    将每月得到的与原有的和花费比较,注意最后一月剩下的加起来#include<bits/stdc++.h>usingnamespacestd;intmain(){ inta[15],i,j=0; doubless,s=0; for(i=1;i<=12;i++......