zoukankan      html  css  js  c++  java
  • codevs 2830 蓬莱山辉夜

    传送门

    2830 蓬莱山辉夜

     时间限制: 1 s
     空间限制: 32000 KB
     题目等级 : 黄金 Gold
     
     
    题目描述 Description

    在幻想乡中,蓬莱山辉夜是月球公主,居住在永远亭上,二次设定说她成天宅在家里玩电脑,亦称NEET姬
    一天,她要她帮忙升级月球的网络服务器,应为注册用户过多(月兔和地球上的巫女都注册了……),所以作为代理管理员(俗称网管)的她,非常蛋疼。
    注册用户格式:
    TouhouMaiden 2004 200
    其中前面的Touhoumaiden是预设,不做更改,第一个数是标识,第二个数是每次接受信息访问的间隔用时。
    你要做的事,就是给定一群用户及n,求出这n次信息访问中,访问到了谁?

    presented by Izayoi sakuya

    输入描述 Input Description

    以题目预设格式输入,另起一行以‘#’结束,在其一行输入n

    输出描述 Output Description

    n行,每行输出第行次后,信息访问到了谁?若在一个时间有若干少女被访问到,输出字典序最小的那位少女的标识

    样例输入 Sample Input
    TouhouMaiden 2004 200
    TouhouMaiden 2005 300
    #
    5
    样例输出 Sample Output
    2004
    2005
    2004
    2004
    2005
    数据范围及提示 Data Size & Hint

    标识和每次信息访问间隔均在integer内,n<=10000

    原本是要用到堆,但深搜+时间即可搞定

    数据有点少但也都够变态了

    【思路】

    每次访问之后将他的时间+他的访问间隔插入堆中。

    模拟数据就能知道大体的过程。

    【code】

    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    #include<queue>
    using namespace std;
    int n,id,wait;
    string s;
    struct Per
    {
        int id,t,wait;
        bool operator < (const Per b) const
        {
            if(t==b.t)return id>b.id;
            return t>b.t;
        }
    };
    priority_queue<Per>q;
    int main()
    {
        cin>>s;
    //    while(scanf("%s",s)&&s[0]!='#')
        while(s[0]!='#')
        {
            scanf("%d%d",&id,&wait);
            {
                Per x;
                x.id =id;x.wait=wait;x.t=wait;
                q.push(x);
            }
            cin>>s;
        }
        scanf("%d",&n);
        for(int i=1;i<=n;i++)
        {
            Per y=q.top();q.pop();
            printf("%d
    ",y.id);
            y.t+=y.wait;
            q.push(y);
        }
        return 0;
    }
  • 相关阅读:
    POJ 1741 Tree(树分治)
    HDU 2196 Computer(树形dp)
    2015沈阳区域赛Meeting(最短路 + 建图)
    make the fence great again(dp 二维)
    2017沈阳区域赛Infinite Fraction Path(BFS + 剪枝)
    bitset详解
    2016青岛区域赛.Coding Contest(费用流 + 概率计算转换为加法计算)
    2019上海网络赛B题(差分 + 离散化 or 差分 + 思维)
    poj-1664.放苹果.(递推)
    hdu-4738.Caocao's Bridges(图中权值最小的桥)
  • 原文地址:https://www.cnblogs.com/zzyh/p/6970711.html
Copyright © 2011-2022 走看看