第五题这个代码只过了22.22%,很迷,给的三个用例都过了啊,请大佬指教

#include<iostream>
#include<vector>
using namespace std;
//最少删除的区间的个数,使得区间没有重叠
int eraseOverlapIntervals(vector<pair<int,int>>& intervals) 
{
    int res = 0, n = intervals.size(), last = 0;
    for (int i = 1; i < n; ++i) 
    {
        if (intervals[i].first < intervals[last].second) 
        {
            ++res;
            if (intervals[i].second< intervals[last].second) 
                last = i;
        }
        else 
        {
            last = i;
        }
    }
    return res;
}
int main()
{
    int N;
    cin >> N;
    int M;
    cin >> M;
    vector<pair<int, int>> intervals;
    int start, end;
    for (int i = 0; i < N; i++)
    {
        cin >> start >> end;
        if (start > end)
            end += M;
        intervals.push_back({ start, end });
    }
    int minErase = eraseOverlapIntervals(intervals);
    cout << intervals.si***Erase << endl;
    system("pause");
    return 0;
}