贪心算法设计 关于区间选择问题
2015-04-02 21:54
323 查看
/* 现在有n项工作,知道每一项工作的开始时间和结束时间,问最多可以选择多少工作 算法设计:贪心算法,不断选择不冲突的那些结束时间最短的工作 */ #include<iostream> #include<vector> #define max_n 100001 using namespace std; int N; //first is the start of the job,and the secone is the end time of the job typedef pair<int, int> p; p vit[max_n]; int main() { while (cin >> N){ for (int i = 0; i < N; i++){ cin >> vit[i].first >> vit[i].second; } //sort according to the end time for (int i = 0; i < N - 1; i++){ for (int j = i + 1; j < N; j++){ if (vit[i].second>vit[j].second){ p t = vit[i]; vit[i] = vit[j]; vit[j] = t; } } } //end the sort,then start to choose the job int ans = 0,pre=0; for (int i = 0; i < N; i++){ if (pre < vit[i].first){ ans++; pre = vit[i].second; } } cout << ans << endl; } return 0; }
相关文章推荐
- ACM_程序设计竞赛:贪心算法:区间问题
- 贪心算法,关于区间问题
- 算法竞赛入门经典:第八章 高效算法设计 8.17 贪心之选择不相交区间
- 图的点着色、区间着色问题及其应用(基于贪心思想的DFS回溯法求点着色问题和区间着色算法求解任务调度问题)
- 集训第四周(高效算法设计)E题 (区间覆盖问题)
- 选择不相交区间(活动安排问题)(贪心)(HDU2037)
- 算法竞赛入门经典:第八章 高效算法设计 8.16贪心之乘船问题
- [算法思考]关于2-sat判定求解中“同一组内必须选择”问题的思考
- 【算法导论】贪心算法之活动选择问题
- 高效算法——D 贪心,区间覆盖问题
- 贪心算法之活动选择问题
- 贪心算法之区间图着色问题
- 贪心算法-活动选择问题
- 关于DNS转发时地址选择算法的问题
- Num 25 : NYOJ0014 会场安排问题 + HDOJ2037:今年暑假不AC [ 贪心 ][ 选择不相交区间 ]
- 贪心算法解决活动选择问题
- 贪心算法求解活动选择问题
- 贪心算法之区间覆盖问题
- 贪心算法---活动选择问题
- 贪心算法专题小结——区间相关问题