Zoj1201

来源:互联网 发布:崩坏3矩阵空间 编辑:程序博客网 时间:2024/06/01 09:51
#include<cstdio>#include<vector>#include<cstring>using namespace std;const int maxn=50+5;int n;int P[maxn];int I[maxn];void P2I(){    memset(I,0,sizeof(I));    for(int i=0;i<n;i++)        for(int j=i+1;j<n;j++)        if(P[i]>P[j])            I[P[j]]++;}void I2P(){    vector<int> v;    v.clear();    for(int i=n;i>0;i--)    {        v.insert(v.begin()+I[i],i);    }    for(int i=0;i<v.size();i++)        P[i]=v[i];}int main(){    char s[10];    while(scanf("%d",&n)==1 && n)    {        scanf("%s",s);        if(strcmp(s,"P")==0)        {            for(int i=0;i<n;i++)                scanf("%d",&P[i]);            P2I();            printf("%d",I[1]);            for(int i=2;i<=n;i++)                printf(" %d",I[i]);            printf("\n");        }        else        {            for(int i=1;i<=n;i++)                scanf("%d",&I[i]);            I2P();            printf("%d",P[0]);            for(int i=1;i<n;i++)                printf(" %d",P[i]);            printf("\n");        }    }    return 0;}

0 0
原创粉丝点击