Submission #4638184
Source Code Expand
#include <bits/stdc++.h> using namespace std; #define rep(i,n) for (int (i)=(0);(i)<(int)(n);++(i)) using ll = long long; using P = pair<ll, ll>; template<class T> inline bool chmax(T& a, T b) {if (a < b){a = b;return 1;}return 0;} template<class T> inline bool chmin(T& a, T b) {if (a > b){a = b;return 1;}return 0;} const long long LLINF = 1LL << 60; using namespace std; ll dp[100001]; // // ll solve(int i) // { // if (i == 0) return 0; // // ll res = LLINF; // chmin(res, solve(i-1) + abs(h[i] - h[i-1])); // chmin(res, solve(i-2) + abs(h[i] - h[i-2])); // return res; // } int main() { int N; cin >> N; vector<ll> h(N); rep(i, N) cin >> h[i]; // 初期化 fill(dp, dp+N, LLINF); dp[0] = 0; dp[1] = abs(h[0] - h[1]); for (int i=2; i<N; ++i) { dp[i] = min(dp[i-1] + abs(h[i-1] - h[i]), dp[i-2] + abs(h[i-2] - h[i])); } cout << dp[N-1] << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - 柱柱柱柱柱 |
User | dsytk7 |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 991 Byte |
Status | AC |
Exec Time | 26 ms |
Memory | 1792 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | ||||
Status |
|
|
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 | 256 KB |
sample_02.txt | AC | 1 ms | 256 KB |
sample_03.txt | AC | 1 ms | 256 KB |
subtask1_01.txt | AC | 1 ms | 256 KB |
subtask1_02.txt | AC | 1 ms | 256 KB |
subtask1_03.txt | AC | 1 ms | 256 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 |