#include<bits/stdc++.h>
using namespace std;
const int N=25;
int re[N],st[N];
int vis[105];
int n;
bool solve(int t)
{
for(int i=1;i<=20;i++)
{
if(re[i]>=t)
{
re[i]-=t;
int j=st[i];
st[i]+=t;
for(;j<st[i];j++)
{
cout<<j<<' ';
vis[j]=true;
}
cout<<endl;
return true;
}
}
return false;
}
void backupsolve(int t)
{
for(int i=1;i<=100;i++)
{
if(!vis[i])
{
vis[i]=true;
re[(i+4)/5]--;
st[(i+4)/5]++;
cout<<i<<' ';
t--;
}
if(!t)break;
}
cout<<endl;
}
int main()
{
cin>>n;
for(int i=1;i<=20;i++)
{
re[i]=5;
st[i]=5*(i-1)+1;
}
while(n--)
{
int t;cin>>t;
if(!solve(t))
{
backupsolve(t);
}
}
}

02-14
2599
2599
01-26
499
499
03-08
2258
2258

被折叠的 条评论
为什么被折叠?



