//201609-1
#include <iostream>
#include <cstdio>
using namespace std;
int main(){
int n;scanf("%d", &n);
int arr[n];
for (int i = 0; i < n; i++)scanf("%d", &arr[i]);
int temp = 0;
for (int i = 1; i < n; i++)
if (abs(arr[i] - arr[i - 1]) > temp)
temp = abs(arr[i] - arr[i - 1]);printf("%d\n", temp);}
//201609-2
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;scanf("%d", &n);
map<int, int> m;
//分配座位
//每排5个座位
for (int i = 0; i < 20; i++)
m[i] = 5;
int start, end;
//座位指令
while (n--){
int operation;scanf("%d", &operation);
//遍历所有排数
for (auto it = m.begin(); it != m.end(); it++){//当前的剩余座位数量能够满足当前座位指令要求的座位个数
if (it->second >= operation){
//确定当前排数的第一个空余座位
start = it->first * 5 + 1 + (5 - it->second);
end = start + operation;
//打印座位
for (int i = start; i < end; i++){
if (i != start)printf(" ");printf("%d", i);}printf("\n");
if (it->second == operation)
m.erase(it);
else
it->second -= operation;
operation = 0;
break;}}
//处理不能将所有的票的座位分配在同一排
bool flag = false;
while (operation > 0){
for (auto it = m.begin(); it != m.end(); it++){if (operation > it->second){
start = it->first * 5 + 1 + (5 - it->second);
end = start + it->second;
for (int i = start; i < end; i++){
if (flag)printf(" ");printf("%d", i);
flag = true;}
operation -= it->second;
m.erase(it);}else{
//当前排数能够满足当前座位数量的需求
start = it->first * 5 + 1 + (5 - it->second);
end = start + operation;
for (int i = start; i < end; i++){
if (flag)printf(" ");printf("%d", i);
flag = true;}
if (it->second == operation)
m.erase(it);
else
it->second -= operation;
operation = 0;
break;}}}}
return 0;}
//201609-1#include <iostream>#include <cstdio>using namespace std;int main() { int n; scanf("%d", &n); int arr[n]; for (int i = 0; i < n; i++) scanf("...