C++
1#include <bits/stdc++.h> 2using namespace std; 3#define ll long long 4#define rep(i,a,n) for (ll i = a;i<(n);++i) 5/*-----------------------------------------------*/ 6int main(){ 7 ll n,q;cin>>n>>q;vector<ll>a(n);rep(i,0,n)cin>>a[i];//入力 8 ll shift=0;//シフト数 9 rep(i,0,q){ 10 ll t,x,y;cin>>t>>x>>y;x--;y--;//入力 11 if(t==1){//swap 12 ll r=a[abs(x-shift)%n];ll l=a[abs(y-shift)%n]; 13 a[abs(x-shift)%n]=l;a[abs(y-shift)%n]=r; 14 } 15 if(t==2){//シフト++ 16 shift+=1; 17 } 18 if(t==3){//出力 19 cout<<a[abs(x-shift)%n]<<endl; 20 } 21 } 22 return 0; 23}
デバッグ依頼ですか?
https://teratail.com/help/avoid-asking
回答1件
あなたの回答
tips
プレビュー