Submission #50548453


Source Code Expand

#include <bits/stdc++.h>
#include <atcoder/modint>

namespace {
    using ModInt [[maybe_unused]] = atcoder::modint998244353;
    using Num [[maybe_unused]] = long long int;
    using Vec [[maybe_unused]] = std::vector<Num>;
    using Set [[maybe_unused]] = std::set<Num>;
    using Mset [[maybe_unused]] = std::multiset<Num>;
    using Edges [[maybe_unused]] = std::vector<std::vector<Num>>;

    template<typename T>
    using Q [[maybe_unused]] = std::queue<T>;

    template<typename T>
    using PQ [[maybe_unused]] = std::priority_queue<T, std::vector<T>, std::greater<T>>;
}

Num n {0};
Vec ns;

void solve(std::istream& is, std::ostream& os) {
    is >> n;
    ns.resize(n);

    for(auto&& a : ns) {
        is >> a;
    }

    if (ns.at(0) != 0) {
        os << "No\n";
        return;
    }

    Num n_ones {0};
    Num index {0};
    for(; index<n; ++index) {
        if (ns.at(index) != (index & 1)) {
            break;
        }
        ++n_ones;
    }

    if (index == n) {
        os << "Yes\n";
        return;
    }

    Num prev = 1 - ns.at(index);
    for(; index<n; ++index) {
        Num current = ns.at(index);
        n_ones -= (prev != current);
        prev = current;
    }

    if (ns.back() == 0) {
        ++n_ones;
    }

    if (n_ones >= 0) {
        os << "Yes\n";
    } else {
        os << "No\n";
    }
}

int main(void) {
    solve(std::cin, std::cout);
    return 0;
}

Submission Info

Submission Time
Task B - 01 Generation
User zettsut
Language C++ 20 (gcc 12.2)
Score 500
Code Size 1480 Byte
Status AC
Exec Time 20 ms
Memory 4896 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 3
AC × 49
Set Name Test Cases
Sample 00-sample-001.txt, 00-sample-002.txt, 00-sample-003.txt
All 00-sample-001.txt, 00-sample-002.txt, 00-sample-003.txt, 01-001.txt, 01-002.txt, 01-003.txt, 01-004.txt, 01-005.txt, 01-006.txt, 01-007.txt, 01-008.txt, 01-009.txt, 01-010.txt, 01-011.txt, 01-012.txt, 01-013.txt, 01-014.txt, 01-015.txt, 01-016.txt, 01-017.txt, 01-018.txt, 01-019.txt, 01-020.txt, 01-021.txt, 01-022.txt, 01-023.txt, 01-024.txt, 01-025.txt, 01-026.txt, 01-027.txt, 01-028.txt, 01-029.txt, 01-030.txt, 01-031.txt, 01-032.txt, 01-033.txt, 01-034.txt, 01-035.txt, 01-036.txt, 01-037.txt, 01-038.txt, 01-039.txt, 01-040.txt, 01-041.txt, 01-042.txt, 01-043.txt, 01-044.txt, 01-045.txt, 01-046.txt
Case Name Status Exec Time Memory
00-sample-001.txt AC 1 ms 3676 KiB
00-sample-002.txt AC 1 ms 3628 KiB
00-sample-003.txt AC 1 ms 3532 KiB
01-001.txt AC 1 ms 3532 KiB
01-002.txt AC 1 ms 3484 KiB
01-003.txt AC 5 ms 3596 KiB
01-004.txt AC 6 ms 3672 KiB
01-005.txt AC 11 ms 3932 KiB
01-006.txt AC 4 ms 3476 KiB
01-007.txt AC 5 ms 3488 KiB
01-008.txt AC 12 ms 4200 KiB
01-009.txt AC 2 ms 3572 KiB
01-010.txt AC 13 ms 4124 KiB
01-011.txt AC 15 ms 4468 KiB
01-012.txt AC 17 ms 4536 KiB
01-013.txt AC 10 ms 3864 KiB
01-014.txt AC 17 ms 4412 KiB
01-015.txt AC 17 ms 4628 KiB
01-016.txt AC 1 ms 3628 KiB
01-017.txt AC 12 ms 3956 KiB
01-018.txt AC 6 ms 3676 KiB
01-019.txt AC 6 ms 3592 KiB
01-020.txt AC 4 ms 3676 KiB
01-021.txt AC 6 ms 3676 KiB
01-022.txt AC 4 ms 3532 KiB
01-023.txt AC 2 ms 3512 KiB
01-024.txt AC 3 ms 3532 KiB
01-025.txt AC 19 ms 4752 KiB
01-026.txt AC 19 ms 4800 KiB
01-027.txt AC 20 ms 4664 KiB
01-028.txt AC 19 ms 4800 KiB
01-029.txt AC 19 ms 4740 KiB
01-030.txt AC 20 ms 4800 KiB
01-031.txt AC 19 ms 4732 KiB
01-032.txt AC 19 ms 4896 KiB
01-033.txt AC 19 ms 4700 KiB
01-034.txt AC 19 ms 4656 KiB
01-035.txt AC 19 ms 4728 KiB
01-036.txt AC 19 ms 4804 KiB
01-037.txt AC 18 ms 4732 KiB
01-038.txt AC 20 ms 4740 KiB
01-039.txt AC 19 ms 4748 KiB
01-040.txt AC 19 ms 4744 KiB
01-041.txt AC 18 ms 4724 KiB
01-042.txt AC 19 ms 4748 KiB
01-043.txt AC 19 ms 4652 KiB
01-044.txt AC 19 ms 4804 KiB
01-045.txt AC 19 ms 4660 KiB
01-046.txt AC 20 ms 4736 KiB