45分求调
查看原帖
45分求调
1055459
eirk楼主2024/10/17 21:46

45分求调,TLE了11个点

下面?上代码 谢谢了

#include <cstdio>
using namespace std;
int a , money,ime;
int ci , m_answer ;
bool f = 0;
struct q{
	int time , money , a , use;
}e[1000000];
int main(){
	scanf("%d" , &ci);
	for ( int i = 1 ; i <= ci ; i ++ ){
		e[i].use = 0;
	}
	for ( int i = 1 ; i <= ci ; i ++ ){
		scanf("%d %d %d" , &a, &money , &ime);
		if (a == 0){
			m_answer += money;
			e[i].time = ime;
			e[i].a++;
			e[i].money = money;
		}
		if (a == 1){
			int p = i;
			for ( int j = 1 ; j <= p ; j ++ ){
				if (ime - e[j].time <= 45 and e[j].use == 0 and e[j].money >= money){
					e[j].use = 1;
		 			f = 1;
					break;
				}
			}
			if (f == 0){
				m_answer += money;
			}else{
				f = 0;
			}
		}
	}
    printf("%d" , m_answer);
	return 0;
}
2024/10/17 21:46
加载中...