Zasto ovo ne moze da se kompajlira?
#include <iostream>
#include <vector>
using namespace std;
class interval {
public:
int x,y;
interval(int a,int b) { x=a; y=b; }
};
bool param(interval A, interval B) {
return A.y < B.y;
}
vector<interval> in;
int i,j,n,m,sol=0;
int main() {
cin >> n;
for (i=0;i<n;i++) {
cin >> j >> m;
in.push_back(interval(j,m));
}
sort(in.begin(),in.end(),param);
sol = 0;
for (i=0;i<n;i++) {
int tr = 1, j = i, k = i+1;
for (;k<n && n-k>sol;k++)
if (in[k].x >= in[j].y) {
j = k;
tr++;
}
if (tr>sol) sol=tr;
}
cout << sol << endl;
//system ("pause");
}
#include <iostream>
#include <vector>
using namespace std;
class interval {
public:
int x,y;
interval(int a,int b) { x=a; y=b; }
};
bool param(interval A, interval B) {
return A.y < B.y;
}
vector<interval> in;
int i,j,n,m,sol=0;
int main() {
cin >> n;
for (i=0;i<n;i++) {
cin >> j >> m;
in.push_back(interval(j,m));
}
sort(in.begin(),in.end(),param);
sol = 0;
for (i=0;i<n;i++) {
int tr = 1, j = i, k = i+1;
for (;k<n && n-k>sol;k++)
if (in[k].x >= in[j].y) {
j = k;
tr++;
}
if (tr>sol) sol=tr;
}
cout << sol << endl;
//system ("pause");
}