ac栈和排列

栈和排序

https://ac.nowcoder.com/acm/problem/14893

图片说明

#include<stdio.h>
long long int p[1000000], q[1000000];
int main() {
    int flag = 0;
    long long int n;
    long long int i, j, k = 1;
    long long int a, b;
    scanf("%lld", &n);
    for (i = 1; i <= n; i++) {
        scanf("%lld", &p[i]);
    }
    for (i = 1; i < n; i++) {
        for (j = i+1; j <= n; j++) {
            if (p[i] < p[j]) {
                break;
            }
        }
        if (j > n) {
            printf("%lld ", p[i]);
            p[i] = -1;
            for (a = i - 1; a >= 1; a--) {
                for (b = i + 1; b <= n; b++) {
                    if (p[a] < p[b]&&p[a]!= -1) {
                        flag = 1;
                        break;
                    }
                }
                if (flag) break;
                if (b > n&&p[a]!= -1) {
                    printf("%lld ", p[a]);
                    p[a] = -1;
                }
            }
            flag = 0;
        }
    }
    for (i = n; i >= 1; i--) {
        if (p[i] > -1&&p[i]!= -1)
            printf("%lld ", p[i]);
    }
    return 0;
}
全部评论

相关推荐

程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务