int schedule(vector < double > data) {
int n = data.size();
int m = n / 2;
vector<pair<double, double>> intervals;
for (int i = 0; i < m; i++) {
pair<double, double> interval;
interval.first = data[2*i];
interval.second = data[2*i+1];
intervals.push_back(interval);
}
sort(intervals.begin(), intervals.end(), [](pair<double, double> a, pair<double, double> b){return a.first < b.first;});
int res = 0, pre = 0;
for (int i = 1; i < m; i++) {
if (intervals[i].first < intervals[pre].second) {
res++;
if (intervals[i].second < intervals[pre].second)
pre = i;
}
else
pre = i;
}
return res;
}
这个只有83%,不知道哪里错了?