На стоянке есть только две зарядные станции для электромобилей c. Известно время прибытия и отъезда из автомобилей, а также время зарядки. Одновременно можно заряжать только два автомобиля.
car<-rep(1:5)
arrival<-c("8:00","8:00", "9:00","10:00","10:00")
leaving<-c("10:00","12:00", "11:00", "11:00", "12:00")
charging_time_h<-c(2,4,2,1,2)
df<-cbind(car,arrival, leaving, charging_time_h)
#Staying time at the parking
mat1<-matrix(0, ncol = 7, nrow = 5)
colnames(mat1) <- c("8:00", "9:00", "10:00", "11:00", "12:00", "13:00", "14:00")
rownames(mat1) <- c(1:5)
for(i in 1:length(car)) mat1[i,which(colnames(mat1) == arrival[i]):which(colnames(mat1) == leaving[i])]=1
mat1 <- rbind(mat1, 'Cars at th eparking' = colSums(mat1))
«Автомобили на стоянке» - общее количество автомобилей на стоянке одновременно.
Если третий автомобиль прибывает, когда обе зарядные станции заняты, он может дождаться следующей бесплатной зарядной станции. , Если третий автомобиль покидает парковку раньше, он остается незаряженным. В результате я хотел бы получить эту матрицу:
4-й автомобиль покинул парковку незаряженным - состояние «ЛОЖЬ». Пятая машина - «ИСТИНА / ЛОЖЬ», потому что зарядка не может быть завершена. Не могли бы вы помочь мне?
Большое спасибо заранее! С уважением, Инна