Submission #1220992


Source Code Expand

#include <cstdio>
#include <cstring>
#include <cassert>
#include <iostream>
#include <algorithm>
#include <vector>
#include <set>

#define FOR(i, a, b) for (int i = (a); i < (b); ++i)
#define REP(i, n) FOR (i, 0, n)
#define _ << " _ " <<
#define TRACE(x) cerr << #x << " = " << x << endl
#define debug(...) fprintf(stderr, __VA_ARGS__)
//#define debug
//#define TRACE(x)

using namespace std;

typedef long long llint;

const int MAXN = 100010;

int n, a[MAXN], dp[MAXN], inc[MAXN], dc[MAXN];

int main(void) {
  scanf("%d",&n);
  REP(i, n) scanf("%d",&a[i]);

  for (int i = n - 1; i >= 0; --i) {
    inc[i] = dc[i] = i;
    if (i + 1 < n && a[i] <= a[i+1])
      inc[i] = max(inc[i], inc[i+1]);
    if (i + 1 < n && a[i] >= a[i+1])
      dc[i] = max(dc[i], dc[i+1]);
    dp[i] = MAXN;
    dp[i] = min(dp[i], dp[inc[i] + 1] + 1);
    dp[i] = min(dp[i], dp[dc[i] + 1] + 1);
  }

  printf("%d\n",dp[0]);
  return 0;
}

Submission Info

Submission Time
Task A - Sorted Arrays
User mislav
Language C++14 (GCC 5.4.1)
Score 300
Code Size 959 Byte
Status AC
Exec Time 14 ms
Memory 1792 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:26:17: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&n);
                 ^
./Main.cpp:27:30: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   REP(i, n) scanf("%d",&a[i]);
                              ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 3
AC × 17
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt
Case Name Status Exec Time Memory
sample_01.txt AC 6 ms 764 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
subtask_1_01.txt AC 9 ms 1152 KB
subtask_1_02.txt AC 7 ms 1024 KB
subtask_1_03.txt AC 5 ms 768 KB
subtask_1_04.txt AC 13 ms 1792 KB
subtask_1_05.txt AC 13 ms 1792 KB
subtask_1_06.txt AC 13 ms 1792 KB
subtask_1_07.txt AC 13 ms 1792 KB
subtask_1_08.txt AC 13 ms 1792 KB
subtask_1_09.txt AC 14 ms 1792 KB
subtask_1_10.txt AC 1 ms 256 KB
subtask_1_11.txt AC 1 ms 256 KB