Submission #1221341


Source Code Expand

#include <cstdio>
#include <cstring>
#include <ctime>
#include <cstdlib>
#include <cmath>
#include <iostream>
#include <string>
#include <queue>
#include <map>
#include <stack>
#include <vector>
#include <algorithm>
#include <set>
#include <deque>
#include <utility>
#include <chrono>
#include <sstream>
#include <iomanip>

#define INF 1 << 30
#define MOD 1000000007
#define PI 3.14159265358979
#define rep(i, n) for (int (i) = 0; (i) < (int)(n); (i)++)
#define reu(i, l, r) for (int (i) = (int)(l); (i) < (int)(r); (i)++)
#define D(x) cout << x << endl
#define d(x) cout << x
#define all(x) (x).begin(), (x).end()
#define pub(x) push_back(x)
#define pob() pop_back()
#define puf(x) push_front(x)
#define pof() pop_front()
#define mp(x, y) make_pair((x), (y))
#define fi first
#define se second

using namespace std;

typedef long long ll;
typedef vector<int> vi;
typedef vector<double> vd;
typedef vector<long long> vll;
typedef vector<string> vs;
typedef vector<bool> vb;
typedef pair<int, int> pii;
typedef pair<long, long> pll;
typedef vector<pii> vpii;
typedef vector<pll> vpll;
template<typename T, typename U> inline void amin(T &x, U y) { if (y < x) x = y; }
template<typename T, typename U> inline void amax(T &x, U y) { if (x < y) x = y; }

static const int dx[] = {0, 0, 1, -1};
static const int dy[] = {-1, 1, 0, 0};

int main() { 
        int n;
        cin >> n;
        vi a(n);
        rep(i, n) cin >> a[i];
        int flag = 0;
        int ans = 0;
        rep(i, n - 1) {
                if (a[i] < a[i + 1]) {
                        if (flag == -1) {
                                ans ++;                
                                flag = 0;
                        } else {
                                flag = 1;        
                        }
                } else if (a[i] > a[i + 1]) {
                        if (flag == 1) {
                                ans ++;
                                flag = 0;
                        } else {
                                flag = -1;
                        }
                } else {
                        continue;
                }
        }
        D(ans + 1);
        return 0;
}

Submission Info

Submission Time
Task A - Sorted Arrays
User KokiYmgch
Language C++14 (GCC 5.4.1)
Score 300
Code Size 2262 Byte
Status AC
Exec Time 41 ms
Memory 640 KB

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 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
subtask_1_01.txt AC 25 ms 512 KB
subtask_1_02.txt AC 20 ms 384 KB
subtask_1_03.txt AC 13 ms 384 KB
subtask_1_04.txt AC 41 ms 640 KB
subtask_1_05.txt AC 40 ms 640 KB
subtask_1_06.txt AC 41 ms 640 KB
subtask_1_07.txt AC 41 ms 640 KB
subtask_1_08.txt AC 41 ms 640 KB
subtask_1_09.txt AC 41 ms 640 KB
subtask_1_10.txt AC 1 ms 256 KB
subtask_1_11.txt AC 1 ms 256 KB