当前位置: 首页 > news >正文

【题解】CF2232C2

0

\(link\)

1:注意到

唯一的变量是 \(A\) 的赋值,容易发现,把固定数量 \(g\)\(A\) 变成 \(I\),其余为 \(E\) ,那么变换 \(A\) 的前缀最优

2:O(n^2)

枚举 \(g\) ,取 \(max\)

3:O(nlogn)

注意到单峰,二分求导即可

对于单峰,感性证明一下

多了一个 \(A\) 变成 \(I\)

如果桶不满,一定不降

否则一定先不降(卡掉一个 \(I\) ,加上一些 \(E\) ),再降(只卡掉一个 \(I\)

综上,单峰

4:代码

// Problem: C2. Seating Arrangement (Hard Version)
// Contest: Codeforces - Codeforces Round 1101 (Div. 2)
// URL: https://codeforces.com/contest/2232/problem/C2
// Memory Limit: 256 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include<bits/stdc++.h>
#define int long long 
#define Pair pair<int,int>
#define eps 1e-6
using namespace std;
using LL=long long;
const int N=5e5+10;
char c[N];
char d[N];
int n,x,s;
int calc(int g){int k=g;for(int i=1;i<=n;i++){d[i]=c[i];if(d[i]=='A'){if(k){d[i]='I';k--;}else d[i]='E';}}int desk=0;int res=0;for(int i=1;i<=n;i++){if(d[i]=='I'){if(desk+1<=x){desk++;res++;}}else{if(res+1<=desk*s){res++;}}}	return res;
}
void solve(){cin>>n>>x>>s;for(int i=1;i<=n;i++) cin>>c[i];int l=0,r=n;while(l<r){int mid=l+r>>1;if(calc(mid)>=calc(mid+1)) r=mid;else l=mid+1;}cout<<calc(l)<<"\n";
}
signed main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);int t=1;cin>>t;while(t--) solve();return 0;
}

5.反思与评价

饭堂了

5.1

C1往dp角度想了,所以想到一个算法,一定要再想一想有没有更简单的替代算法

5.2

C2场上想到三分,觉得是假的没去证

所以在没有进展的情况下,一定要尝试各个解法

http://www.jsqmd.com/news/937631/

相关文章:

  • 微信消息批量发送终极指南:5分钟掌握WeChat-mass-msg自动化神器
  • StardewPlanner:基于网格化约束的可视化农场规划系统架构解析
  • 终极解决方案:如何在Windows 10上完美安装PL-2303旧版芯片驱动
  • 如何在Windows上实现完全离线的实时语音识别与会议转录
  • 微信QQ消息防撤回实战指南:保护你的聊天记录不被消失
  • JetBrains Maple Mono:终极免费编程字体解决方案
  • 学Simulink--交错并联 Buck 变换器的均流控制与热应力分析仿真
  • D2RML:暗黑破坏神2重制版终极多开神器,3分钟搞定全账号自动登录
  • 古河道淘金船价格 - 舒雯文化
  • 微信聊天记录终极备份指南:永久保存你的数字记忆
  • Qwen图像编辑革命:4步完成专业级AI修图的终极指南
  • 岗位干货|测试岗位全解析:小白 0-1 落地指南(职责拆解 + 环境搭建 + 实战避坑 + 面试题库)
  • 2026指纹浏览器字体指纹溯源机制:系统私有字体栈引发的隐性集群风控详解
  • leecodecode【反转链表+快慢指针】【2026.5.29打卡-java版本】
  • 手把手教你学Simulink--交错并联 Buck 变换器的均流控制与热应力分析仿真
  • 鸣潮游戏模组大全:15项功能解锁全新游戏体验,5分钟快速上手指南
  • 系统集成项目管理工程师案例分析怎么复习? - 众智商学院官方
  • 告别单调命令行:手把手教你用PS1变量打造高颜值Linux终端(附常用配色方案)
  • DamaiHelper:基于Selenium的票务自动化解决方案实现原理与应用指南
  • Day6:RAG项目实战(1)
  • C++20新特性解析:从概念到协程的全面指南
  • 鸣潮模组终极指南:15+强力功能解锁,5分钟打造你的专属游戏体验
  • AI智能体领域术语乱象终结者!超全词汇表帮你秒懂Harness、Scaffold、Agent等核心概念!
  • 河北省有哪些官方授权的CPPM注册职业采购经理培训机构? - 众智商学院课程中心
  • 终极指南:用Mem Reduct让Windows电脑告别卡顿,轻松管理内存
  • 3步终极指南:免费打造个性化macOS鼠标指针体验
  • 显存优化解码:ComfyUI-WanVideoWrapper如何让8GB显卡也能生成高清视频
  • 2026年AI剪辑工具“铁王座”之争:为什么随心剪能99.2分断层登顶?
  • 别再怪VNC Viewer了!Ubuntu远程桌面传不了文件,可能是你装错了VNC Server
  • CyberpunkSaveEditor终极指南:如何快速解决赛博朋克2077存档的5大常见问题