127322024-12-29 14:10:17ruffbrigiÁruszállítás üres szakaszaicpp17Time limit exceeded 17/50398ms508 KiB
#include <iostream>
#include <map>
#include <set>
using namespace std;

int main()
{
    int n,m,x,y;
    cin>>n>>m;
    map<int,int> szallit;
    cin>>x>>y;
    szallit[x]=y;
    set <int>kivenni;
    for(int i=2;i<=m;i++)
    {
        cin>>x>>y;
        bool ok=false;

        kivenni.clear();
        for(const auto&pair:szallit)
        {

           // cout<<"hasonlit ("<<szallit.size()<<"):"<<pair.first<<" - "<<pair.second<<" x,y:"<<x<<" - "<<y<<endl;
            if(x<pair.first && y<pair.first)
            {
                szallit[x]=y;
                ok=true;
                break;
            }
            if(x>pair.second && y>pair.second)
            {
                continue;
            }
            if(x<pair.first && y>=pair.first && y<=pair.second)
            {

                kivenni.insert(pair.first);
               y=pair.second;
                break;
            }
            if(x>=pair.first && x<=pair.second && y>pair.second)
            {

                kivenni.insert(pair.first);
                x=pair.first;
                continue;
            }
            if(x>=pair.first && y<=pair.second)
            {
                ok=true;
                break;
            }
            if(x<pair.first && y>pair.second)
            {

                kivenni.insert(pair.first);
                continue;
            }
        }
        for (auto it = kivenni.begin(); it != kivenni.end(); ++it) {
            szallit.erase(*it);
        }
        if(!ok) szallit[x]=y;
        //for (const auto& pair : szallit) {
        //    cout<<"Kulcs: "<<pair.first<<"Ertek: "<<pair.second<<endl;
        //}
    }
    int atsz=szallit.size()-1;
    auto elso=szallit.begin();
    if(elso->first!=1) atsz++;
    auto uccso=prev(szallit.end());
    if(uccso->second!=n) atsz++;
    cout<<atsz;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base17/50
1Accepted0/01ms508 KiB
2Time limit exceeded0/0384ms508 KiB
3Accepted2/21ms320 KiB
4Accepted2/21ms320 KiB
5Wrong answer0/21ms320 KiB
6Wrong answer0/21ms320 KiB
7Wrong answer0/21ms320 KiB
8Accepted2/21ms320 KiB
9Wrong answer0/21ms320 KiB
10Accepted2/21ms320 KiB
11Wrong answer0/21ms508 KiB
12Wrong answer0/21ms320 KiB
13Wrong answer0/337ms456 KiB
14Wrong answer0/3111ms320 KiB
15Wrong answer0/346ms468 KiB
16Accepted3/361ms404 KiB
17Accepted3/361ms412 KiB
18Accepted3/370ms320 KiB
19Wrong answer0/354ms500 KiB
20Wrong answer0/396ms488 KiB
21Time limit exceeded0/3382ms320 KiB
22Time limit exceeded0/3398ms468 KiB