Решение задачи "Кондиционер" с Codeforces

Без пояснения   Просмотров: 12


Гильдонг — владелец ресторана Пулькоги. Ресторан пользуется большим спросом, и часто посетители хотят забронировать столик до посещения.

Гильдонг так старается угодить всем посетителям, что он даже запомнил предпочитаемые диапазоны температуры всех посетителей! Смотря на список бронирований, он хочет удовлетворить всех посетителей, контролируя температуру ресторана.

В ресторане стоит кондиционер, у которого есть три состояния: выключенное, нагрев, и охлаждение. Когда кондиционер выключен, температура в ресторане не изменяется. Когда включен нагрев, температура увеличивается на 1 каждую минуту. Наконец, когда включено охлаждение, температура уменьшается на 1 каждую минуту. Гильдонг может переключать состояние сколько угодно раз, в любые целочисленные минуты. Кондиционер исходно выключен.

Каждый посетитель характеризуется тремя значениями: ti — момент визита (в минутах) i-го посетителя, li — нижняя граница предпочитаемого диапазона температур, and hi — верхняя граница предпочитаемого диапазона температур.

Каждый посетитель удовлетворен, если температура находится в их предпочтительном диапазоне в момент их посещения ресторана. Формально, i-й посетитель удовлетворён, если и только если в минуту ti температура находится в отрезке от li до hi, включительно.

Вам дана исходная температура, список времен посещения посетителей и их предпочитаемые диапазоны температуры, помогите ему удовлетворить всех посетителей.

Код

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,m,t,l,h,pl,ph,q,pret;
	cin>>q;
	bool allhappy;
	while(q--){
		cin>>n>>m;
		pl=m;
		ph=m;
		allhappy=true;
		pret=0;
		while(n--){
			cin>>t>>l>>h;
			pl=pl-t+pret;
			ph=ph+t-pret;
			if(pl>h or ph<l){
				allhappy=false;
			}
			pl=max(pl,l);
			ph=min(ph,h);
			pret=t;
		}
		if(allhappy) puts("YES");
		else puts("NO");
	}
}

         

 Администратор Photo Автор: Администратор


Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться