news 2026/4/23 11:32:31

GESP认证C++编程真题解析 | B3928 [GESP202312 四级] 田忌赛马

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GESP认证C++编程真题解析 | B3928 [GESP202312 四级] 田忌赛马

​欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!

专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。

适合人群:

  • 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
  • 希望系统学习C++/Python编程的初学者
  • 想要提升算法与编程能力的编程爱好者

附上汇总帖:GESP认证C++编程真题解析 | 汇总


【题目来源】

洛谷:[B3928 GESP202312 四级] 田忌赛马 - 洛谷

【题目描述】

你要和田忌赛马。你们各自有N NN匹马,并且要进行N NN轮比赛,每轮比赛,你们都要各派出一匹马决出胜负。

你的马匹的速度分别为u 1 , u 2 , ⋯ , u n u_1,u_2,\cdots,u_nu1,u2,un,田忌的马匹的速度分别为v 1 , v 2 , ⋯ , v n v_1,v_2,\cdots,v_nv1,v2,,vn。田忌会按顺序派出他的马匹,请问你要如何排兵布阵,才能赢得最多轮次的比赛?巧合的是,你和田忌的所有马匹的速度两两不同,因此不可能出现平局。

【输入】

第一行一个整数N NN。保证1 ≤ N ≤ 5 × 1 0 4 1\le N \le 5\times 10^41N5×104

接下来一行N NN个用空格隔开的整数,依次为u 1 , u 2 , ⋯ , u n u_1,u_2,\cdots,u_nu1,u2,,un,表示你的马匹们的速度。保证1 ≤ u i ≤ 2 N 1\le u_i\le 2N1ui2N

接下来一行N NN个用空格隔开的整数,依次为v 1 , v 2 , ⋯ , v n v_1,v_2,\cdots,v_nv1,v2,,vn,表示田忌的马匹们的速度。保证1 ≤ v i ≤ 2 N 1\le v_i\le 2N1vi2N

【输出】

输出一行,表示你最多能获胜几轮。

【输入样例】

3 1 3 5 2 4 6

【输出样例】

2

【算法标签】

《洛谷 B3928 田忌赛马》 #贪心# #排序# #双指针two-pointer# #GESP# #2023#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;constintN=50005;// 最大数组长度intn;// 数组大小intans;// 答案:满足条件的配对数量intu[N],v[N];// 两个数组intmain(){// 输入数组大小cin>>n;// 输入并排序数组ufor(inti=1;i<=n;i++){cin>>u[i];}sort(u+1,u+n+1);// 输入并排序数组vfor(inti=1;i<=n;i++){cin>>v[i];}sort(v+1,v+n+1);// 双指针贪心匹配intj=1;// v数组的指针for(inti=1;i<=n;i++)// 遍历u数组{// 如果当前u[i]大于等于当前v[j],可以配对if(u[i]>=v[j]){j++;// 移动v指针ans++;// 成功配对数加1}// 如果u[i] < v[j],这个u[i]无法匹配任何v// 不移动j,尝试用更大的u[i+1]来匹配v[j]}// 输出结果cout<<ans<<endl;return0;}

【运行结果】

3 1 3 5 2 4 6 2
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/20 18:00:03

Agent Framework:性能优化

概述 在开发 AI 代理应用时&#xff0c;性能优化是确保应用能够高效运行、提供良好用户体验的关键。本文将介绍 AI 代理应用中的性能优化关键点、实用技巧和测试方法。 为什么性能优化很重要&#xff1f; 想象一下&#xff0c;如果你的 AI 客服助手每次回答问题都需要等待 3…

作者头像 李华
网站建设 2026/4/11 21:27:43

AgentFramework: 安全最佳实践

概述 在开发 AI 代理应用时&#xff0c;安全性至关重要。本文将介绍如何保护 API 密钥、用户数据和应用安全的最佳实践。 为什么安全性很重要&#xff1f; 想象一下&#xff0c;如果你的 API 密钥被泄露&#xff0c;攻击者可能会&#xff1a; 使用你的账户调用 AI 服务&…

作者头像 李华
网站建设 2026/4/21 13:00:44

退化的意思是不是,机器人不知道自己的位置和方向了,一般来说在非退化场景,周围的环境可以给自身一个约束,这个约束是满秩,可以确定自身位置,如果面临退化环境,比如空旷的地带,没有环境反馈约束,就不满秩了,

问题描述&#xff1a;退化的意思是不是&#xff0c;机器人不知道自己的位置和方向了&#xff0c;一般来说在非退化场景&#xff0c;周围的环境可以给自身一个约束&#xff0c;这个约束是满秩&#xff0c;可以确定自身位置&#xff0c;如果面临退化环境&#xff0c;比如空旷的地…

作者头像 李华
网站建设 2026/4/18 23:50:56

为什么测试脚本的代码质量至关重要?

测试脚本的本质是代码&#xff0c;而非简单的“录制-回放”工具。低质量的脚本会引发一系列问题&#xff1a;频繁失效增加维护负担、执行效率低下拖延测试周期、隐藏的缺陷可能导致误报或漏报&#xff0c;最终削弱自动化测试的价值。因此&#xff0c;将测试脚本视为生产代码同等…

作者头像 李华
网站建设 2026/4/23 8:37:41

2025年信息学奥赛CSP-S2提高组题解

CSP-S 第二轮算法比赛已于昨日结束;下面分享我的题解。 第一题,难度为普及+/提高,后悔贪心,难度还好,即使不会可以得到 70 分。 第二题,难度为提高+/省选−,剪枝或者多路合并,会卡住不少人,不过被卡了可以得 80 分。 第三题,难度为省选/NOI−,哈希与 AC 自动机会…

作者头像 李华
网站建设 2026/4/23 8:36:17

ECharts 安装

ECharts 安装指南 Apache ECharts 当前最新版本是 6.0.0&#xff08;发布于 2025 年 7 月左右&#xff09;。ECharts 支持多种安装和引入方式&#xff0c;适用于不同开发场景。以下是常见方法&#xff1a; 1. 通过 CDN 引入&#xff08;推荐初学者和快速原型&#xff09; 最…

作者头像 李华