标签:tom string tar ble ant element logs math out
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
dp[i][0]=dp[i-1][0]+a[i];
dp[i][1]=max(dp[i-1][1]+b[i],dp[i-1][0]+b[i]);
dp[i][2]=max(dp[i-1][2]+a[i],dp[i-1][1]+a[i]);
b=f(a);
#pragma comment(linker, "/STACK:1024000000,1024000000") #include<iostream> #include<cstdio> #include<cmath> #include<string> #include<queue> #include<algorithm> #include<stack> #include<cstring> #include<vector> #include<list> #include<set> #include<map> using namespace std; #define ll long long #define pi (4*atan(1.0)) #define eps 1e-14 #define bug(x) cout<<"bug"<<x<<endl; const int N=1e5+30010,M=1e6+10,inf=2147483647; const ll INF=1e18+10,mod=2147493647; ll a[N],b[N],dp[N][4]; int main() { int n; while(~scanf("%d",&n)) { for(int i=1;i<=n;i++) scanf("%d",&a[i]),b[i]=(1890*a[i]+143)%10007; dp[0][0]=dp[0][1]=dp[0][2]=0; for(int i=1;i<=n;i++) { dp[i][0]=dp[i-1][0]+a[i]; dp[i][1]=max(dp[i-1][1]+b[i],dp[i-1][0]+b[i]); dp[i][2]=max(dp[i-1][2]+a[i],dp[i-1][1]+a[i]); } printf("%lld\n",max(dp[n][2],max(dp[n][0],dp[n][1]))); } return 0; }
标签:tom string tar ble ant element logs math out
原文地址:http://www.cnblogs.com/jhz033/p/6627345.html