• LightOJ 1023


    利用STL的next_perputation就非常方便

    next_permutation使数列逐次增大,这个递增过程按照字典序。

    返回值:如果有一个更高的排列,它重新排列元素,并返回true;如果这是不可能的(因为它已经在最大可能的排列),它按升序排列重新元素,并返回false。

    #include<cstdio>
    #include<math.h>
    #include<queue>
    #include<map>
    #include<string>
    #include<string.h>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    typedef __int64 LL;
    const int INF=0x3f3f3f3f;
    const LL mod=1e9+7;
    const int N=30;
    char s[N];
    
    void init(int n)
    {
        for(int i=0;i<n;i++)
        {
            s[i]='A'+i;
        }
        s[n]='';
    }
    
    int main()
    {
        int T,cas=1;
        scanf("%d",&T);
        while(T--)
        {
            int n,k;
            int i=2;
            scanf("%d%d",&n,&k);
            init(n);
            printf("Case %d:
    ",cas++);
            printf("%s
    ",s);
            while(next_permutation(s,s+n)&&i<=k)
            {
                printf("%s
    ",s);
                i++;
            }
        }
        return 0;
    }


  • 相关阅读:
    systemtap没找到函数变量
    systemtap get var of the tracepoing
    如何在tracepoint上注册函数
    stap中的entry函数
    stap用法
    在submit_bio处使用stapn
    巴达努斯
    perf事件的切换
    perf原理再看
    内存回收的阈值
  • 原文地址:https://www.cnblogs.com/keyboarder-zsq/p/6216781.html
Copyright © 2020-2023  润新知