刚好前几天在课件上看到了这种例题,简直一摸一样,而且印象挺深的基本思路都记得,所以这次作业没动脑子就写完了哈哈。具体思路:
已AC
#include <iostream>
using namespace std;
int s;
void Func(int n,int m) {
if (m == 1 || n == 1) s++;
else {
if (m == n) {
s++;
Func(n, n - 1);
}if (m > n) {
Func(n, n);
}if (m < n) {
Func(n - m, m);
Func(n, m - 1);
}
}
}
int main() {
int n, m;
cin >> m;
while (m--) {
s = 0;
cin >> n;
Func(n, n);
cout << s << endl;
}
return 0;
}