#13711: 一直卡在line2


buanyz03 (張晁瑋)

學校 : 新北市立板橋高級中學
編號 : 2629
來源 : [114.25.190.198]
最後登入時間 :
2023-09-06 15:43:50
b109. 2. IC 板檢測 -- 93學年度全國資訊學科能力競賽 | From: [114.42.53.65] | 發表日期 : 2018-04-12 19:07

#include <iostream>
#include <vector>
#include <algorithm>
#include <math.h>
using namespace std;
struct data
{
int a,num;
};
bool gt(data x,data y)
{
return x.a<y.a;
}
int main()
{
int m[20],n,finish[20],k,time,start,min_time,c=0;
vector <data> d;
data temp;
while(cin>>n)
{
++c;
for(int i=0;i<n;++i)
{
finish[i]=0;
cin>>m[i];
}
d.clear();
while(cin>>temp.a>>temp.num)
{
if(temp.a==0 && temp.num==0)
{
break;
}
d.push_back(temp);
}
stable_sort(d.begin(),d.end(),gt);
for(int i=0;i<d.size();++i)
{
min_time=2147483647;
k=-1;
for(int j=0;j<n;++j)
{
start=max(finish[j],d[i].a);
time=start+5+((d[i].num+m[j]-1)/m[j])+10;
if(time<min_time)
{
min_time=time;
k=j;
}
else if(time==min_time)
{
if(m[j]>m[k])
{
k=j;
}
}
}
if(i==d.size()-1)
{
cout<<finish[k]+5<<" "<<k+1<<endl;
break;
}
finish[k]=min_time;
/*for(int j=0;j<n;++j)
{
cout<<finish[j]<<" ";
}
cout<<endl;*/
}
}
}

不知道到底哪裡寫錯了

 
ZeroJudge Forum