蓝桥杯每日一题2023.10.30

题目描述

日志统计 - 蓝桥云课 (lanqiao.cn)

题目分析

本题可以使用双指针来维护时间段的区间,在维护的时间段内确定是否为热帖

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll; 
const int N = 2e5 + 10;
struct node
{
	int t, id;
}tiee[N];
int n, d, k, cnt[N];
set<int> st;
bool cmp(node a, node b)
{
	return a.t < b.t;
}
int main()
{
	cin >> n >> d >> k;
	for(int i = 1; i <= n; i ++)
	{
		cin >> tiee[i].t >> tiee[i].id;
	}
	sort(tiee + 1, tiee + 1 + n, cmp);
	for(int i = 1, j = 1; i <= n; i ++)
	{
		cnt[tiee[i].id] ++;//cnt[id]表示同一个id获赞数 
		while(tiee[i].t - tiee[j].t >= d)//两个帖子的时间相差超过d说明该赞无效 
		{
			cnt[tiee[j].id] --;//无效的id需要被减掉 
			j ++; 
		} 
		int x = tiee[i].id;
		if(cnt[tiee[i].id] >= k)st.insert(x);//set自动排序去重 
	}
	for(auto i : st)cout << i << '\n';
	return 0;
} 
相关推荐
天真小巫9 小时前
2025.4.26总结
职场和发展
triticale9 小时前
【蓝桥杯】P12165 [蓝桥杯 2025 省 C/Java A] 最短距离
java·蓝桥杯
懒懒小徐9 小时前
大厂面试-框架篇
面试·职场和发展
一只鱼^_10 小时前
第十六届蓝桥杯大赛软件赛省赛 C/C++ 大学B组 [京津冀]
c语言·数据结构·c++·算法·贪心算法·蓝桥杯·动态规划
xxjiaz11 小时前
水果成篮--LeetCode
java·算法·leetcode·职场和发展
wuqingshun31415912 小时前
蓝桥杯 3. 密码脱落
c++·算法·职场和发展·蓝桥杯·深度优先
菜鸟小白:长岛icetea12 小时前
第十六届蓝桥杯网安初赛wp
蓝桥杯·ctf
测试界茜茜13 小时前
16:00开始面试,16:08就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
雾月5513 小时前
LeetCode 1780 判断一个数字是否可以表示成三的幂的和
java·数据结构·算法·leetcode·职场和发展·idea