CF1779A Hall of Fame 题解

可能更好的阅读体验

题目传送门

题目翻译

n 个纪念碑以及对应的 n 个台灯。
给定一个由 LR 组成的序列 a,代表台灯的朝向。
如果第 i 个台灯为 L,代表着朝左,也就是 1,2,,i1 这些纪念碑都被照亮。
如果第 i 个台灯为 R,代表着朝右,也就是 i+1,i+2,,n 这些纪念碑都被照亮。
现在你需要让所以的纪念碑被照亮。
你最多可以交换一次台灯,输出交换的位置。或者输出 0 代表不用交换,或者输出 1 代表无解。
n,n105

题目解析

卡20minD2A,大耻辱
显然可以想到所以纪念碑都被照到的一个条件是存在 i<j 并且 ai=R,aj=L
我们发现再加一个条件 i=j1 依然成立。

所以只要存在 RL 就是不用交换。
存在 LR 翻转这两位即可。
全是 LR 无解。

int n; char s[maxn];
void work(){
n=read(); scanf("%s",s+1); int i;
for(i=1;i<n;i++)
if(s[i]=='L'&&s[i+1]=='R'){ print(i),pc('\n'); return; }
else if(s[i]=='R'&&s[i+1]=='L'){ pc('0'),pc('\n'); return; }
puts("-1"); return;
}

鞭尸:
赛时提交记录:
00:05:01 A Wrong answer on pretest 1 [pretests] → 187729108 (死因:题目看错)
(鬼知道我中间想了多久)
00:21:07 A Runtime error on pretest 2 [pretests] → 187749611 (死因:数组开小)
00:21:52 A Happy New Year! [main tests] → 187750590

posted @   jiangtaizhe001  阅读(60)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示