回溯法的问题:求所有情况
题目是这样的:
有N个硬币它们有两种状态,正面朝上和反面朝上,现在要求它们所有可能排出的所有情况.
要用非递归回溯法求.
比如有4个硬币的情况:
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 1
[解决办法]
对n种情况
for(i=0; i <pow(2, n); i++)
{
// 二进制方式print i即可
}