题目
思路
思路是利用结构体存储相应学生的信息。其实题目中那个序号大的排在后面这个信息用不上。应该是在出题的时候考虑还没学到结构体给删了吧。然后其实我们要基于第一个来取水的diao mao (学生) 来计算时间,利用succed来表明这个diao mao (学生) 已经成功取到了水,那么后面的计算就需要在这个diao mao (学生) 来的时间的基础上加上这个succeed与limit比较。
AC代码
#include <bits/stdc++.h>
using namespace std;
struct Student {
int num;
int limit;
} s[10010];
int main() {
int T;
cin >> T;
for (int i = 1; i <= T; ++i) {
int n;
cin >> n;
for (int i = 1; i <= n; ++i) {
cin >> s[i].num >> s[i].limit;
}
int time_, succeed = 0;
for (int i = 1; i <= n; ++i) {
time_ = s[1].num + succeed;
//time_从第一个人取水的时间开始计算
if (s[i].limit >= time_) {
succeed++;//表示成功取水的人数
cout << time_ << " ";
} else {
cout << 0 << " ";
}
}
cout << endl;
}
}
后记
emm 怎么感觉程序设计题也难起来了。 不过今天模电小班课做的电路图被老师夸赞了还是非常开心的鸭!!
感觉最近学习的热情又回来了,像是一台老式计算机又被注入了新的机油转起来了hhhh~