FDU 2020 | 1. 食堂打饭

文章目录

  • [1. 题目描述](#1. 题目描述)
  • [2. 我的尝试](#2. 我的尝试)

1. 题目描述

下课了,有 n 位同学陆续赶到⻝堂进⾏排队打饭,其中第 i 位同学的到达时间为 a i a_i ai,打饭耗时为 t i t_i ti,等待时间上限为 b i b_i bi,即如果其在第 a i + b i a_i+b_i ai+bi秒的时刻仍然没有轮到他开始打饭,那么他将离开打饭队列,另寻吃饭的地⽅。问每位同学的开始打饭时间,或者指出其提前离开了队伍(如果这样则输出 -1)。


样例

输入

复制代码
4
1 3 3
2 2 2
3 9 1
4 3 2

输出

复制代码
1 4 -1 6

2. 我的尝试

直接模拟大法

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

int main() {
	int n;
	cin >> n;
	
	int a[n], t[n], b[n], ans[n];
	
	for (int i = 0; i < n; i ++) 
		scanf("%d%d%d", &a[i], &t[i], &b[i]);
		
	int time = 0;
	
	for (int i = 0; i < n; i++) {
		if (time <= a[i] + b[i]) {
			ans[i] = max(time, a[i]);
			time = max(time, a[i]) + t[i];
		}
		
		else ans[i] = -1;
	}
	
	for (int i = 0; i < n; i ++)
		printf("%d ", ans[i]);
		
	return 0;
}
相关推荐
草莓熊Lotso1 小时前
【洛谷题单】--分支结构(三)
c语言·c++·刷题·洛谷
GetcharZp2 小时前
C++日志库新纪元:为什么说spdlog是现代C++开发者必备神器?
c++·后端
Algebraaaaa2 小时前
为什么C++主函数 main 要写成 int 返回值 | main(int argc, char* argv[]) 这种写法是什么意思?
开发语言·c++
阿群今天学习了吗5 小时前
“鱼书”深度学习进阶笔记(3)第四章
人工智能·笔记·python·深度学习·算法
IT猿手5 小时前
2025年最新原创多目标算法:多目标酶作用优化算法(MOEAO)求解MaF1-MaF15及工程应用---盘式制动器设计,提供完整MATLAB代码
算法·数学建模·matlab·多目标优化算法·多目标算法
fqbqrr6 小时前
2508C++,检测S模式
c++
专注VB编程开发20年8 小时前
IIS Express中可以同时加载并使用.net4.0和.NET 2.0的 DLL
c++·windows·microsoft·c#·vb.net
光头闪亮亮8 小时前
C++凡人修仙法典 - 散修版
c++
数据智能老司机9 小时前
图算法趣味学——最大流算法
数据结构·算法·云计算
秋难降9 小时前
【数据结构与算法】———深度优先:“死磕 + 回头” 的艺术
数据结构·python·算法