제출 #970386

#제출 시각UTC-0아이디문제언어결과실행 시간메모리
9703862024-04-26 13:14:31maksim1744디지털 회로 (IOI22_circuit)C++17
100 / 100
698 ms35260 KiB
/*
author: Maksim1744
created: 26.04.2024 15:57:25
*/
#include "bits/stdc++.h"
using namespace std;
using ll = long long;
using ld = long double;
#define mp make_pair
#define pb push_back
#define eb emplace_back
#define sum(a) ( accumulate ((a).begin(), (a).end(), 0ll))
#define mine(a) (*min_element((a).begin(), (a).end()))
#define maxe(a) (*max_element((a).begin(), (a).end()))
#define mini(a) ( min_element((a).begin(), (a).end()) - (a).begin())
#define maxi(a) ( max_element((a).begin(), (a).end()) - (a).begin())
#define lowb(a, x) ( lower_bound((a).begin(), (a).end(), (x)) - (a).begin())
#define uppb(a, x) ( upper_bound((a).begin(), (a).end(), (x)) - (a).begin())
template<typename T> vector<T>& operator-- (vector<T> &v){for (auto& i : v) --i; return v;}
template<typename T> vector<T>& operator++ (vector<T> &v){for (auto& i : v) ++i; return v;}
template<typename T> istream& operator>>(istream& is, vector<T> &v){for (auto& i : v) is >> i; return is;}
template<typename T> ostream& operator<<(ostream& os, vector<T> v){for (auto& i : v) os << i << ' '; return os;}
template<typename T, typename U> pair<T,U>& operator-- (pair<T, U> &p){--p.first; --p.second; return p;}
template<typename T, typename U> pair<T,U>& operator++ (pair<T, U> &p){++p.first; ++p.second; return p;}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

컴파일 시 표준 에러 (stderr) 메시지

circuit.cpp: In function 'void init(int, int, std::vector<int>, std::vector<int>)':
circuit.cpp:641:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  641 |     for (int i = 0; i < P.size(); ++i) {
      |                     ~~^~~~~~~~~~
circuit.cpp: In lambda function:
circuit.cpp:663:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<mint_ns::Modular<1000002022> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  663 |         for (int i = 1; i < pref.size(); ++i)
      |                         ~~^~~~~~~~~~~~~
circuit.cpp: In instantiation of 'init(int, int, std::vector<int>, std::vector<int>)::<lambda(auto:24, int, mint_ns::Mint)> [with auto:24 = std::reference_wrapper<y_combinator_result<init(int, int, std::vector<int>, std::vector<int>)::<lambda(auto:24, int, mint_ns::Mint)> > >; mint_ns::Mint = mint_ns::Modular<1000002022>]':
circuit.cpp:624:20:   required from 'decltype(auto) y_combinator_result<Fun>::operator()(Args&& ...) [with Args = {int, int}; Fun = init(int, int, std::vector<int>, std::vector<int>)::<lambda(auto:24, int, mint_ns::Mint)>]'
circuit.cpp:673:12:   required from here
circuit.cpp:663:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<mint_ns::Modular<1000002022> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
circuit.cpp:667:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  667 |         for (int i = 0; i < g[v].size(); ++i) {
      |                         ~~^~~~~~~~~~~~~
circuit.cpp:670:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  670 |             if (i + 1 < g[v].size()) here *= suf[i + 1];
      |                 ~~~~~~^~~~~~~~~~~~~
circuit.cpp: In instantiation of 'void segtree::Segtree<Item, lazy>::build(const std::vector<U>&) [with U = mint_ns::Modular<1000002022>; Item = Item; bool lazy = true]':
circuit.cpp:404:14:   required from 'segtree::Segtree<Item, lazy>::Segtree(const std::vector<U>&) [with U = mint_ns::Modular<1000002022>; Item = Item; bool lazy = true]'
circuit.cpp:675:36:   required from here
circuit.cpp:417:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<mint_ns::Modular<1000002022> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  417 |         for (int i = 0; i < v.size(); ++i) {
      |                         ~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...