比赛分组问题(一)

    两支乒乓球队进行比赛,各出3人,甲队有A、B、C三人,乙队有X、Y、Z三人。

    A不跟X比赛,C不跟X或Z比赛。

    请问应该如何分组?

    思路:

    A依次从乙队选对手(序号设为i);

    B再依次从乙队选对手(序号设为j,这时A选过的对手不能再选,即 j!=i);

    C再依次从乙队选对手(序号设为k,这时A、B选过的对手都不能再选,即 k!=i并且k!=j)。

    同时还要满足A不跟X比赛,即i!=0;C不跟X或Z比赛,即k!=0并且k!=2。

#include <stdio.h>

int main(void)
{
char A1[3] = {'A', 'B', 'C'};
char A2[3] = {'X', 'Y', 'Z'};

int i=0, j=0, k=0;

for(i=0;i<3;i++)
   for(j=0;j<3;j++)
       for(k=0;k<3;k++)
         if((i!=j)&&(j!=k)&&(k!=i)&&(i!=0)&&(k!=0)&&(k!=2))
             printf("%c vs %c\n%c vs %c\n%c vs %c", A1[0], A2[i], A1[1], A2[j], A1[2], A2[k]);
getchar();
return(0);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值