解题思路:
(1)通过动态规划的思想,边求数组值边比较大小
class Solution {
public:
int getMaximumGenerated(int n) {
if(n==0) return 0;
if(n==1) return 1;
int *a = new int[n+1];
a[0] = 0,a[1] = 1;
int max = 1;
for(int i=2;i<=n;i++) {
if(i%2==1) {
a[i] = a[i/2]+a[i/2+1];
if(max<a[i]) max = a[i];
} else {
a[i] = a[i/2];
if(max<a[i]) max = a[i];
}
}
delete []a;
return max;
}
};