This documentation is automatically generated by online-judge-tools/verification-helper
View the Project on GitHub kmyk/competitive-programming-library
#include "monoids/plus_count.hpp"
#pragma once #include <utility> template <class T> struct plus_count_monoid { typedef std::pair<T, int> value_type; value_type unit() const { return std::make_pair(T(), 0); } value_type mult(value_type a, value_type b) const { return std::make_pair(a.first + b.first, a.second + b.second); } static value_type make(T a) { return std::make_pair(a, 1); } };
#line 2 "monoids/plus_count.hpp" #include <utility> template <class T> struct plus_count_monoid { typedef std::pair<T, int> value_type; value_type unit() const { return std::make_pair(T(), 0); } value_type mult(value_type a, value_type b) const { return std::make_pair(a.first + b.first, a.second + b.second); } static value_type make(T a) { return std::make_pair(a, 1); } };