首页  >  文章  >  后端开发  >  C++程序用于在延迟时间后找到打字游戏的获胜者

C++程序用于在延迟时间后找到打字游戏的获胜者

WBOY
WBOY转载
2023-08-27 16:29:06715浏览

C++程序用于在延迟时间后找到打字游戏的获胜者

假设我们有五个数字s、v1、v2、t1和t2。Amal和Bimal正在玩一个打字游戏,他们在线上玩游戏。在这个游戏中,他们将输入一个长度为s的字符串。Amal在v1毫秒内输入一个字符,Bimal在v2毫秒内输入一个字符。Amal的网络延迟是t1毫秒,Bimal的网络延迟是t2毫秒。

如果连接延迟是t毫秒,比赛的过程如下:

  • 在游戏开始后的t毫秒后,参与者收到要输入的文本。

  • 然后他开始输入。

  • 在他输入完所有文本后的t毫秒后,网站接收到相关信息。

谁先完成,谁就是赢家。如果两个参与者的时间相同,则是平局。我们需要找出赢家。

因此,如果输入是s = 5;v1 = 1;v2 = 2;t1 = 1;t2 = 2,那么输出将是Amal,因为Amal的成功信息在7毫秒内到达,Bimal的成功信息在14毫秒内到达。所以,Amal获胜。

步骤

为了解决这个问题,我们将按照以下步骤进行:

p := (s * v1) + (2 * t1)
q := (s * v2) + (2 * t2)
if p is same as q, then:
   return "Draw"
otherwise when p < q, then:
   return "Amal"
Otherwise
   return "Bimal"

示例

让我们看下面的实现以更好地理解−

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

string solve(int s, int v1, int v2, int t1, int t2) {
   int p = (s * v1) + (2 * t1);
   int q = (s * v2) + (2 * t2);
   if (p == q)
      return "Draw";
   else if (p < q)
      return "Amal";
else
   return "Bimal";
}
int main() {
   int s = 5;
   int v1 = 1;
   int v2 = 2;
   int t1 = 1;
   int t2 = 2;
   cout << solve(s, v1, v2, t1, t2) << endl;
}

输入

5, 1, 2, 1, 2

输出

Amal

以上是C++程序用于在延迟时间后找到打字游戏的获胜者的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除