C语言经典算法100例-022-乒乓球比赛名单问题
生活随笔
收集整理的這篇文章主要介紹了
C语言经典算法100例-022-乒乓球比赛名单问题
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
我們來看題:
兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽簽決定比賽名單。有人向隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比,請編程序找出三隊賽手的名單。?
1.分析,如果沒有任何規(guī)矩可言,那么a可以跟x,y,z中的任何一個比,而b,c同樣是,但是規(guī)矩是有的,那就是a,b,c不能和相同的對手比賽。所以,方法就是,三層循環(huán),然后用條件語句層層篩選,打印出來滿足需求的匹配。
2.源程序:
#include <stdio.h> #include <stdlib.h>int main() {int i,j,k; //i,j,k分別對應a,b,c的對手for(i='x';i<='z';i++)for(j='x';j<='z';j++)if(j!=i)for(k='x';k<'z';k++)if(k!=i&&k!=j)if(i!='x'&&k!='x'&&k!='z')printf("a-%c b-%c c-%c",i,j,k);return 0; }剛開始看到這個題,我想得很復雜也沒想到好的辦法,后來看了答案才豁然開朗,只需要3個變量就可以了,因為a,b,c的位置是確定的,而且x,y,z可以轉化為對應的整數(shù),直接放到循環(huán)里就可以了。腦子好遲鈍,學如逆水行舟,不進則退啊。
?
轉載于:https://www.cnblogs.com/mrbourne/p/9959502.html
總結
以上是生活随笔為你收集整理的C语言经典算法100例-022-乒乓球比赛名单问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android MVC模式在androi
- 下一篇: 九度 1531:货币面值(01背包)