YACS 2023年5月月赛 乙组 T2 集体舞 题解
令
初始时
最终的每个
对于
对于
所以我们只需要维护几个 tag,时间复杂度
#include <iostream> using namespace std; int n; char o; int usen, sign = 1, add; int a[500005]; int main () { cin >> n; o = getchar (); o = getchar (); while (o != '\n') { if (o == 'r') ++ add; else { usen = !usen; sign = -sign; add = 1 - add; } o = getchar (); } for (int i = 1; i <= n; i ++) { int loc = (usen * n + sign * i + add); loc = (loc % n + n) % n; if (loc == 0) a[n] = i; else a[loc] = i; } for (int i = 1; i <= n; i ++) cout << a[i] << "\n"; return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异