首页 > 其他分享 >ABC 248 D - Range Count Query(思维)

ABC 248 D - Range Count Query(思维)

时间:2022-10-04 11:11:19浏览次数:64  
标签:Count upper begin ABC end LL bound cin Range

https://atcoder.jp/contests/abc248/tasks/abc248_d

题目大意:

给定一个长度为n的数组a,再给出q次询问;

每次询问都问我们区间a[l]~a[r]中k的出现次数是多少?
Sample Input 1 
5
3 1 4 1 5
4
1 5 1
2 4 3
1 5 2
1 3 3
Sample Output 1  
2
0
0
1

这道题目虽然我思路完全正确,但是在代码实现的时候有小细节导致我没有得出答案,就是vector遇到lower_bound和upper_bound的写法上不对劲
写成这样就行啦!

LL be=lower_bound(v[k].begin(),v[k].end(),l)-v[k].begin();

LL ed=upper_bound(v[k].begin(),v[k].end(),r)-v[k].begin();

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
typedef pair<LL,LL> PII;
const LL MAXN=1e18;
const LL N=200200,M=2002;
LL a[N];
vector<LL> v[N];
int main()
{
    cin.tie(0); cout.tie(0); ios::sync_with_stdio(false);
    LL T=1;
    //cin>>T;
    while(T--)
    {
        LL n;
        cin>>n;
        for(LL i=1;i<=n;i++)
        {
            cin>>a[i];
            v[a[i]].push_back(i);
        }
        LL q;
        cin>>q;
        while(q--)
        {
            LL l,r,k;
            cin>>l>>r>>k;
            LL be=lower_bound(v[k].begin(),v[k].end(),l)-v[k].begin();
            LL ed=upper_bound(v[k].begin(),v[k].end(),r)-v[k].begin();
            cout<<max((LL)0,ed-be)<<endl;
        }
    }
    return 0;
}

标签:Count,upper,begin,ABC,end,LL,bound,cin,Range
From: https://www.cnblogs.com/Vivian-0918/p/16753459.html

相关文章

  • ABC 248 C - Dice Sum(DP:背包)
    https://atcoder.jp/contests/abc248/tasks/abc248_c题目大意:给定长度为n,可选择的数字的范围【1,m】,放置的数字的总和不能超过k;问我们能凑出多少种不同的情况?取模。......
  • 1348. Tweet Counts Per Frequency 推特文章的访问频率
    1348. TweetCountsPerFrequencyMedium130231AddtoListShareAsocialmediacompanyistryingtomonitoractivityontheirsitebyanalyzingthenumber......
  • go for range 遍历
    forrange中会为i,v申请各申请一块内存地址存储临时变量,遍历的时候后面的值会覆盖前面的例子:packagemainimport("fmt")funcmain(){m:=make(ma......
  • SAP UI5 sap.ui.Device.media.RANGESETS 的使用介绍
    这是一个namespace,来自sap.ui.core:包含预定义屏幕宽度媒体查询范围集(mediaqueryrangesets)的名称和设置的枚举。在Chrome开发者工具Console面板里能够查看到所......
  • SAP UI5 sap.ui.Device.media.RANGESETS.SAP_STANDARD_EXTENDED 介绍
    这是一个4步范围集(Phone,Tablet,Desktop,LargeDesktop)。这组的范围是:phone:适用于小于600像素的屏幕。tablet:适用于大于或等于600像素且小于1024像素的屏幕......
  • ABC 246 D - 2-variable Function(数论/暴力)
    https://atcoder.jp/contests/abc246/tasks/abc246_d题目大意:给定一个数字N,让我们求出X,这个X要满足X>=N,并且X内部可以有一对(a,b)满足a^3+a^2*b+b^2*a+b^3。找出最......
  • ABC 246 C - Coupon(思维)
    怎么最近连纯思维题都写不出来了???我人傻了https://atcoder.jp/contests/abc246/tasks/abc246_c题目大意:给定n个价钱,我们手里有k个优惠卷,每个优惠卷都可以减7元;假如......
  • ABC-270 F - Transportation(kruskal)
    ABC-270F-Transportation(kruskal)考虑等价转换,建立两个虚点(分别表示airport和harbor的中转站)。这样就可以把点统一为边权问题。对于操作1和操作2,就是等价于向虚点连边......
  • solution-arc149(ABC)
    A就是枚举,先枚举是哪个数再枚举位数。把这种题放arcA感觉挺没意思。#include<cstdio>usingnamespacestd;intansx,ansy;voidcheckmax(inti,intj){if(......
  • 358 Rearrange String k Distance Apart 每个相同字母都要相距为k 767. Reorganize St
    Givenastring s andaninteger k,rearrange s suchthatthesamecharactersare atleast distance k fromeachother.Ifitisnotpossibletorearran......