zoukankan      html  css  js  c++  java
  • [水]ZOJ1201

    给原排列 求 其前面有多少个数比他大。

    给每一个数1...2..n前面有多少个数比他大,求原序列

     第一个直接统计

    第二个从1開始找出第inv【i】+1个空位置放进去就好

    printf里的format 原来能够用if表达式 - -

    #include <bits/stdc++.h>
    
    using namespace std;
    int n;
    void Gao()
    {
        int a[100],b[100]={0};
        char ch;
        getchar();
        ch=getchar();
        if (ch=='P')
        {
            for (int i=0;i<n;i++)
                scanf("%d",a+i);
            for (int i=0;i<n;i++)
                for (int j=0;j<i;j++)
                    if (a[i]<a[j])
                        b[a[i]]++;
            for (int i=0;i<n;i++)
                printf(i==0?"%d":" %d",b[i+1]);
            cout<<endl;
        }
        else
        {
            for (int i=0;i<n;i++)
                scanf("%d",a+i);
            for (int i=0;i<n;i++)
            {
                int need=0;
                for(int j=0;j<n;j++)
                {
                    if (b[j]==0) need++;
                    if ((need==(a[i]+1))&&(b[j]==0))
                    {
                        b[j]=i+1;
                        break;
                    }
                }
            }
            for (int i=0;i<n;i++)
                printf(i==0?"%d":" %d",b[i]);
            cout<<endl;
        }
    }
    int main()
    {
     //   freopen("a.in","r",stdin);
        while (cin>>n && n)
            Gao();
        return 0;
    }


  • 相关阅读:
    移动端图片按比例裁剪
    bootstrap悬停下拉菜单显示
    videojs兼容ie8
    ie浏览器不支持多行隐藏显示省略号
    rem和px
    浏览器默认返回,页面刷新
    centos src compile gcc 7.3
    docker与gosu
    centos 安装 kernel
    docker proxy
  • 原文地址:https://www.cnblogs.com/lytwajue/p/7230415.html
Copyright © 2011-2022 走看看