제출 #128253

#제출 시각아이디문제언어결과실행 시간메모리
128253thanosHomecoming (BOI18_homecoming)C++14
0 / 100
43 ms17912 KiB
#include<iostream>
#include<homecoming.h>
using namespace std;
long long int C(int i,int j,int u,int *B){
  int sum=0;
  for(int k=j; k<=j+u-1; k++){
    if(j==0) break;
    if(k>=i){
      sum-=B[k-1];
    }
  }
  for(int k=i; k<=i+u-1; k++){
    sum+=B[k-1];
  }
  return sum;
}
long long int solve(int N,int K,int *A,int *B){
  int BB[10005];
  for(int i=0; i<N; i++){
    BB[i]=BB[i+N]=B[i];
  }
  long long int dp[10005]={0};
  long long int mx=0;
  for(int i=1; i<=N; i++){
    for(int j=i-1; j>=0; j--){
      dp[i]=max(dp[i],dp[j]+A[i-1]-C(i,j,K,BB));
      mx=max(mx,dp[i]);
    }
  }
  return mx;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...