C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

遅延タイミングの後にタイピングゲームの勝者を見つけるためのC++プログラム


5つの数s、v1、v2、t1、t2があるとします。 AmalとBimalはタイピングゲームをプレイしており、オンラインでゲームをプレイしています。このゲームでは、長さがsの文字列を入力します。 Amalはv1ミリ秒で1文字を入力し、Bimalはv2ミリ秒で1文字を入力します。 Amalのネットワーク遅延はt1ミリ秒で、Bimalのネットワーク遅延はt2ミリ秒です。

接続遅延がtミリ秒の場合、参加者の競争は次のように通過します-

  • ゲーム開始からtミリ秒後、参加者は入力するテキストを受け取ります。

  • その直後、彼はそれをタイプし始めます。

  • 彼がすべてのテキストの入力を終了してからちょうどtミリ秒後に、サイトはそれに関する情報を受け取ります。

より速く完了する人が勝者になります。両方の参加者の時間が同じである場合、それは引き分けです。勝者を見つける必要があります。

したがって、入力がs=5のような場合。 v1 =1; v2 =2; t1 =1; t2 =2の場合、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

  1. シリーズ3、5、33、35、53のN番目の項をC++で検索するプログラム

    このチュートリアルでは、シリーズ3、5、33、35、53のN番目の用語を見つけるプログラムについて説明します… このために、番号が提供されます。私たちの仕事は、その特定の位置で特定のシリーズの用語を見つけることです。 例 #include <bits/stdc++.h> using namespace std; //finding the nth term in the series int printNthElement(int n){    int arr[n + 1];    arr[1] = 3;    arr[

  2. グラフ行列の逆行列を見つけるためのC++プログラム

    これは、グラフ行列の逆行列を見つけるためのC++プログラムです。行列の逆行列は、行列が非特異である場合にのみ存在します。つまり、行列式は0であってはなりません。行列の逆行列は多くの方法で見つけることができます。ここでは、随伴行列とその行列式を使用して、グラフ行列の逆行列を見つけます。例に含まれる手順 Begin    function INV() to get the inverse of the matrix:    Call function DET().    Call function ADJ().