排列组合计算第m种组合 STL实现——pku1833

G++提交会超时,C++不会超时
View Code
#include<iostream>
#include
<stdio.h>
#include
<string.h>
#include
<algorithm>
using namespace std;

int main()
{
int a[209],n,m,t,i;
scanf(
"%d",&t);
bool use;
while(t--)
{
use
=0;
scanf(
"%d%d",&n,&m);
for(i=0;i<n;i++)
scanf(
"%d",&a[i]);

while(m--) next_permutation(&a[0],&a[n]);

printf(
"%d",a[0]);
for(i=1;i<n;i++)
{
printf(
" %d",a[i]);
}
printf(
"\n");
}
return 0;
}
原文地址:https://www.cnblogs.com/huhuuu/p/1988287.html