首页 > 其他分享 >[PA2021] Ranking sklepów internetowych

[PA2021] Ranking sklepów internetowych

时间:2024-10-24 21:20:49浏览次数:5  
标签:Ranking internetowych int ll 中位数 区间 sklep ans 序列

算法

显然可知, 最大的权值显然是 \(2 \times n + 1\)
我们也可以发现取最大值时序列的特征:中位数大于 $\frac{n}{2} $ , 且包括整个大序列所有大于中位数的整数以及相等个数的小于中位数的数

所以枚举中位数, 找区间 \([L, R]\) 使得 \(i\) 到 \(n\) 的整数都在区间内, 并且要求这个区间的长度是 \(i\) , 其中 \(i \in \left[{\left\lfloor\frac{n}{2}\right\rfloor, n}\right]\) , 这是好实现的

  • 这个序列可能已经不符合要求, 即目前长度超过目标长度
    此时没有贡献

  • 这个序列可能缺少元素
    这时可以向左右扩展
    计算 \(l, r\) 为向左右拓展的最大区间

代码

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1000005;
int n;
int p[N];
int L, R;
ll ans;

void chkmax(int &a, int b) { if (a < b) a = b; }
void chkmin(int &a, int b) { if (a > b) a = b; }

int main() {
	scanf("%d", &n), L = n, R = 0;
	for (int i = 1, x; i <= n; ++i) scanf("%d", &x), p[x] = i;
	for (int i = 1; i <= n; ++i) {
		chkmin(L, p[n - (i / 2)]), chkmax(R, p[n - (i / 2)]);
		int len = R - L + 1;
		if (len <= i) {
			int l, r;
			if (R >= i) l = R - i + 1, r = R; else l = 1, r = i;
			ans += min(L - l, n - r) + 1;
		}
	}
	printf("%d %lld", 2 * n + 1, ans);
	return 0;
}

总结

递推思想可以优化时间复杂度
注意性质的发现能力

标签:Ranking,internetowych,int,ll,中位数,区间,sklep,ans,序列
From: https://www.cnblogs.com/YzaCsp/p/18500418

相关文章

  • 《Advanced RAG》-04-深度研究RAG技术Re-ranking
    摘要文章首先介绍了重新排序在RAG中的重要性,它允许对检索到的文档进行重新排序和过滤,以确保最相关的文档能够被优先考虑,从而提高RAG的效率和准确性。接着,文章详细描述了两种主流的重新排序方法:一种是使用重新排序模型,如bge-reranker-base和bge-reranker-large等,这些模型......
  • 2024牛客暑期多校训练营8 I Haitang and Ranking 题解
    乱搞看到\(n=1e5\),时限3s,存在修改操作,很自然的想到根号分治。考虑按照时间分治。对每\(B\)个交换统一处理,\(B\)个交换最多有\(2B\)个元素改变状态,剩下都不变。那么只要对这\(2B\)元素内,暴力枚举,剩下的元素构建数据结构实现二维数点,平面内区间最值。因为\(a,b\)是不......
  • 使用Infinity部署Embedding和Reranking模型
    使用Infinity部署Embedding和Reranking模型说明:首次发表日期:2024-08-06InfinityGithub仓库:https://github.com/michaelfeil/infinityInfinity官方文档:https://michaelfeil.github.io/infinity/下载权重pipinstall-U"huggingface_hub[cli]"exportHF_ENDPOINT=ht......
  • 论文阅读:DQ-LoRe:Dual Queries with Low Rank Approximation Re-ranking for In-Contex
    大型语言模型(LLMs)展示了其基于上下文学习的卓越能力,在错综复杂的推理任务中,利用思维链(CoT)范式中的中间推理步骤来引导大型语言模型的一个很有前景的途径。然而,核心挑战在于如何有效选择范例来促进上下文学习。先前的很多工作都是围绕添加思维链,例如一致性CoT、思维树以及......
  • Sigir2024 ranking相关论文速读
    简单浏览一下Sigir2024中与ranking相关的论文。不得不说,自从LLM大热后,传统的LTR方向的论文是越来越少了,目前不少都是RAG或类似场景下的工作了,比如查询改写、rerank等。目录TheSurprisingEffectivenessofRankersTrainedonExpandedQueriesCanQueryExpansionImproveGene......
  • 阿里重排论文PRM 《Personalized Re-ranking for Recommendation》
    和DLCM做法类似,都是使用序列模型对rank后的结构做rerank,不同点是PRM使用了transformencoder来建模,并且使用了用户预训练向量和位置向量最后一层使用了softmax来计算每个item被点击的概率(论文提到使用click作为label,也就是所存在多个label为1的情况,不知道有没有做什么特殊处理),并......
  • C105 整体二分+树状数组 P2617 Dynamic Rankings
    视频链接:C105整体二分+树状数组P2617DynamicRankings_哔哩哔哩_bilibili  C96树状数组套权值线段树P2617DynamicRankings-董晓-博客园(cnblogs.com)C104【模板】整体二分+树状数组P3834可持久化线段树2-董晓-博客园(cnblogs.com)LuoguP2617Dynamic......
  • PAT甲 1025 PAT Ranking
    题目:1080GraduateAdmission-PAT(AdvancedLevel)Practice(pintia.cn) 测试点4出现段错误,其他过了,找不出来哪里有问题。准备把别人代码复现一遍。 其他:1、排序函数要用&引用传参,不然会超时```在排序函数中使用引用传递可以避免不必要的对象拷贝,从而提高排序的......
  • 昆虫科学院 AtCoder Race Ranking 2023 Autumn
    概况为提高选手们的训练/比赛热情,我们(昆虫科学院)通过商讨,在\(2023-5-25\)仿照AtCoderRaceRanking(WTF)机制,设立了“昆虫科学院AtCoderRaceRanking2023”。该排行榜为\(2023\sim2024\)赛季的第二轮排行。校内参赛选手(按照学号排序)AtCoder用户名学号......
  • 【论文阅读笔记】【Image Retrieval】 Global Features are All You Need for Image R
    SuperGlobalICCV2023读论文思考的问题论文试图解决什么问题?图片检索方法通常由粗粒度图片检索和精确的结果重排列两个模块组成。人们通常认为图片的localfeature在结果重排列中是不可或缺的,但对大量的localfeature的计算需要较高的计算资源和时间能否只用图片......