제출 #848994

#제출 시각UTC-0아이디문제언어결과실행 시간메모리
8489942023-09-13 20:06:45popovicirobert가로등 (APIO19_street_lamps)C++14
0 / 100
158 ms524288 KiB
#include <bits/stdc++.h>
#define lsb(x) (x & (-x))
using ull = unsigned long long;
using ll = long long;
using namespace std;
namespace Containers {
struct Segment {
long long l, r;
bool operator<(const Segment& rhs) const noexcept {
if (l == rhs.l) return r < rhs.r;
return l < rhs.l;
}
};
class DisjointSegmentContainer : public multiset<Segment> {
public:
vector<Segment> Add(Segment segm) {
auto intersecting = GetIntersecting(segm);
ll new_l = segm.l;
ll new_r = segm.r;
for (auto s : intersecting) {
new_l = min(new_l, s.l);
new_r = max(new_r, s.r);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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

street_lamps.cpp: In function 'int main()':
street_lamps.cpp:378:36: warning: narrowing conversion of 's.std::pair<long long int, long long int>::first' from 'long long int' to 'int' [-Wnarrowing]
  378 |         st.set(Space2D::Update2D{s.first, s.second, s.first, s.second}, 1);
      |                                  ~~^~~~~
street_lamps.cpp:378:45: warning: narrowing conversion of 's.std::pair<long long int, long long int>::second' from 'long long int' to 'int' [-Wnarrowing]
  378 |         st.set(Space2D::Update2D{s.first, s.second, s.first, s.second}, 1);
      |                                           ~~^~~~~~
street_lamps.cpp:378:55: warning: narrowing conversion of 's.std::pair<long long int, long long int>::first' from 'long long int' to 'int' [-Wnarrowing]
  378 |         st.set(Space2D::Update2D{s.first, s.second, s.first, s.second}, 1);
      |                                                     ~~^~~~~
street_lamps.cpp:378:64: warning: narrowing conversion of 's.std::pair<long long int, long long int>::second' from 'long long int' to 'int' [-Wnarrowing]
  378 |         st.set(Space2D::Update2D{s.first, s.second, s.first, s.second}, 1);
      |                                                              ~~^~~~~~
street_lamps.cpp: In lambda function:
street_lamps.cpp:417:30: warning: narrowing conversion of 'segm.Containers::Segment::l' from 'long long int' to 'int' [-Wnarrowing]
  417 |                 st.set({segm.l, segm.r, segm.l, segm.r}, -1);
      |                         ~~~~~^
street_lamps.cpp:417:38: warning: narrowing conversion of 'segm.Containers::Segment::r' from 'long long int' to 'int' [-Wnarrowing]
  417 |                 st.set({segm.l, segm.r, segm.l, segm.r}, -1);
      |                                 ~~~~~^
street_lamps.cpp:417:46: warning: narrowing conversion of 'segm.Containers::Segment::l' from 'long long int' to 'int' [-Wnarrowing]
  417 |                 st.set({segm.l, segm.r, segm.l, segm.r}, -1);
      |                                         ~~~~~^
street_lamps.cpp:417:54: warning: narrowing conversion of 'segm.Containers::Segment::r' from 'long long int' to 'int' [-Wnarrowing]
  417 |                 st.set({segm.l, segm.r, segm.l, segm.r}, -1);
      |                                                 ~~~~~^
street_lamps.cpp: In lambda function:
street_lamps.cpp:422:30: warning: narrowing conversion of 'segm.Containers::Segment::l' from 'long long int' to 'int' [-Wnarrowing]
  422 |                 st.set({segm.l, segm.r, segm.l, segm.r}, qq + 1);
      |                         ~~~~~^
street_lamps.cpp:422:38: warning: narrowing conversion of 'segm.Containers::Segment::r' from 'long long int' to 'int' [-Wnarrowing]
  422 |                 st.set({segm.l, segm.r, segm.l, segm.r}, qq + 1);
      |                                 ~~~~~^
street_lamps.cpp:422:46: warning: narrowing conversion of 'segm.Containers::Segment::l' from 'long long int' to 'int' [-Wnarrowing]
  422 |                 st.set({segm.l, segm.r, segm.l, segm.r}, qq + 1);
      |                                         ~~~~~^
street_lamps.cpp:422:54: warning: narrowing conversion of 'segm.Containers::Segment::r' from 'long long int' to 'int' [-Wnarrowing]
  422 |                 st.set({segm.l, segm.r, segm.l, segm.r}, qq + 1);
      |                                                 ~~~~~^
#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...