126962024-12-28 15:40:42BikficcÁruszállítás (75 pont)cpp17Elfogadva 75/7583ms1268 KiB
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct elem
    {
        int kezd,veg;
    };

bool hasonlit(elem a, elem b)
{
    return a.kezd < b.kezd;
}

int main()
{
    int n, m, vege, eleje;
    vector <elem> v;
    cin >> n >> m;
    v.resize(m);
    for(int i = 0; i < m; i++)
    {
        cin >> v[i].kezd >> v[i].veg;
    }
    sort(v.begin(),v.end(),hasonlit);
    eleje=v[0].kezd;
    vege=v[0].veg;
    int db=eleje-1;
    for (int i=1; i<m; i++)
    {
        if (v[i].kezd==eleje)
        {
            if (vege<v[i].veg)
            {
                vege=v[i].veg;
            }
        }
        else
        {
            ///eleje<v[i].kezd
            if (v[i].kezd<=vege)
            {
                if (v[i].veg>vege)
                {
                    vege=v[i].veg;
                }
            }
            else
            /// v[i].kezd>vege
            {
               db=db+(v[i].kezd-vege);
               eleje=v[i].kezd;
               vege=v[i].veg;
            }
        }
    }
    db=db+n-vege;
    cout << db;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base75/75
1Elfogadva0/01ms588 KiB
2Elfogadva0/083ms1268 KiB
3Elfogadva3/31ms320 KiB
4Elfogadva3/31ms320 KiB
5Elfogadva3/31ms508 KiB
6Elfogadva3/31ms508 KiB
7Elfogadva3/31ms320 KiB
8Elfogadva4/41ms324 KiB
9Elfogadva4/41ms320 KiB
10Elfogadva4/41ms320 KiB
11Elfogadva4/41ms320 KiB
12Elfogadva4/41ms320 KiB
13Elfogadva4/44ms448 KiB
14Elfogadva4/47ms320 KiB
15Elfogadva4/44ms436 KiB
16Elfogadva4/47ms508 KiB
17Elfogadva4/47ms472 KiB
18Elfogadva4/48ms472 KiB
19Elfogadva4/47ms468 KiB
20Elfogadva4/48ms320 KiB
21Elfogadva4/475ms1080 KiB
22Elfogadva4/479ms976 KiB