首页 > 其他分享 >【滑动窗口】codeforces 1290 A. Mind Control

【滑动窗口】codeforces 1290 A. Mind Control

时间:2024-12-06 23:21:34浏览次数:9  
标签:Control int 个数 Mind codeforces 取数 leq left

题意

第一行输入一个正整数 \(T(1 \leq T \leq 1000)\),表示共有 \(T\) 组测试用例。对于每一组测试用例:
第一行输入三个正整数 \(n, m, k(1 \leq m \leq n \leq 3500, 0 \leq k \leq n - 1)\),且保证 \(n\) 之和不超过 \(3500\),第二行输入 \(n\) 个整数 \(a_i(1 \leq a_i \leq 10^9)\)。

总的有 \(n\) 个整数,每次会从两端任意取走其中一个数。你可以任意控制 \(k\) 次取数的方案,比如第 \(j\) 次取数可以控制取的数是当前剩余的数里最前面的一个。你要做的是找出一个 \(X\),使得无论如何取数,都能使得第 \(m\) 次取数不小于 \(X\)。输出 \(X\)。

题解

若控制第 \(j(j > m)\) 的取数方案,因为第 \(m\) 个数已经取过,显然对结果不会影响,因此只需要控制前 \(w = min(m - 1, k)\) 个数的取数方案。
不妨暴力枚举删除前 \(left\) 个数和后 \(right\) 个数,其中 \(0 \leq left, right = w - left \leq w\) 的情况下,在接下来的第 \((m - w)\) 次取数时能取到的数的最大值里的最小值。

参考代码

#include<bits/stdc++.h>
using namespace std;

constexpr int N = 3507;
int T, n, m, k;
int a[N];

void solve() {
	cin >> n >> m >> k;
	int ans = 1, w = min(m - 1, k);
	m -= w + 1;
	for (int i = 0; i < n; ++ i) cin >> a[i];
	for (int i = 0; i <= w; ++ i) {
		int left = i, right = n - w + i - 1;
		int res = 1e9;
		for (int j = 0; j <= m; ++ j) res = min(res, max(a[left + j], a[right - m + j]));
		ans = max(ans, res);
	}
	cout << ans << '\n';
} 

int main() {
	ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
	cin >> T;
	while (T --) {
		solve();
	}
	return 0;
}

标签:Control,int,个数,Mind,codeforces,取数,leq,left
From: https://www.cnblogs.com/RomanLin/p/18588670

相关文章

  • codeforces Round 971 div4
    A.Minimize!给你两个整数$$$a$$$和$$$b$$$($$$a\leqb$$$)。在$$$c$$$($$$a\leqc\leqb$$$)的所有可能整数值中,求(c-a)+(b-c)$$$的最小值。题目问(c-a)+(b-c)的最小值,由于c在a到b之间所以只需枚举a到b的每一个数来寻找最小值````#include<iostream>#i......
  • Educational Codeforces Round 80 (Rated for Div2)
    EducationalCodeforcesRound80(RatedforDiv.2)-CodeforcesProblem-A-Codeforces数学双钩函数,直接显然极值点是\(\sqrt{d}-1\),但要注意取整的时候可能存在偏差,暴力搜索一下附近的值就好了#include<bits/stdc++.h>usingnamespacestd;voidsolve(){ intn,d;......
  • Intel 的 Control-flow Enforcement Technology (CET) 是一项硬件级的安全技术,旨在增
    Intel的Control-flowEnforcementTechnology(CET)是一项硬件级的安全技术,旨在增强程序控制流的保护,防止攻击者利用控制流劫持(如ROP(Return-OrientedProgramming)和JOP(Jump-OrientedProgramming)等技术)来绕过传统的防护机制(如DEP和ASLR)。CET通过对程序的控制流进行严格......
  • 间接分支追踪(Indirect Branch Tracking,IBT) 是 Intel Control-flow Enforcement Techno
    间接分支追踪(IndirectBranchTracking,IBT)是IntelControl-flowEnforcementTechnology(CET)的核心组件之一,旨在加强程序的控制流保护,防止恶意代码通过控制流劫持技术(如ROP(Return-OrientedProgramming)或JOP(Jump-OrientedProgramming))来绕过安全机制,执行恶意行为。IBT的......
  • 控制流完整性(Control Flow Integrity, CFI) 是一种旨在保护程序免受控制流劫持攻击的安
    控制流完整性(ControlFlowIntegrity,CFI)是一种旨在保护程序免受控制流劫持攻击的安全技术。它通过确保程序的控制流(即程序执行过程中控制路径的顺序)始终按照预定的正确路径执行,从而防止攻击者利用漏洞改变程序的执行流程。CFI主要防御的是控制流劫持攻击,比如返回导向编程(ROP......
  • Controller外部接口调用方式设计,sign签名规则
    Controller外部接口调用方式设计,sign签名规则//请求头accept:*/*connection:Keep-Aliveuser-agent:My-test3Accept-Charset:UTF-8Content-Type:application/x-www-form-urlencoded如果使用x-www-form-urlencoded传参方式,则使用请求头:My-test1&My-test2如果使用json传......
  • Controller接口设计规范
    Controller接口设计规范1.签名接口请求方将请求参数+时间戳+密钥拼接成一个字符串,然后通过md5等hash算法,生成一个前面sign签名中为什么要加时间戳?答:为了安全性考虑,防止同一次请求被反复利用,增加了密钥没破解的可能性,我们必须要对每次请求都设置一个合理的过期时间,比如:15分钟......
  • Fish Speech 1.5 发布,TTS-Arena 排名开源第一;DeepMind Genie 2,一键生成无限虚拟世界
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编......
  • Unlock Professional Camera Control with CameraStudio !
    Tiredofstrugglingwithmultiplecamerasandinconsistentvideoqualityduringlivestreams,meetings,orcontentcreation?CameraStudioisheretochangethat!DesignedexclusivelyformacOS,CameraStudioempowersyoutomanagevideosources,applyfilt......
  • 谷歌DeepMind—运用深度强化学习为双足机器人学习敏捷足球技能 Movies
    原文链接:OP3SoccerTakealookattheOP3Poweredby DYNAMIXEL看看由DYNAMIXEL驱动的OP3 WeinvestigatewhetherDeepReinforcementLearning(DeepRL)isabletosynthesizesophisticatedandsafemovementskillsforalow-cost,miniaturehumanoidrobottha......