洛谷闹鬼?样例过提交后AC和RE分数在30~70间浮动代码带注释求调过必关
查看原帖
洛谷闹鬼?样例过提交后AC和RE分数在30~70间浮动代码带注释求调过必关
1284582
F_L_Bird楼主2024/8/15 16:46

代码如下:

#include<iostream>
using namespace std;

struct Ticket{		//优惠票结构体
	int get_time = 0;	//获得优惠票的时间
	int price = 0;	//优惠票最高减免价格
}tickets[100005];	//定义优惠票数组

bool find(int use_time,int price,int index){	//用于查找有没有优惠票可以使用
	for(int i = index - 45;i < index;i += 1)	//查找前45张优惠票
	{
		if(use_time - tickets[i].get_time <= 45 && price <= tickets[i].price)	//如果时间相差小于45且优惠票可以减免
		{
			tickets[i].price = -1;		//将优惠票可以减免的价格改为-1(无法使用)
			return true;
		}
	}
	return false;
}

int main(){
	int n;	//如题意
	long long ans = 0;	//最后要输出的答案
	cin>>n;
	bool type;	//载具类型
	int price,t,index = 0;	//如题意,index用于记录优惠票张数
	for(int i = 0;i < n;i += 1)
	{
		cin>>type>>price>>t;
		if(!type)	//载具为地铁
		{
			ans += price;	//交地铁票钱
			tickets[index].get_time = t;	//记录优惠票
			tickets[index].price = price;
			index += 1;		//记录下标+1
		}
		else		//载具为公交车
		{
			if(!find(t,price,index))	//如果没有找到可用的优惠票则交车钱
			{
				ans += price;
			}
		}
	}
	cout<<ans<<endl;
	return 0;
}

提交结果如标题所示,样例无误但提交结果为AC和RE分数在30~70间浮动

总之求dalao指点啦QwQ,无论您的指点有没有起作用总之指点必关cwc

谢谢啦

2024/8/15 16:46
加载中...