zoukankan      html  css  js  c++  java
  • Ignatius and the Princess II

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1027

    题目是要:求n个数的第m个全排列

    代码:(超时)

    #include<iostream>
    #include<algorithm>
    using namespace std;
    const int N=1005;
    int main()
    {
        int n,a[N],m;
        while (cin>>n>>m)
        {
            int num=0;
            for (int i=0;i<n;i++)
                a[i]=i+1;
            do
            {
                num++;
                if (num==m)
                {
                    for (int i=0;i<n;i++)
                    {
                        if (i!=n-1)
                        cout << a[i] << ' ';
                        else
                        cout << a[i] << endl;
                    }
                }
            }
           while(next_permutation(a,a+n)) ;

        }
        return 0;
    }

    上面这个代码,提交的答案是超时,因为找到第m个全排列以后忘记break了;

    代码:(AC)

    #include<iostream>
    #include<algorithm>
    using namespace std;
    const int N=1005;
    int main()
    {
        int n,a[N],m;
        while (cin>>n>>m)
        {
            int num=0;
            for (int i=0;i<n;i++)
                a[i]=i+1;
            do
            {
                num++;
                if (num==m)
                {
                    for (int i=0;i<n;i++)
                    {
                        if (i!=n-1)
                        cout << a[i] << ' ';
                        else
                        cout << a[i] << endl;
                    }
                    break;
                }
            }
           while(next_permutation(a,a+n)) ;

        }
        return 0;
    }

  • 相关阅读:
    php IE中文乱码
    Ehab and a 2-operation task (思维题)
    9-7链表数据求和操作
    "巴卡斯杯" 中国大学生程序设计竞赛
    Codeup 问题 B: 算法7-16:弗洛伊德最短路径算法
    一只小蜜蜂...
    结构体作为函数参数(值传递,引用传递,指针传递)
    Codeforces Round # 515 (div.3) A. Vova and Train
    查找最大元素
    JSP复习(part 4)
  • 原文地址:https://www.cnblogs.com/lisijie/p/7206007.html
Copyright © 2011-2022 走看看