[NOIP 2011]選擇客棧 模擬

代碼

#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;

int n,k,p,c[200005],v[200005],col[200005][55],pos[200005],last,kind,ans=0;

int main(){
    memset(col,0,sizeof(col));
    scanf("%d%d%d",&n,&k,&p);
    for(int i=1;i<=n;i++){
        scanf("%d%d",&c[i],&v[i]);
        for(int j=0;j<k;j++){
            col[i][j]=col[i-1][j];
        }
        col[i][c[i]]++;
        if(v[i]<=p)last=i;
        pos[i]=last;
    }   
    int t=0;
    for(int i=2;i<=n;i++){
        kind=c[i];
        last=pos[i];
        t=col[last][kind];
        if(v[i]<=p)t--;
        ans+=t;
    }
    cout<<ans<<endl;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章