nyoj168 房间安排问题

#include
#include
#include  
using namespace std;
struct node{
int num,begin,day;
}order;
int rooms[210];
int main()
{
int m,n,i;
scanf("%d",&m);
while(m--)
{
memset(rooms,0,sizeof(rooms));
scanf("%d",&n);
while(n--)
{
scanf("%d%d%d",&order.num,&order.begin,&order.day);
for(i = order.begin;i < order.begin+order.day;++i)
{
rooms[i] += order.num;
}
}
printf("%d\n",*max_element(rooms,rooms+210));
}
return 0;

}

算法思想:同一天订单的相交单数所对应的房间和即为最少的房间数。

这里还用到了c++里的STL max_element(v.begin,v.end);

你可能感兴趣的:(NYOJ)