Submission #6692013


Source Code Expand

Copy
#pragma GCC optimize("Ofast,unroll-loops,no-stack-protector,fast-math")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
//#pragma comment(linker, "/stack:200000000")
 
#include <bits/stdc++.h>
 
using namespace std;
 
typedef long long ll;
typedef unsigned long long ull;
typedef double ld;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;
typedef pair<ld,ld> pdd;
 
#define X first
#define Y second
 
//#include <boost/unordered_map.hpp>
//using namespace boost;
 
/*
#include <ext/pb_ds/tree_policy.hpp>
#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;
typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> rbtree;
rbtree T;
*/
 
using i32 = int;
using i64 = long long;
using u8 = unsigned char;
using u32 = unsigned;
using u64 = unsigned long long;
using f64 = double;
using f80 = long double;
//using i128 = __int128_t;
//using u128 = __uint128_t;
using i128 = i64;
using u128 = u64;
 
ll power(ll a, ll b, ll p)
{
    if (!b) return 1;
    ll t = power(a, b/2, p);
    t = t*t%p;
    if (b&1) t = t*a%p;
    return t;
}
 
ll exgcd(ll a, ll b, ll &x, ll &y)
{
    if (b == 0)
    {
        x = 1;
        y = 0;
        return a;
    }
    ll px, py;
    ll d = exgcd(b, a%b, px, py);
    x = py;
    y = px-a/b*py;
    return d;
}
 
template<class T>
inline void freshmin(T &a, const T &b)
{
    if (a > b) a = b;
}
 
template<class T>
inline void freshmax(T &a, const T &b)
{
    if (a < b) a = b;
}
 
//#define getchar getchar_unlocked
//#define putchar putchar_unlocked
 
int inp() {
    int x = 0, f = 0; char ch;
    for(ch = getchar(); !isdigit(ch); ch = getchar())
        if(ch == '-') f = 1;
    for(; isdigit(ch); x = x * 10 + ch - '0', ch = getchar());
    return f ? -x : x;
}
 
ll inp_ll() {
    ll x = 0; int f = 0; char ch;
    for(ch = getchar(); !isdigit(ch); ch = getchar())
        if(ch == '-') f = 1;
    for(; isdigit(ch); x = x * 10 + ch - '0', ch = getchar());
    return f ? -x : x;
}
 
template<class T>
bool read(T &x)
{
    x = 0;
    char ch = getchar();
    if (ch == EOF) return 0;
    for(; !isdigit(ch); )
    {
        ch = getchar();
        if (ch == EOF) return 0;
    }
    for(; isdigit(ch); x = x * 10 + ch - '0', ch = getchar());
    return 1;
}
 
template<class T>
void write(T x)
{
    static char s[22];
    static char *it = s+20;
    static char *end = s+20;
    if (!x)
        *-- it = '0';
    while (x)
    {
        *-- it = x%10+'0';
        x /= 10;
    }
    for (; it < end; ++ it)
        putchar(*it);
}
 
template<class T>
void writeln(T x)
{
    write(x);
    putchar('\n');
}
 
const int MAXN = 200010;
const int INF = 1000000000;
const int MOD = 1000000007;

int n, a[MAXN], f[MAXN][2];

int main()
{
	
	n = inp();
	for (int i = 1; i <= n; ++ i)
		a[i] = inp();
	f[1][0] = f[1][1] = 1;
	for (int i = 2; i <= n; ++ i)
	{
		for (int x = 0; x < 2; ++ x)
			for (int y = 0; y < 2; ++ y)
			{
				if (f[i-1][x] && a[i-1]-x <= a[i]-y) f[i][y] = 1;
			}
	}
	puts(f[n][0] || f[n][1] ? "Yes" : "No");
	
	return 0;
}

Submission Info

Submission Time
Task C - Build Stairs
User liouzhou_101
Language C++14 (GCC 5.4.1)
Score 300
Code Size 3220 Byte
Status AC
Exec Time 10 ms
Memory 1408 KB

Judge Result

Set Name All Sample
Score / Max Score 300 / 300 0 / 0
Status
AC × 17
AC × 4
Set Name Test Cases
All sample_01, sample_02, sample_03, sample_04, testcase_01, testcase_02, testcase_03, testcase_04, testcase_05, testcase_06, testcase_07, testcase_08, testcase_09, testcase_10, testcase_11, testcase_12, testcase_13
Sample sample_01, sample_02, sample_03, sample_04
Case Name Status Exec Time Memory
sample_01 AC 1 ms 256 KB
sample_02 AC 1 ms 256 KB
sample_03 AC 1 ms 256 KB
sample_04 AC 1 ms 256 KB
testcase_01 AC 6 ms 512 KB
testcase_02 AC 9 ms 640 KB
testcase_03 AC 9 ms 1408 KB
testcase_04 AC 10 ms 1408 KB
testcase_05 AC 4 ms 512 KB
testcase_06 AC 5 ms 640 KB
testcase_07 AC 10 ms 1152 KB
testcase_08 AC 6 ms 1408 KB
testcase_09 AC 6 ms 640 KB
testcase_10 AC 9 ms 640 KB
testcase_11 AC 9 ms 1408 KB
testcase_12 AC 1 ms 256 KB
testcase_13 AC 10 ms 1408 KB