POJ 3176 Cow Bowling
简单DP
#include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using namespace std; long long a[400][400]; long long dp[400][400]; int n; int main() { scanf("%d",&n); for(int i=1;i<=n;i++) for(int j=1;j<=i;j++) scanf("%lld",&a[i][j]); long long ans=0; memset(dp,0,sizeof dp);dp[1][1]=a[1][1]; for(int i=2;i<=n;i++) { for(int j=1;j<=i;j++) { dp[i][j]=a[i][j]+max(dp[i-1][j],dp[i-1][j-1]); ans=max(ans,dp[i][j]); } } printf("%lld\n",ans); return 0; }