zoukankan      html  css  js  c++  java
  • POJ 3190(优先队列,贪心)

    POJ3190

                                                           摊位预订。
    时间限制:1000MS内存限制:65536K。
    共提交材料:12959份接受:4 546名特别法官。
    描述。

    哦,那些挑剔的N(1<;=N<;=50,000)奶牛!他们是如此挑剔,以至于每一头奶牛都只能在某个精确的时间间隔A.B(1<;=A<;=B<;=1,000,000)内挤奶,这包括A和B的倍数。显然,FJ必须创建一个预约系统,以确定每头奶牛可以分配给她的挤奶时间的摊位。当然,没有一头母牛会与其他母牛分享如此私密的时刻。

    通过确定以下内容来帮助FJ:
    牛棚中所需的最低摊位数目,以便每头奶牛都能有自己的私人挤奶时间。
    随着时间的推移,奶牛被分配到这些货摊上。
    对于每个测试数据集,许多答案都是正确的;一个程序将对您的答案进行评分。
    输入。

    第1行:单个整数,N。

    行2.N+1:行I+1用两个空格分隔的整数描述COW I的挤奶间隔。
    输出量。

    第1行:谷仓必须有的最小摊位数量。

    行2.N+1:行I+1描述了奶牛挤奶期间我将被分配到的奶牛栏。

    Sample Input

    5
    1 10
    2 4
    3 6
    5 8
    4 7

    Sample Output

    4
    1
    2
    3
    2
    4

    这道题 的意思是,n头牛,每个牛必须在固定时间吃草且一牛一窝,问最少多少窝,且每头牛是在第几个窝吃的草

    可以把每当开了一个窝,变把这个窝存入到以这个窝正在吃草的牛的结束时间进行从小到大排序,优先队列重载一下就ok了


     1 while(pque.empty()!=1)
     2         pque.pop();
     3 
     4        for(int i=1;i<=n;++i)
     5        {
     6            cin>>v[i].l>>v[i].r;
     7            v[i].pos=i;
     8        }
     9 
    10        sort(v+1,v+1+n,cmp);
    11 
    12        pque.push(v[1]);
    13        hhh[v[1].pos]=1;
    14        int ans=1;
    15        for(int i=2;i<=n;++i)
    16        {
    17            node temp=pque.top();
    18            if(v[i].l>temp.r)       //另外开个窝
    19            {
    20                hhh[v[i].pos]=hhh[temp.pos];
    21                pque.pop();
    22                pque.push(v[i]);
    23            }
    24            else
    25            {
    26                ans++;
    27                hhh[v[i].pos]=ans;          //记录位置
    28                pque.push(v[i]);
    29            }
    30        }
  • 相关阅读:
    解决DataGridView中回车换行的问题
    几条经典的SQL语句
    SQL中把一个表中的数据导出到一个新表中
    [转载]TCP的网络编程中一些典型的问题,以及一些分析和解决方案
    Delphi调用C#web服务参数无法接收的问题
    IIS服务器不支持中文文件名的解决方法
    SQL SERVER2005导入导出工具
    为远程IP服务器取个本地认识的主机名
    Win Form中如何把ENter回车键转换成Tab键
    CheckedListBox 用法
  • 原文地址:https://www.cnblogs.com/jrfr/p/10472684.html
Copyright © 2011-2022 走看看