close
題目連結: https://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=19954
題目大意: 按照給的公式 求A(m, n)。
思路: 照要求做,並且記憶化搜索。
代碼:
#include <bits/stdc++.h>
#define N 255
using namespace std;
int memo[N][N];
int A(int m, int n){
if(m == 0 || n == 0) return m+n;
if(memo[m][n] != -1) return memo[m][n];
int res = 0;
res += A(m-1, min(A(m/2, n/2), n-1))+A(min(m-1, A(m/4, n/2)), n/2);
return memo[m][n] = res;
}
int main()
{
int m, n;
memset(memo, -1, sizeof memo);
cin >> m >> n;
cout << A(m, n) << endl;
return 0;
}
文章標籤
全站熱搜