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;    
}

arrow
arrow
    創作者介紹
    創作者 尾玉 的頭像
    尾玉

    louisfghbvc的部落格

    尾玉 發表在 痞客邦 留言(0) 人氣()