E. Magic Master(The 2019 Asia Nanchang First Round Online Programming Contest)


样例输入
1
5
1
2
2
3
样例输出
5
2

AC代码
#include <iostream>
#include <cstdio>
#include <deque>
using namespace std;
int main(){
int t, n, tmp, m;
scanf("%d", &t);
while (t--){
deque<int> s;
scanf("%d", &n);
scanf("%d", &m);
s.push_front(n);
for (int i = n-1; i > 1; i--){
s.push_front(i);
for (int j = 0; j < m; j++){
tmp = s.back();
s.pop_back();
s.push_front(tmp);
}
}
s.push_front(1);
int q, num;
scanf("%d", &q);
for (int i = 0; i < q; i++){
scanf("%d", &num);
printf("%d\n", s[num-1]);
}
}
return 0;
}
本文解析了2019年亚洲南昌第一轮在线编程竞赛中E题的解题思路及AC代码实现,通过双端队列进行元素操作,解决特定序列问题。
319

被折叠的 条评论
为什么被折叠?



