#include "stdafx.h"
#include <iostream>
#include <vector>
#include <algorithm>
typedef std::pair<long, long> SE_Date;
typedef std::vector<SE_Date> VEC_SE_Data;
bool data_order(const std::pair <long, long> a, const std::pair <long, long> b)
{
return a.first < b.first; // >为降序
}
int _tmain(int argc, _TCHAR* argv[])
{
VEC_SE_Data vec_data;
vec_data.push_back(SE_Date(3 , 6));
vec_data.push_back(SE_Date(5 , 8));
vec_data.push_back(SE_Date(2 , 5));
vec_data.push_back(SE_Date(11 , 16));
vec_data.push_back(SE_Date(10 , 15));
vec_data.push_back(SE_Date(20 , 25));
vec_data.push_back(SE_Date(21 , 26));
sort(vec_data.begin(), vec_data.end(), data_order);
//std::vector < SE_Date > ::iterator it = vec_data.begin(), end = vec_data.end();
//for(; it != end; ++it)
// std::cout << it->first << std::endl;
VEC_SE_Data vec_Oudata;
vec_Oudata.push_back(vec_data[0]);
for ( int i = 1; i < vec_data.size(); i++)
{
if (vec_Oudata[vec_Oudata.size()-1].second < vec_data[i].first)
{
vec_Oudata.push_back(vec_data[i]);
}
else
{
vec_Oudata[vec_Oudata.size()-1].second = vec_data[i].second;
}
}
//for ( int j = 0; j < vec_Oudata.size(); j++)
//{
// std::cout << vec_Oudata[j].first << "--" << vec_Oudata[j].second << std::endl;
//}
return 0;
}
浙公网安备 33010602011771号