Submit Ranklist
Problem : 324 - Birthday
Problem Statistics
Solved Member:
18 Submission:
81 User Tried:
19 Statement:
今天是拜特曼的生日。拜特曼的生日派對將有n位小朋友(包括拜特曼)參加。小朋友的編號由1號編到n號。拜特曼的父母準備了一個大圓桌,圓桌周圍放了n張椅子。每當有小朋友到來,他們就立即就座。第一號小朋友可以選擇任意的座位。當第二號小朋友到達時,他會選擇第一號小朋友左手邊的椅子坐下。同理當第三號小朋友到達時,他會選擇第二號小朋友左手邊的椅子坐下。最後當第n號小朋友到達時,他會選擇第1號小朋友及第n - 1號小朋友中間僅存的空椅子坐下。
拜特曼的父母很了解這些小朋友,他們知道某些小朋友如果坐得太靠近,他們就會吵鬧。所以拜特曼的父母會將小朋友們依某種順序重新安排座位。這個順序可以用一個排列p1,p2...pn來表示 (為從p1到pn的不同整數)。第p1號小朋友將會坐在第p2號小朋友及第pn號小朋友之間,第pi號小朋友 (i = 2, 3, …, n - 1) 將會坐在第pi-1號小朋友及第pi+1號小朋友中間,而第pn號小朋友將會坐在第pn-1號小朋友及第p1號小朋友之間。請注意,第p1號小朋友可以坐在第pn號小朋友的左手邊或是右手邊。
如果拜特曼的父母想將所有的小朋友的座位重新安排成想要的順序,他們就必須將小朋友沿著圓桌向左或向右移動。針對每一位小朋友,拜特曼的父母必須決定這位小朋友的移動方向 (左或右),和距離 (幾個座位)。最後在統一號令之下,所有的小朋友同時起立,移動到新座位,再同時坐下。
重新安排座位順序會對生日派對造成混亂。混亂的程度等於任一小朋友移動的最大距離。重新安排座位順序的方法有許多種。拜特曼的父母決定選擇混亂程度最低的方法,意即能將任一小朋友移動的最大距離最小化的方法。請幫助拜特曼的父母重新安排座位順序。
Task:
你的工作是寫一個程式:
♦ 讀入小朋友的人數及所欲產生的小朋友座位順序,
♦ 決定最小的混亂程度,
♦ 將結果輸出出。
Input:Output:
第一行輸入為一整數 n (1 ≤ n ≤ 1000000)。第二行有n個整數p1,p2,...,pn (之間由一空白隔開)。這n個整數p1,p2,...,pn為一由{1,2,...,n}產生的排列,代表所欲產生的小朋友座位順序。
在50%的測試資料中,數字n不會超過1000。
輸出只有一行且只包含一個整數,即最小的混亂程度。
Sample Input:Sample Output:
HINT:
左方圖形顯示小朋友座位的起始狀態。
中間圖形顯示下列重新安排座位的結果: 第1號小朋友及第2號小朋友移動一個座位。第3號小朋友及第5號小朋友移動兩個座位。第4號小朋友及第6號小朋友不移動座位。這個方法滿足所求因為第3號小朋友坐在第6號小朋友及第4號小朋友之間,第4號小朋友坐在第3號小朋友及第5號小朋友之間,第5號小朋友坐在第4號小朋友及第1號小朋友之間,第1號小朋友坐在第5號小朋友及第2號小朋友之間,第2號小朋友坐在第1號小朋友及第6號小朋友之間,同時第6號小朋友坐在第2號小朋友及第3號小朋友之間。
右方的圖形顯示另一種可能重新安排座位的方法。在這兩個例子中小朋友的移動距離均不超過兩個座位。
Source:
IOI 2005
Problem Setter
hanhan0912 Testdata:
Test | Time | Memory | Score |
---|
0 | 2000ms | 65536kb | |
1-1 | 2000ms | 65536kb | 4 |
1-2 | 2000ms | 65536kb | |
2-1 | 2000ms | 65536kb | 4 |
2-2 | 2000ms | 65536kb | |
3 | 2000ms | 65536kb | 4 |
4 | 2000ms | 65536kb | 4 |
5 | 2000ms | 65536kb | 4 |
6 | 2000ms | 65536kb | 4 |
7 | 2000ms | 65536kb | 4 |
8 | 2000ms | 65536kb | 4 |
9 | 2000ms | 65536kb | 4 |
10 | 2000ms | 65536kb | 4 |
11 | 2000ms | 65536kb | 5 |
12 | 2000ms | 65536kb | 5 |
13 | 2000ms | 65536kb | 4 |
14 | 2000ms | 65536kb | 4 |
15 | 2000ms | 65536kb | 4 |
16 | 2000ms | 65536kb | 4 |
17 | 2000ms | 65536kb | 4 |
18 | 2000ms | 65536kb | 4 |
19 | 2000ms | 65536kb | 4 |
20 | 2000ms | 65536kb | 4 |
21 | 2000ms | 65536kb | 4 |
22 | 2000ms | 65536kb | 4 |
23 | 2000ms | 65536kb | 5 |
24 | 2000ms | 65536kb | 5 |