#include <iostream> #include <string> #include <algorithm> using namespace std; int main() { int n; string commands; while (cin >> n >> commands) { int num = 1;//选中的歌曲 int win_b = 1;//页面的起始 int win_e = min(4, n); //页面的末位置 for (int i = 0; i < commands.size(); i++) { if (commands[i] == 'U') { //向上移动一格 num = (num - 1 - 1 + n) % n + 1; } else if (commands[i] == 'D') { //向下移动一格 num = num % n + 1; } if (num < win_b) { //如果当前歌曲在窗口前,则将窗口往前移动 win_b = num; win_e = win_b + 3; } else if (num > win_e) { //如果当前歌曲在窗口后,则将窗口往后移动 win_e = num; win_b = win_e - 3; } } for (int i = win_b; i <= win_e; i++) { //输出当前页面 cout << i << ' '; } cout << endl; cout << num << endl;//输出选中的歌曲 } return 0; }