一、题目
有一个人站在电影院门口卖票,票价50,一开始手上没有找零的钱,现在有两种人来买票,A拿着100元的钱,人数为m(m<20),B拿着50元的钱,人数为n(n<20)。卖票的人必须用从B类人中那里得来钱找给A,所以卖票的顺序是有限制的。
要求写一个程序打印出所有的买票序列:
例如:m =2 ,n = 3;
BABAB
BBAAB
BBBAA
BBABA
二、解法→递归法
1、思想
金句:涉及“状态转换和记录”的都可以用递归的方法求解
模拟 所有人买票的全过程,
变量假设
假设拿着100元钱的人A的人数有m 人,拿着50元钱的B的人数有n 人,
某一时刻已经买票的A有a 人,B有b 人
子问题
如果进