제출 #800372

#제출 시각아이디문제언어결과실행 시간메모리
80037212345678Lasers (NOI19_lasers)C++17
100 / 100
102 ms13852 KiB
#include <bits/stdc++.h>

using namespace std;

const int nx=5e5+5;
int l, r, qs[nx], x, c, p, ans;
vector<pair<int, int>> v;

int main()
{
    cin.tie(NULL)->sync_with_stdio(false);
    cin>>l>>r;
    for (int i=0; i<r; i++)
    {
        cin>>x;
        for (int i=1; i<=x; i++) cin>>qs[i], qs[i]+=qs[i-1];
        for (int i=0; i<x; i++)
        {
            int cl=qs[i], cr=qs[x]-qs[i];
            if (qs[i+1]<l-cr) continue;
            v.push_back({qs[i+1]+1, -1});
            v.push_back({l-cr, 1});
        }
    }
    sort(v.begin(), v.end());
    for (auto [a, b]:v)
    {
        //cout<<a<<' '<<b<<'\n';
        if (c==0) p=a;
        else if (c+b==0) ans+=(a-p-1);
        c+=b;
    }
    cout<<ans;
}

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

lasers.cpp: In function 'int main()':
lasers.cpp:19:17: warning: unused variable 'cl' [-Wunused-variable]
   19 |             int cl=qs[i], cr=qs[x]-qs[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...