#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;
}

posted on 2011-07-12 11:05  。o 0 尘埃_o 。  阅读(943)  评论(0)    收藏  举报