Codeforces Global Round 2
A
题解: 枚举每个颜色的头和尾然后最大化另一端
upd:赛时麻烦了,显然答案的一端为头或者尾,枚举另一端即可。

#include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e6+3; ll n,a[N]; set<ll>q[N]; void Solve() { cin>>n;ll s=0; for(int i=1;i<=n;i++)q[i].clear(); for(int i=1;i<=n;i++)cin>>a[i],q[a[i]].insert(i); for(int i=1;i<=n;i++) { if(q[i].empty())continue; ll x=*q[i].begin(),y=*q[i].rbegin(),px=n,py=1; while(q[i].count(px))px--; while(q[i].count(py))py++; s=max(s,max(px-x,y-py)); } cout<<s<<endl; } int main() { int T;T=1; while(T--)Solve(); return 0; }
B
一个大小是 $2 \times h$ 的冰箱(就是 列 行),有 个瓶子,高度分别是,我们放 个瓶子进入冰箱,
上下两个瓶子之间有挡板,且挡板不能将瓶子分割,求出能满足将前 个瓶子放入冰箱的最大的 。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)