fjnuoj 1003 学长的QQ号

题目: //QQ是一个9位数,由1,2,3,4,5,9组成,且第1、6位数字相同,第2、4位数字相同,第5、7位数字相同。
           //我的QQ就在符合上诉条件中的所有9位数从小到大排第50个

很丑的六循环,想知道别的解法 可是 我 找 不 到!!

#include <iostream>
#include <algorithm>
#include <string>
using namespace std;


int main()
{
string a="123459";
int o=0;
for (int i = 0; i < 6; ++i)
for (int k = 0; k < 6; ++k)
if(k!=i)
for (int l = 0; l < 6; ++l)
if(l!=i&&l!=k)
for (int j = 0; j < 6; ++j)
if(j!=i&&j!=k&&j!=l)
for (int m = 0; m < 6; ++m)
if(m!=i&&m!=k&&m!=l&&m!=j)
for (int n = 0; n < 6; ++n)
if(n!=i&&n!=k&&n!=l&&n!=j&&n!=m)
{
o++;
if(o==50)
{cout<<a[i]<<a[k]<<a[l]<<a[k]<<a[j]<<a[i]<<a[j]<<a[m]<<a[n]<<endl;
return 0;}
}
return 0;
}

原文地址:https://www.cnblogs.com/ruoh3kou/p/7805232.html