蓝桥杯:区间K大数查询
来源:互联网 发布:林书豪职业生涯数据 编辑:程序博客网 时间:2024/05/18 17:02
题目:
给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。
输入格式
第一行包含一个数n,表示序列长度。
第二行包含n个正整数,表示给定的序列。
第三个包含一个正整数m,表示询问个数。
接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。
输出格式
总共输出m行,每行一个数,表示询问的答案。
样例输入
5
1 2 3 4 5
2
1 5 2
2 3 2
样例输出
4
2
数据规模与约定
对于30%的数据,n,m<=100;
对于100%的数据,n,m<=1000;
保证k<=(r-l+1),序列中的数<=106。
代码:
#include<iostream>#include<algorithm>#include<cstring>using namespace std;bool cmp(int a,int b){ return a>b;}int main(){ int n,m,l,r,k; int a[1000],b[1000]; cin>>n; /*序列长度*/ for(int i=0;i<n;i++) { cin>>a[i]; } cin>>m; /*询问个数*/ for(int z=1;z<=m;z++) { memset(b,0,sizeof(b)); cin>>l; cin>>r; cin>>k; int j=0; for(int i=l-1;i<r;i++) { b[j++]=a[i]; } sort(b,b+r-l+1,cmp); cout<<b[k-1]<<endl; } return 0;}
0 0
- 区间k大数查询 蓝桥杯
- 蓝桥杯 - 区间k大数查询
- 蓝桥杯 - 区间k大数查询
- 蓝桥杯:区间K大数查询
- 蓝桥杯-区间k大数查询
- 区间K大数查询
- 区间K大数查询
- 区间k大数查询
- 区间K大数查询
- 区间k大数查询
- 区间k大数查询
- 区间k大数查询
- 区间k大数查询
- 区间k大数查询
- 区间k大数查询
- 区间K大数查询
- 区间k大数查询
- 区间K大数查询
- 利用WIX制作安装包(1)
- Golang 模块扩展
- linux基本命令(18)——locate命令
- iOS assign copy retain...含义
- 详解java定时任务
- 蓝桥杯:区间K大数查询
- Maven学习6之eclipse下 maven几个注意点:排除、聚合、继承
- 微信读书 iOS 性能优化总结
- 05Android学习从零单排之Androidmultimedia(多媒体)
- C++_BFS求最短路径
- 元素的尺寸
- 从零开始nodejs系列文章
- 瞬驰(Dash)D1开发手册--超声波传感器v1版
- Java学习-常用排序稳定性分析