牛客练习赛87 B k小数查询(STL)
题目链接
由于序列是n的一个排列,那么问题就十分简单啦。先找到x所在的位置然后左右扩展做乘法原理就行了。
unordered_map<int, int> L;
unordered_map<int, int> R;
int a[N];
int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int n, x, k;cin >> n >> x >> k;int pos;for (int i = 1; i <= n; i++){cin >> a[i];if (x == a[i])pos = i;}int cnt = 0;ll ans = 0;//区间内有k-1个比x小的数for (int i = pos - 1; i >= 1; i--){if (a[i] < x)cnt++;L[cnt]++;if (cnt == k - 1)//左ans++;}cnt = 0;for (int i = pos + 1; i <= n; i++){if (a[i] < x)cnt++;R[cnt]++;if (cnt == k - 1)//右ans++;}for (auto v : L){int kk = v.first;if (kk > k - 1)continue;ans += v.second * R[k - 1 - kk];//左右}if (k == 1)//本身ans++;cout << ans << endl;return 0;
}
牛客练习赛87 B k小数查询(STL)相关推荐
- 牛客练习赛87 -A-中位数
中位数 比赛主页 我的提交 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 给出长度为nn ...
- 牛客练习赛87 -C-牛老板
牛老板 比赛主页 我的提交 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 牛老板(牛牛) ...
- 牛客练习赛73 D 离别(线段树+右端点排序离线查询)
牛客练习赛73 D 离别 思路: 对于每一个固定的右端点i,我们都找到一个区间(l,r)使得区间中的点为左端点时 里面最大的的种数为k. 这个可以用队列或者vector来维护. 然后我们对于q个查询, ...
- E-牛牛小数点_牛客练习赛89(数学)
E-牛牛小数点_牛客练习赛89 (nowcoder.com) 题目描述 牛牛想和点点交朋友, 于是点点给了牛牛一个问题. 定义关于小数 xxx 的函数 f(x)f(x)f(x), 表示 xxx 中两个 ...
- 牛客练习赛81 E. 小 Q 与函数求和 1( “简单莫比乌斯反演” ,欧拉函数性质)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 牛客练习赛81 E. 小 Q 与函数求和 1( "简单莫比乌斯反演" ) Prob ...
- 解题报告(一)C、(牛客练习赛41 F)简单数学题(数论 + FWT)(3.5)
繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...
- 牛客练习赛34 E little w and Digital Root(数位dp)
title: 牛客练习赛34 E little w and Digital Root(数位dp) date: 2018-12-17 22:38:37 tags: 数位dp categories:ACM ...
- 牛客练习赛75 D 减数游戏(队列优化(需要取模的)堆)
牛客练习赛75 D 减数游戏 思路:写一下式子可以发每次选择最小的两个数进行操作,最后得到的答案会是最大的,那我们可以将它放进一个最小堆中来维护,但是里面的数是需要取模的,当它取模的时候,将会变小.那 ...
- 踩不出足迹(牛客练习赛88 )
踩不出足迹(牛客练习赛88 ) 题意: 长度为n的数组a,每个数是一个k位二进制 定义一下操作: 令第一次得到的结果为 a1a_1a1.你需要从第二个数开始,每次可以选择与上一次得到的结果异或或者同 ...
最新文章
- ABP理论学习之通知系统
- OPNFV — Overview
- Training little cats
- jQuery学习之:Validation表单验证插件
- asp.net model 验证和取出 ErrorMessage 信息
- C++之new和delete探究
- [PHP] 算法-把数组排成最小的数的PHP实现
- csgo跳投绑定指令_csgo控制台指令大全
- HDU 1407 测试你是否和LTC水平一样高 枚举、二分、hash
- 动易html编辑器漏洞,动易网站管理系统删除任意文件漏洞
- AdventureWorks范例数据库
- 小米刷机一直在android界面,小米手机变砖怎么办?(小白刷机记)卡在开机怎么办?界面进不去,重启不管用​...
- gfortran在linux下安装
- RAC - RACSignal
- android虚拟机启动不了,android虚拟机adb不能启动情况汇总
- Linux 修改系统时间的两种方式
- ASTER: An Attentional Scene Text Recognizer
- 【跟Leon一起刷LeetCode】412. Fizz Buzz
- Mybatis中的关系映射(一对一,一对多,多对多)
- mysql多个on_Mysql join on 多条件匹配