zoukankan      html  css  js  c++  java
  • 区间贪心

    题目就不做详细介绍了,网上都能找到,下面是区间贪心的简单实现

     1 #include <iostream>
     2 #include <utility>      //或者直接用<map>
     3 #include <algorithm>
     4 using namespace std;
     5 const int MAXN=1e5+5;
     6 int n,Beg[MAXN],End[MAXN],ans=0,t=0;
     7 pair<int ,int> a[MAXN];
     8 void solve(){
     9     //贪心算法:结束时间越早之后的工作数量越多
    10     //把结束时间放在pair的first,进行排序
    11     for(int i=0;i<n;i++){
    12         a[i].first=End[i];
    13         a[i].second=Beg[i];
    14     }
    15     sort(a,a+n);
    16     for(int i=0;i<n;i++){
    17         if(a[i].second>t){
    18             ans++;
    19             t=a[i].first;
    20         }
    21     }
    22     printf("%d",ans);
    23 }
    24 int main(){
    25     cin>>n;
    26     for(int i=0;i<n;i++){
    27         cin>>Beg[i]>>End[i];
    28     }
    29     solve();
    30     return 0;
    31 }
  • 相关阅读:
    Git
    java类加载
    DES-加解密C语言实现
    Android消息队列初识 && ThreadLocl 简述
    DbUTils
    JDBC(二)
    jdbc工具类
    JDBC(一)
    数据库
    MySQL数据库学习: 01 —— 数据库的概述
  • 原文地址:https://www.cnblogs.com/ZKYAAA/p/13710312.html
Copyright © 2011-2022 走看看