제출 #639639

#제출 시각아이디문제언어결과실행 시간메모리
639639SofiatpcRabbit Carrot (LMIO19_triusis)C++14
0 / 100
1 ms212 KiB
#include <bits/stdc++.h> using namespace std; const int MAXN = 200005; int N,M, dp[MAXN][2]; long long h[MAXN]; int fazdp(int i, int a) { if(i==N)return dp[i][a]=0; if(dp[i][a]!=-1)return dp[i][a]; int s = h[i]; if(a==1)h[i]=h[i-1]+M; dp[i][a]=fazdp(i+1,1)+1; if(h[i+1] <= h[i]+M )dp[i][a]=min(dp[i][a],fazdp(i+1,0)); h[i]=s; return dp[i][a]; } int main() { cin>>N>>M; for(int i = 1; i <= N; i++)cin>>h[i]; for(int i = 1; i <= N; i++) for(int a = 0; a <= 1; a++)dp[i][a]=-1; h[0]=0; int ans = fazdp(1,1)+1; if(h[1]<=h[0]+M)ans=min(fazdp(1,0),ans); cout<<ans<<"\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...