#include <vector>
#include <algorithm>
#include <iostream>
#include <utility>
using namespace std;
vector<pair<int, int>> v{ { 1, 3 }, { 2, 5 }, { 6, 9 } };
int solve(){
vector<pair<int, int>> results;
for (auto& vIndex : v){
auto resultIndex = find_if(results.begin(), results.end(), [vIndex](const pair<int, int>& i){return vIndex.first >= i.first && vIndex.first <= i.second || vIndex.second >= i.first && vIndex.second <= i.second; });
if (resultIndex == results.end()){
results.push_back(vIndex);
}else{
resultIndex->first = min(vIndex.first, resultIndex->first);
resultIndex->second = max(vIndex.second, resultIndex->second);
}
}
return results.size();
}
int main(){
cout << solve() << endl;
return 0;
}
I2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dXRpbGl0eT4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2ZWN0b3I8cGFpcjxpbnQsIGludD4+IHZ7IHsgMSwgMyB9LCB7IDIsIDUgfSwgeyA2LCA5IH0gfTsKCmludCBzb2x2ZSgpewoJdmVjdG9yPHBhaXI8aW50LCBpbnQ+PiByZXN1bHRzOwoKCWZvciAoYXV0byYgdkluZGV4IDogdil7CgkJYXV0byByZXN1bHRJbmRleCA9IGZpbmRfaWYocmVzdWx0cy5iZWdpbigpLCByZXN1bHRzLmVuZCgpLCBbdkluZGV4XShjb25zdCBwYWlyPGludCwgaW50PiYgaSl7cmV0dXJuIHZJbmRleC5maXJzdCA+PSBpLmZpcnN0ICYmIHZJbmRleC5maXJzdCA8PSBpLnNlY29uZCB8fCB2SW5kZXguc2Vjb25kID49IGkuZmlyc3QgJiYgdkluZGV4LnNlY29uZCA8PSBpLnNlY29uZDsgfSk7CgoJCWlmIChyZXN1bHRJbmRleCA9PSByZXN1bHRzLmVuZCgpKXsKCQkJcmVzdWx0cy5wdXNoX2JhY2sodkluZGV4KTsKCQl9ZWxzZXsKCQkJcmVzdWx0SW5kZXgtPmZpcnN0ID0gbWluKHZJbmRleC5maXJzdCwgcmVzdWx0SW5kZXgtPmZpcnN0KTsKCQkJcmVzdWx0SW5kZXgtPnNlY29uZCA9IG1heCh2SW5kZXguc2Vjb25kLCByZXN1bHRJbmRleC0+c2Vjb25kKTsKCQl9Cgl9CglyZXR1cm4gcmVzdWx0cy5zaXplKCk7Cn0KCmludCBtYWluKCl7Cgljb3V0IDw8IHNvbHZlKCkgPDwgZW5kbDsKCglyZXR1cm4gMDsKfQ==