답안 #321209

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
321209 2020-11-11T13:59:47 Z fadi57 Safety (NOI18_safety) C++14
4 / 100
7 ms 6124 KB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int mx=600;
const int mod= 998244353;
const ll inf=2*1e16+9;
ll n,h;
ll a[mx];ll c[mx];
ll dp[mx][mx];
int main() {
cin>>n>>h;
ll sum=0;ll mxx=0;
for(int i=0;i<n;i++){
    cin>>a[i];
    mxx=max(mxx,a[i]);
    
}
if(h>mxx){cout<<0;return 0;}
memset(dp,inf,sizeof(dp));
for(int i=0;i<mxx;i++){
    dp[0][i]=abs(a[0]-i);
}
for(int i=1;i<n;i++){
    for(int j=0;j<mxx;j++){
        for(int jj=j;jj<=j+h;jj++){
            dp[i][j]=min(dp[i][j],dp[i-1][jj]+abs(a[i]-j));
        }
         for(int jj=j-1;jj>=(j-h)&&jj>=0;jj--){
           dp[i][j]=min(dp[i][j],dp[i-1][jj]+abs(a[i]-j));
        }
        
    }
}
ll ans=inf;
for(int i=0;i<=mxx;i++){ans=min(ans,dp[n-1][i]);}cout<<ans;
}

Compilation message

safety.cpp: In function 'int main()':
safety.cpp:19:11: warning: overflow in conversion from 'll' {aka 'long long int'} to 'int' changes value from '20000000000000008' to '-545128440' [-Woverflow]
   19 | memset(dp,inf,sizeof(dp));
      |           ^~~
safety.cpp:12:4: warning: unused variable 'sum' [-Wunused-variable]
   12 | ll sum=0;ll mxx=0;
      |    ^~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 3180 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 3180 KB Output is correct
2 Correct 2 ms 3180 KB Output is correct
3 Correct 2 ms 3180 KB Output is correct
4 Correct 2 ms 3180 KB Output is correct
5 Correct 2 ms 3180 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Runtime error 7 ms 6124 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 2 ms 492 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 3180 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 3180 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 3180 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 3180 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 3180 KB Output isn't correct
2 Halted 0 ms 0 KB -