1.2借书知多少
1.问题描述
小明有5本新书,要借给A、B、C这3位小朋友,若每人每次只能借1本,则可以
有多少种不同的借法?
2.问题分析
本题属于数学当中常见的排列组合问题,即求从5个数中取3个不同数的排列组合的总数。我们可以将5本书进行1~5的编号,A、B、C3个人每次都可以从5本书中任选1本,即每人都有5种选择,由于1本书不可能同时借给一个以上的人,因此只要这3个人所选书的编号不同,即为一次有效的借阅方法。
3.算法设计
对于每个人所选书号,我们可以采用穷举法
4.代码
#include<iostream>
using namespace std;
int main()
{
int i = 0;
for (int A = 1; A <= 5; A++)
{
for (int B = 1; B <=5; B++)
{
if (B == A) { continue; }
for (int C = 1; C <=5 ;C++)
{
if(C==A||C==B){ continue; }
cout << "A:" << A << "B:" << B << "C:" << C << endl; i++;
}
}
}
cout<< "一共有:" << i<<"种方法" << endl;
return 0;
}