平衡树 A题

来源:互联网 发布:exe一机一码加壳软件 编辑:程序博客网 时间:2024/06/07 03:10
#include <iostream>
using namespace std;

const int N = 100000;
int n,m;
int a[N];
int main()
{
    cin>>n>>m;
    for(int i=1; i<=n; i++)
        a[i]=i;
    int b[m][3];
    for(int i=0; i<m; i++)
        for(int j=1; j<3; j++)
            cin>>b[i][j];
    int temp[N];
    for(int i=0;i<m;i++)
    {
        int t1,t2;
        t1=b[i][1];
        t2=b[i][2];
        int k=1;
        for(int j=t2;j>=t1;j--)
            {
                temp[k]=a[j];
                k++;
            }
         k=1;
        for(int j=t1;j<=t2;j++)
        {
            a[j] = temp[k];
            k++;
        }
    }
    for(int i=1;i<=n;i++)
        cout<<a[i]<<" ";
    return 0;
}
原创粉丝点击