时间超限了,最后只有30分,哪位大佬可以帮忙看一下
查看原帖
时间超限了,最后只有30分,哪位大佬可以帮忙看一下
595862
Lyw2113400楼主2024/3/2 16:42
#include <iostream>
#include <string.h>
using namespace std;

struct trans
{
	int type;
	int price;
	int time;
	bool used; 
 } ca[100001];
int main()
{
	int n;//乘车次数
	cin>>n;
	int sum=0;
	for(int i=0;i<n;i++)
	{
		cin>>ca[i].type>>ca[i].price>>ca[i].time;
		if(ca[i].type==0)
		{
			ca[i].used=0;
			sum+=ca[i].price;
		}
	}
	
	for(int i=0;i<n;i++)
	{
		if(ca[i].type==1)
		{
			int j;
			for(j=0;j<i;j++)
			{
				if(ca[j].type==0&&ca[j].price>=ca[i].price&&ca[j].used==0&&(ca[i].time-ca[j].time<=45))
				{
					ca[j].used=1;
					break;
				}
			}
			if(j==i)
			{
				sum+=ca[i].price;
			}
		}
	}
	cout<<sum<<endl;
} 

2024/3/2 16:42
加载中...