有两队选手每队5人进行一对一的比赛,甲队为A、B、C、D、E,乙队为J、K、L、M、N,经过抽签决定比赛对手名单。规定A不和J比赛, M不和D及E比赛。列出所有可能的比赛名单。
#include<stdio.h>
#include<algorithm>
using namespace std;
int judge(char a[])
{
if(a[0]=='A'||a[3]=='D'||a[3]=='E')
return 0;
return 1;
}
int main()
{
char a[5]={'A','B','C','D','E'};
char b[5]={'J','K','L','M','N'};
do
{
if(judge(a))
{
for(int i=0;i<5;i++)
printf("%c对抗%c ",a[i],b[i]);
printf("\n");
}
}while(next_permutation(a,a+5));
return 0;
}
截图: