templates

This documentation is automatically generated by online-judge-tools/verification-helper

View the Project on GitHub plasmatic1/templates

:warning: external/E_reverse_it.cpp

Code

template<typename T> class reverse {
private:
    T& iterable_;
public:
    explicit reverse(T& iterable) : iterable_{iterable} {}
    auto begin() const { return std::rbegin(iterable_); }
    auto end() const { return std::rend(iterable_); }
};
template<typename T> class reverse_move {
private:
    T iterable_;
public:
    explicit reverse_move(T&& iterable) : iterable_{std::move(iterable)} {}
    auto begin() const { return std::rbegin(iterable_); }
    auto end() const { return std::rend(iterable_); }
};
#line 1 "external/E_reverse_it.cpp"
template<typename T> class reverse {
private:
    T& iterable_;
public:
    explicit reverse(T& iterable) : iterable_{iterable} {}
    auto begin() const { return std::rbegin(iterable_); }
    auto end() const { return std::rend(iterable_); }
};
template<typename T> class reverse_move {
private:
    T iterable_;
public:
    explicit reverse_move(T&& iterable) : iterable_{std::move(iterable)} {}
    auto begin() const { return std::rbegin(iterable_); }
    auto end() const { return std::rend(iterable_); }
};
Back to top page