#include <stdio.h>
//返回number装到箱子的索引
int myFunc(int array[], int length, int number)
{
int i, index = -1;
for (i = 0; i < length; i++)
{
if (array[i] + number <= 100)
{
index = i + 1;
array[i] = array[i] + number;
break;
}
}
return index;
}
int main(void)
{
int n, arrayA[1000], arrayB[1000];
int i;
scanf("%d", &n);
//记录物品大小
for (i = 0; i < n; i++)
{
scanf("%d", &arrayA[i]);
}
//箱子初始化
for (i = 0; i < 1000; i++)
{
arrayB[i] = 0;
}
for (i = 0; i < n; i++)
{
printf("%d %d
", arrayA[i], myFunc(arrayB, n, arrayA[i]));
}
for (i = 0; i < 1000; i++)
{
if (arrayB[i] == 0)
{
printf("%d
", i);
break;
}
}
return 0;
}