每日一题冲刺大厂第十三天 海港

简介: 大家好,我是泡泡,给大家带来每日一题的目的是为了更好的练习算法,我们的每日一题这个月进度是数据结构,让大家练到各种各样的数据结构题目,熟悉数据结构的增删改查,一年以后,蜕变成为一个不一样的自己!

今日题目:海港


题目描述


小K是一个海港的海关工作人员,每天都有许多船只到达海港,船上通常有很多来自不同国家的乘客。


小K对这些到达海港的船只非常感兴趣,他按照时间记录下了到达海港的每一艘船只情况;对于第i艘到达的船,他记录了这艘船到达的时间ti (单位:秒),船上的乘 客数k_iki,以及每名乘客的国籍 xi,1,xi,2,…,xi,k。


小K统计了nn艘船的信息,希望你帮忙计算出以每一艘船到达时间为止的24小时(24小时=86400秒)内所有乘船到达的乘客来自多少个不同的国家。


形式化地讲,你需要计算nn条信息。对于输出的第ii条信息,你需要统计满足ti−86400


输入格式


第一行输入一个正整数nn,表示小K统计了nn艘船的信息。


接下来nn行,每行描述一艘船的信息:前两个整数t_iti和k_iki分别表示这艘船到达海港的时间和船上的乘客数量,接下来k_iki个整数x_{i,j}xi,j表示船上乘客的国籍。


保证输入的t_iti是递增的,单位是秒;表示从小K第一次上班开始计时,这艘船在第t_iti秒到达海港。


保证 1≤n≤105 ∑ki≤3∗105 ,10^51≤xi,j≤105,1≤ti−1≤ti≤109。


其中∑ki表示所有的ki的和。


输出格式


输出n行,第ii行输出一个整数表示第ii艘船到达后的统计信息。


题目分析


题目难度:⭐️⭐️⭐️


题目涉及算法:队列,模拟。


ps:有能力的小伙伴可以尝试优化自己的代码或者一题多解,这样能综合提升自己的算法能力


题解报告:


1.思路


直接队列模拟情况,再循环里面特殊判断一下时间的情况即可。


2.代码


#include<bits/stdc++.h>
using namespace std;
int n,t,m,x;
const int N = 1000005;
int a[N];
int ans; 
struct node{
    int s,t;
};
int main()
{
  queue<node>q;
  node h;
  cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>t>>m;
        while(q.size())
        {
            h = q.front();
            if(h.t+86400<=t)
            {
                a[h.s]--;
                if(a[h.s]==0)
        {
          ans--;
              }
        q.pop();
                continue;
            }
            break;
        }
        for(int j=1;j<=m;j++)
        {
            cin>>x;
            h.s = x,h.t = t;
            q.push(h);
            a[x]++;
            if(a[x]==1)
      {
        ans++;
          }
    }
        cout<<ans;
    }
    return 0;
}


目录
相关文章
|
机器学习/深度学习 定位技术 数据格式
【蓝桥杯】每日一题17天冲刺国赛
【蓝桥杯】每日一题17天冲刺国赛
591 0
【蓝桥杯】每日一题17天冲刺国赛
|
算法 C++
【每日算法Day 73】学妹大半夜私聊我有空吗,然后竟然做出这种事!
【每日算法Day 73】学妹大半夜私聊我有空吗,然后竟然做出这种事!
|
监控
蓝桥杯真题31日冲刺国一 | 每日题解报告 第十三天
大家好,这里是泡泡,今天周日开摆!
100 0
蓝桥杯真题31日冲刺国一 | 每日题解报告 第十三天
|
Java
蓝桥杯真题31日冲刺国一 | 每日题解报告 第十九天
大噶好,我系泡泡,今天的题难度很高(我是fw) 有能力的自己搞一下,省赛的同学今天就当放松一下
175 0
蓝桥杯真题31日冲刺国一 | 每日题解报告 第十九天
|
编译器
蓝桥杯真题31日冲刺国一 | 每日题解报告 第二十天
大家好,我是泡泡,快到比赛了,大家练的怎么样了呢,放平心态不要紧张不要沮丧!
128 0
蓝桥杯真题31日冲刺国一 | 每日题解报告 第二十天
|
机器学习/深度学习
蓝桥杯真题31日冲刺国一 | 每日题解报告 第二十八天
大家好,我是泡泡,距离蓝桥杯还有五天,大家一定要坚持下去
121 0
蓝桥杯真题31日冲刺国一 | 每日题解报告 第二十八天
|
定位技术
蓝桥杯真题31日冲刺国一 | 每日题解报告 第十八天
大家好,我是泡泡,昨天有点事,把题解都补上来,5115
109 0
蓝桥杯真题31日冲刺国一 | 每日题解报告 第十八天
|
Java
蓝桥杯真题31日冲刺国一 | 每日题解报告 第二十二天
大家好,我是泡泡,今天给大家带来五到2020年填空真题和两个打卡题
114 0
蓝桥杯真题31日冲刺国一 | 每日题解报告 第二十二天
|
存储 人工智能
【蓝桥杯】每日一题冲刺国赛
🥇数字三角形 🥈等差数列 🥉包子凑数
【蓝桥杯】每日一题冲刺国赛
|
算法
每日一题冲刺大厂 第二十二天 喝咖啡
大家好,我是泡泡,给大家带来每日一题的目的是为了更好的练习算法,我们的每日一题为了让大家练到各种各样的题目,熟悉各种题型,一年以后,蜕变成为一个不一样的自己!
113 0