- 题目链接:SP1684 FREQUENT - Frequent values
- 考查知识:ST表
- 题意描述:模板题,按照题意建立ST表并进行若干次区间查询最大值即可
- a[i]为原数组,b[i]为当前相等串长,ST表维护区间内众数出现次数。
- 原区间分割成两区间,左区间根据预处理得到众数次数,右区间根据查ST得到众数次数
- 数据毒瘤,查ST表加
if(l>r)return 0;
输入不可用while(cin>>n&&n!=0)而要用while(1){scanf("%d",&n);if(!n) return 0;}
- 具体代码:
#include<bits/stdc++.h> using<
SP1684 FREQUENT - Frequent values(ST表)
于 2024-03-24 10:52:40 首次发布
该博客介绍了如何利用ST表(区间树)解决SP1684题目的问题,该题目要求求解区间内的频繁值。通过将原数组和相等串长存储,并进行区间查询最大值,可以找到众数及其出现次数。博主强调了在处理数据时要避免使用不稳定的输入方式,并提供了具体实现代码。
摘要由CSDN通过智能技术生成