哈尔滨理工大学软件与微电子学院程序设计竞赛——A.Race【模拟】(题面坑啊)

题目传送门


在这里插入图片描述


题解

  • 题目有点坑啊,后来补上 只算整数时间点的条件 了。
  • 恕我直言,打死我也想不出来竟然不考虑小数时间点。Q_Q
  • 那么这数据范围,一秒一循环模拟就过了
  • 水题

AC-Code

#include <bits/stdc++.h>
using namespace std;

int main() {
	int v1, v2, t, s, l;
	while (cin >> v1 >> v2 >> t >> s >> l) {
		if (v1 <= v2) {
			if (t <= l)
				cout << "Hong " << l / v2 << endl;
			else
				cout << "Tie " << l / v2 << endl;
		}
		else {
		int s1 = 0, s2 = 0;
		int time1 = 0, time2 = 0;	// 跑步时间
		while (s1 < l && s2 < l) {
			if (s1 - s2 >= t) {
				s1 = v1 * time1;
				time2 += s;
				s2 = v2 * time2;
			}
			else {
				++time1, ++time2;
				s1 = v1 * time1;
				s2 = v2 * time2;
			}
		}
		if (s1 < s2)
			cout << "Hong " << l / v2 << endl;
		else if (s1 > s2)
			cout << "Ming " << time2 << endl;
		else
			cout << "Tie " << time2 << endl;
		}
	}
}

猜你喜欢

转载自blog.csdn.net/Q_1849805767/article/details/106748526