Submission #1244952


Source Code Expand

#include<bits/stdc++.h>
#define range(i,a,b) for(int i = (a); i < (b); i++)
#define rep(i,b) for(int i = 0; i < (b); i++)
#define all(a) (a).begin(), (a).end()
#define show(x)  cerr << #x << " = " << (x) << endl;
#define debug(x) cerr << #x << " = " << (x) << " (L" << __LINE__ << ")" << " " << __FILE__ << endl;
using namespace std;

int main(){
    long long n;
    cin >> n;

    long long a[100005];
    rep(i,n){
        cin >> a[i];
    }

    long long dp[100005];
    rep(i,100005) dp[i] = 1000000000;
    dp[0] = 0;
    rep(i,n - 1){
        long long dist = a[i] - a[i + 1];
        if(dist < 0) dist *= -1;

        if(dp[i] + dist < dp[i + 1]){
            dp[i + 1] = dp[i] + dist;
        }

        if(i == n - 2) break;
        dist = a[i] - a[i + 2];
        if(dist < 0) dist *= -1;

        if(dp[i] + dist < dp[i + 2]){
            dp[i + 2] = dp[i] + dist;
        }
    }
    cout << dp[n - 1] << endl;
}

Submission Info

Submission Time
Task C - 柱柱柱柱柱
User noy72
Language C++14 (GCC 5.4.1)
Score 100
Code Size 965 Byte
Status AC
Exec Time 26 ms
Memory 1792 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 10
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 1024 KB
sample_02.txt AC 2 ms 1024 KB
sample_03.txt AC 2 ms 1024 KB
subtask1_01.txt AC 2 ms 1024 KB
subtask1_02.txt AC 1 ms 1024 KB
subtask1_03.txt AC 2 ms 1024 KB
subtask1_04.txt AC 26 ms 1792 KB
subtask1_05.txt AC 26 ms 1792 KB
subtask1_06.txt AC 26 ms 1792 KB
subtask1_07.txt AC 26 ms 1792 KB