关注
//先排序,然后两次二分搜索找到喜好值==k的区间,统计即可
import java.util.*;
class ac {
int value=0;
int num=0;
public ac(int num,int value) {
this.value=value;
this.num=num;
}
}
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
int n= sc.nextInt();
ac[] a= new ac[n];
for(int i=0;i<n;i++){
int k=sc.nextInt();
a[i]=new ac(i+1, k);}
Arrays.sort(a,new Comparator<ac>() {
@Override
public int compare(ac o1, ac o2) {
// TODO Auto-generated method stub
return Integer.compare(o1.value, o2.value);
}
});
int q=sc.nextInt();
for(int i=0;i<q;i++){
int l=sc.nextInt();
int r=sc.nextInt();
int k=sc.nextInt();
int left=0;
int right=a.length-1;
while(left<=right){
int mid=(right-left)/2+left;
if(a[mid].value<=k)left=mid+1;
else right=mid-1;
}
int rindex=right;left=0;
while(left<=right){
int mid=(right-left)/2+left;
if(a[mid].value>=k)right=mid-1;
else left=mid+1;
}
right=rindex;
int res=0;
while(left<=right){
if(a[left].num>=l && a[left].num<=r)res++;left++;
}
System.out.println(res);
}
}
}
}//最后沉痛悼念我0%的第一题,做懵逼了,以后想不到就暴力先试试
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
11-03 14:26
武汉设计工程学院 运营 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# offer帮选 #
4817204次浏览 29235人参与
# 0经验如何找实习? #
2156次浏览 64人参与
# 百融云创求职进展汇总 #
4230次浏览 54人参与
# 校招薪资来揭秘 #
354469次浏览 1926人参与
# 你找工作经历过哪些骗局? #
1020次浏览 30人参与
# OC/开奖 #
283063次浏览 1755人参与
# 产品每日一题 #
72287次浏览 641人参与
# 你开始找寒假实习了吗? #
2137次浏览 33人参与
# 实习,不懂就问 #
135328次浏览 1259人参与
# 如果公司降薪,你会跳槽吗? #
108372次浏览 671人参与
# Offer比较,你最看重什么? #
242113次浏览 1499人参与
# 职场新人体验 #
152785次浏览 1112人参与
# 腾讯工作体验 #
536718次浏览 3613人参与
# 跳槽时有那些注意事项 #
113270次浏览 581人参与
# 互联网公司爆料 #
155981次浏览 720人参与
# 2025年终总结 #
22514次浏览 305人参与
# 秋招被确诊为…… #
273410次浏览 1570人参与
# 你会为了工作牺牲生活吗? #
64445次浏览 433人参与
# 实习中的菜狗时刻 #
449904次浏览 3517人参与
# 如果上班像打游戏,你最想解锁什么技能 #
16727次浏览 88人参与
# 工作以后,你父母对你啥态度 #
19263次浏览 151人参与
海康威视公司福利 1384人发布
查看13道真题和解析