题目链接:点击查看

题目大意:现在玩猜数字游戏,如果猜的数字比答案要大,就输出 ' + ' ,比答案小,就输出 ' - ' ,猜中了答案,输出 ' . ', 给出这样的 n 条指令,问最多有多少条指令可以同时保证正确性

题目分析:感觉蛮不错的一道差分题目,分类讨论一下:

  1. ' . ' :当前指令只对 pos 位置的数做出了贡献
  2. ' + ' :当前指令对 [ -inf , pos - 1 ] 内的数做出了贡献
  3. ' - ' :当前指令对 [ pos + 1 , inf ] 内的数做出了贡献

因为数据是离散化的,可以用 map 来维护,也可以离散化一下,时间复杂度都是 nlogn 级别的

代码:

#include<iostream>
#include<cstdio>
#include<string>
#include<ctime>
#include<cmath>
#include<cstring>
#include<algorithm>
#include<stack>
#include<climits>
#include<queue>
#include<map>
#include<set>
#include<sstream>
#include<cassert>
#include<unordered_map>
using namespace std;typedef long long LL;typedef unsigned long long ull;const LL inf=0x3f3f3f3f3f3f3f3f;const int N=1e5+100;map<LL,int>mp;void update(LL l,LL r)
{mp[l]++,mp[r+1]--;
}int main()
{
#ifndef ONLINE_JUDGE
//  freopen("input.txt","r",stdin);
//  freopen("output.txt","w",stdout);
#endif
//  ios::sync_with_stdio(false);int n;scanf("%d",&n);for(int i=1;i<=n;i++){int pos;char op[5];scanf("%d%s",&pos,op);if(op[0]=='.')update(pos,pos);else if(op[0]=='+')update(-inf,pos-1);elseupdate(pos+1,inf);}int sum=0,ans=0;for(auto it:mp){sum+=it.second;ans=max(ans,sum);}printf("%d\n",ans);return 0;
}

牛客 - 二分(差分)相关推荐

  1. 解题报告 - 牛客练习赛63 C - 牛牛的揠苗助长(货仓选址+二分)

    链接:https://ac.nowcoder.com/acm/contest/5531/C 来源:牛客网 题目描述 牛牛有一块长度大小为n的菜园,他首先对这块菜园从1到n进行了编号,每一块地分别为1号 ...

  2. 牛客假日团队赛8:F.Telephone Lines(二分+spfa)

    链接:https://ac.nowcoder.com/acm/contest/1069/F 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6553 ...

  3. 2019牛客暑期多校训练营(第一场) A Equivalent Prefixes ( st 表 + 二分+分治)

    链接:https://ac.nowcoder.com/acm/contest/881/A 来源:牛客网 Equivalent Prefixes 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/ ...

  4. 牛客练习赛46 B 华华送奕奕小礼物 (预处理前缀和,二分)

    链接:https://ac.nowcoder.com/acm/contest/894/B?&headNav=acm 来源:牛客网 华华送奕奕小礼物 时间限制:C/C++ 1秒,其他语言2秒 空 ...

  5. 2018牛客网暑期ACM多校训练营(第十场)J Rikka with Nickname(二分,字符串)

    链接:https://ac.nowcoder.com/acm/contest/148/J?&headNav=acm 来源:牛客网 Rikka with Nickname 时间限制:C/C++ ...

  6. Cutting Bamboos(牛客多校第九场H主席树+二分+思维)

    链接:https://ac.nowcoder.com/acm/contest/889/H 来源:牛客网 There are n bamboos arranged in a line. The i-th ...

  7. HJ浇花(牛客竞赛 约束差分)

    链接:https://ac.nowcoder.com/acm/contest/322/M 来源:牛客网 题目描述 HJ养了很多花(99999999999999999999999999999999999 ...

  8. 牛客练习赛76 E 牛牛数数(线性基加二分)

    牛客地址 思路:全部组合异或,很容易想到使用线性基,正好线性基中有一个求第k小的用法,那我们可以二分来找 K是第几小的数,然后用总数减去. #include <iostream> #inc ...

  9. 牛客题霸 二分查找 C++题解/答案

    牛客题霸 二分查找 C++题解/答案 题目描述 请实现有重复数字的有序数组的二分查找. 输出在数组中第一个大于等于查找值的位置,如果数组中不存在这样的数,则输出数组长度加一. 示例1 输入 复制 5, ...

最新文章

  1. ZOJ 2587 Unique Attack
  2. php mysql_query的的用法_PHPmysqli_query()函数定义与用法
  3. python 分离整数与小数_Python编程:离不开算术运算符的顺序结构
  4. CTF工具(1)--- ARCHPR--含安装/使用过程
  5. ANN中批归一化的意义和在SNN中的转化
  6. eclipse调试java web_eclipse调试web项目
  7. sql server父节点_将新节点添加到现有SQL Server Always On可用性组中
  8. 为什么高级程序员尤其讨厌条条框框的束缚?
  9. 【TiChoo资讯站】
  10. 基于单片机的智能温度监测系统的代码
  11. 3656. 心与心的距离
  12. USB数据采集卡:labjack T7、T7 Pro系列的技术特点
  13. Python淘宝爬虫
  14. vscode超炫敲击特效嘎嘎帅!!!
  15. 网线水晶头接法(附图说明)
  16. Java通过jacob生成动态word,还有一种方法通过word书签实现
  17. 高级性能测试系列《34.普通性能场景:​jmeter的线程数,有没有限制?线程数+ramp-up时间,怎么设置才比较合理?》...
  18. Word2010专项试题
  19. STC89C52上的读写MMA7455程序
  20. Linux 下 lsof 命令的几个高效用法

热门文章

  1. java bigdecimal min_java
  2. 多对多(many-to-many)
  3. 搭建K8s集群(kubeadm方式)-部署master节点
  4. Spring 核心容器类BeanDefinitionReader
  5. 任务调度框架Quartz基本介绍
  6. webpack打包js文件
  7. 分布式文件系统研究-技术应用场景
  8. 使用redis实现订阅功能
  9. Stream流中的常用方法_filter
  10. Zuul指定Path+url以及指定可用的服务节点时如何负载均衡