zoukankan      html  css  js  c++  java
  • SDUT 2073 活动选择问题

    此题是上机考试题,是个水题,但是考试的时候给弄晕了,没做出来。要先排序。然后就是贪心了。

    题目描述

    sdut大学生艺术中心每天都有n个活动申请举办,但为了举办更多的活动必须要放弃一些活动,求每天最多能举办多少场活动。

    输入

     输入包括多组输入,每组输入第一行为申请的活动数n,从第2行到n+1行,每行两个数,是每个活动的开始时间b,结束时间e;

    输出

     输出每天最多能举办的活动数。

    示例输入

    12
    15 20
    15 19
    8 18
    10 15
    4 14
    6 12
    5 10
    2 9
    3 8
    0 7
    3 4
    1 3

    示例输出

    5

    View Code
     1 #include<stdio.h>
     2 int main()
     3 {
     4     int i,j,n,t,b[100],e[100],s;
     5     while(scanf("%d",&n)!=EOF)
     6     {
     7         for(i=0;i<n;i++)
     8         scanf("%d%d",&b[i],&e[i]);
     9     for(i=0;i<n-1;i++)
    10         for(j=i+1;j<n;j++)
    11             if(e[i]>e[j])
    12             {
    13                 t=e[i];e[i]=e[j];e[j]=t;
    14                 t=b[i];b[i]=b[j];b[j]=t;
    15             }
    16     t=e[0];s=0;
    17    for(i=0;i<n;i++)
    18     {
    19         if(b[i]>=t)
    20         {
    21             t=e[i];
    22             s++;
    23         }
    24    }
    25     printf("%d\n",s+1);
    26     }
    27     return 0;
    28 } 
  • 相关阅读:
    ORACLE表空间管理维护
    oracle表分区详解
    Jquery
    B
    A
    E
    字符串排成字典序,字符串数组
    命令,快捷键,配置
    第一个java程序
    A
  • 原文地址:https://www.cnblogs.com/timeship/p/2519796.html
Copyright © 2011-2022 走看看