Submission #1315303


Source Code Expand

#include<iostream>
#include<cstdio>
#include<cstdlib>
using namespace std;

const int maxn = 100010;
int N,A[maxn];

inline int gi()
{
	int ret = 0,f = 1; char ch;
	do ch = getchar(); while (!(ch >= '0'&&ch <= '9')&&ch != '-');
	if (ch == '-') f = -1,ch = getchar();
	do ret = ret*10+ch-'0',ch = getchar(); while (ch >= '0'&&ch <= '9');
	return ret*f;
}

int main()
{
	//freopen("A.in","r",stdin);
	//freopen("A.out","w",stdout);
	N = gi(); int ans = 0;
	for (int i = 1;i <= N;++i) A[i] = gi();
	for (int i = 1;i <= N;)
	{
		++ans;
		if (i >= N) break;
		else
		{
			int j1 = i+1,j2 = i+1;
			if (A[i+1] >= A[i]) for (j1 = i+1;j1 <= N&&A[j1] >= A[j1-1];++j1);
			if (A[i+1] <= A[i]) for (j2 = i+1;j2 <= N&&A[j2] <= A[j2-1];++j2);
			i = max(j1,j2);
		}
	}
	cout << ans << endl;
	//fclose(stdin); fclose(stdout);
	return 0;
}

Submission Info

Submission Time
Task A - Sorted Arrays
User vjudge1
Language C++14 (GCC 5.4.1)
Score 300
Code Size 825 Byte
Status AC
Exec Time 9 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 6 ms 512 KB
subtask_1_02.txt AC 5 ms 384 KB
subtask_1_03.txt AC 3 ms 384 KB
subtask_1_04.txt AC 9 ms 640 KB
subtask_1_05.txt AC 9 ms 640 KB
subtask_1_06.txt AC 9 ms 640 KB
subtask_1_07.txt AC 9 ms 640 KB
subtask_1_08.txt AC 9 ms 640 KB
subtask_1_09.txt AC 9 ms 640 KB
subtask_1_10.txt AC 1 ms 256 KB
subtask_1_11.txt AC 1 ms 256 KB