• 洛谷P1105 平台


    #include<iostream>
    #include<cstdio>
    #include<cstdlib>
    #include<algorithm>
    using namespace std;

    int p[20001]={0};
    int ansl[1001],ansr[1001];

    struct node{
    int l;
    int r;
    int h;
    int num;
    int ansl;
    int ansr;
    }a[100001];

    bool cmp(node x,node y){
    if (x.h==y.h){
    return x.num>y.num;
    }
    return x.h<y.h;
    }

    bool cmp2(node x,node y) //函数名任意取,该函数为bool形
    {
    return x.num<y.num; // 反之按y从小到大排列
    }

    int main(){
    int N;
    cin>>N;
    for(int i=1;i<=N;i++){
    cin>>a[i].h;
    cin>>a[i].l;
    cin>>a[i].r;
    a[i].num=i;
    }
    sort(a+1,a+1+N,cmp);
    for(int i=1;i<=N;i++){
    a[i].ansl=p[a[i].l];
    a[i].ansr=p[a[i].r];
    for(int q=a[i].l+1;q<=a[i].r-1;q++){
    p[q]=a[i].num;
    }
    }
    sort(a+1,a+1+N,cmp2);
    for(int i=1;i<=N;i++){
    cout<<a[i].ansl;
    cout<<" ";
    cout<<a[i].ansr<<endl;
    }
    }

  • 相关阅读:
    顺序表的扩容
    顺序表的插入
    顺序表的构造
    C# ContentType: "application/json" 请求方式传json
    顺序表构造,插入,扩容操作
    顺序表
    线性表
    算法
    数据结构的分类
    什么是数据结构
  • 原文地址:https://www.cnblogs.com/D-AngeloRussell/p/9891232.html
Copyright © 2020-2023  润新知