#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <map>
using namespace std;
typedef struct jar{
int time;
int de;
};
int main()
{
int n,m;
scanf("%d %d",&n,&m);
jar my_jar;
map<int,jar> mymap,mymap1;
int index[102]={0},time[102]={0};
for(int i=1;i<=m;i++)
{
scanf("%d",&index[i]);
}//yilai
for(int i=1;i<=m;i++)
{
scanf("%d",&time[i]);
}//shijian
for(int i=1;i<=m;i++)
{
my_jar.de=index[i];
my_jar.time=time[i];
mymap[i]=my_jar;
mymap1[i]=my_jar;
}
map<int,jar>::iterator it=mymap.begin();
while(it!=mymap.end())
{
if(it->second.de==0)
{
it->second.time+=1;
printf("%d ",1);
it++;
}
else
{
int time=it->second.time;
it->second.time=mymap[it->second.de].time;
printf("%d ",it->second.time);
it->second.time=it->second.time+time;
it++;
}
}
printf("\n");
map<int,jar>::iterator it1=mymap1.begin();
while(it1!=mymap1.end())
{
if(it1->second.de==0)
{
if(it1->second.time>n)
{
break;
}
printf("%d ",n-it1->second.time+1);
it1->second.time+=1;
it1++;
continue;
}
else if(it1->second.de!=0)
{
if((mymap1[it1->second.de].time+it1->second.time)>n)
{
break;
}
else
{
int time=it1->second.time;
int total=n-time;
printf("%d ",total);
it1->second.time=mymap1[it1->second.de].time;
it1->second.time=it1->second.time+time;
}
it1++;
}
}
return 0;
}
202212-2训练计划(70分)
最新推荐文章于 2024-10-17 11:39:06 发布