dutoj1007圓桌會議

2021-08-13 08:14:52 字數 1126 閱讀 4131

某班同學將要在圓桌上召開一次班會。圓桌上分布著3n3n個座位,順時針編號依次為0,1,…,3n−10,1,…,3n−1,編號相鄰的兩個座位也相鄰,特殊地,3n−13n−1和00也相鄰。每個座位上坐著一位同學,每個同學也有乙個整數編號xx。現在為了使會議更有趣。參加會議的人們決定進行一些座位調整。一共有兩種調整規則如下:

11 aa:同學們順時針移動aa個座位(aa為負數則逆時針移動)。舉例:a=1a=1時,編號為ii的座位上的同學移動到編號為i+1i+1的座位上,特殊情況是編號為3n−13n−1的同學移動到編號為00的座位上。

22:從編號為0的座位開始,每相鄰三個座位上的同學順序顛倒一下。舉例:n=2n=2時,座位上依次坐著編號為a0,a1,a2,a3,a4,a5a0,a1,a2,a3,a4,a5的同學,即編號為i的座位上坐著編號為ai的同學。經過該操作後,同學編號依次為a2,a1,a0,a5,a4,a3a2,a1,a0,a5,a4,a3。也就是說,將相鄰三個座位上第乙個和最後乙個同學位置進行調換。

一共進行qq上述操作,最終請從座位00開始順時針依次輸出同學的編號。

第一行輸入nn和q(1≤n,q≤100000)q(1≤n,q≤100000),第二行輸入3n3n個數字,表示從座位00到座位3n−13n−1上同學的編號序列,接下 來有qq行輸入,每行輸入11 a(−100000≤a≤100000)a(−100000≤a≤100000)或22,表示進行一次座位調整操作,操作含義詳見題目描述。

一行輸出nn個數字,表示從座位00開始順時針得到的同學編號。

2 3

1 -1 2 -2 3 -3

1 42

1 2

1 -3 3 -2 2 -1
通過分成三個小組,然後控制每個小組的上公升或者下降匹配頭的位置。

#includeint a[4][35000];

int rank[4]=;

int up[4]=;

int main()}}

for(i=head;iprintf("%d\n",a[rank[(head+3*n-1)%3]][(up[rank[((head+3*n-1)%3)]]+(head+3*n-1)/3)%n]);

return 0;

}

1214 圓桌會議

problem description hdu acm集訓隊的隊員在暑假集訓時經常要討論自己在做題中遇到的問題.每當面臨自己解決不了的問題時,他們就會圍坐在一張圓形的桌子旁進行交流,經過大家的討論後一般沒有解決不了的問題,這也只有hdu acm集訓隊特有的圓桌會議,有一天你也可以進來體會一下哦 在一...

HDU 1214圓桌會議

description hdu acm集訓隊的隊員在暑假集訓時經常要討論自己在做題中遇到的問題.每當面臨自己解決不了的問題時,他們就會圍坐在一張圓形的桌子旁進行交流,經過大家的討論後一般沒有解決不了的問題,這也只有hdu acm集訓隊特有的圓桌會議,有一天你也可以進來體會一下哦 在一天在討論的時候,...

hdu 1124 圓桌會議

主題思想 數學題,給乙個串數字組成乙個環,12345 n 經過有限次相鄰作為的對換,變成 1,n,n 1,n 2,2 如果是乙個直線,不是乙個環,根據直線長度n 需要的次數為n 1 n 2 n 3 1.為 n n 1 2 把乙個環盡可能分成長度相等的兩段,分別計算兩段直線的次數,和就是最小的操作。參...