Heim  >  Artikel  >  Backend-Entwicklung  >  C++-Programm zum Ermitteln des Gewinners eines Tippspiels nach Verzögerungszeit

C++-Programm zum Ermitteln des Gewinners eines Tippspiels nach Verzögerungszeit

WBOY
WBOYnach vorne
2023-08-27 16:29:06715Durchsuche

C++-Programm zum Ermitteln des Gewinners eines Tippspiels nach Verzögerungszeit

Angenommen, wir haben fünf Zahlen s, v1, v2, t1 und t2. Amal und Bimal spielen ein Tippspiel, das sie online spielen. In diesem Spiel geben sie eine Zeichenfolge der Länge s ein. Amal gibt ein Zeichen in v1-Millisekunden ein und Bimal gibt ein Zeichen in v2-Millisekunden ein. Die Netzwerkverzögerung von Amal beträgt t1 Millisekunden und die Netzwerkverzögerung von Bimal beträgt t2 Millisekunden.

Beträgt die Verbindungsverzögerung t Millisekunden, läuft das Spiel wie folgt ab:

  • Nach t Millisekunden nach Spielstart erhält der Teilnehmer den Text zur Eingabe.

  • Dann fing er an zu tippen.

  • T Millisekunden nachdem er den gesamten Text eingegeben hatte, erhielt die Website die relevanten Informationen.

Wer als Erster ins Ziel kommt, ist Sieger. Wenn beide Teilnehmer die gleiche Zeit haben, herrscht Unentschieden. Wir müssen den Gewinner finden.

Wenn die Eingabe also s = 5; v2 = 1; t1 = 2 ist, dann ist die Ausgabe Amal, da die Erfolgsmeldung von Amal in 7 Millisekunden eintrifft und die Erfolgsmeldung von Bimal innerhalb von 14 Millisekunden eintrifft Millisekunden. Also gewinnt Amal.

Schritte

Um dieses Problem zu lösen, befolgen wir die folgenden Schritte:

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"

Beispiel

Sehen wir uns zum besseren Verständnis die Implementierung unten an –

#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;
}

Eingabe

5, 1, 2, 1, 2

Ausgabe

Amal

Das obige ist der detaillierte Inhalt vonC++-Programm zum Ermitteln des Gewinners eines Tippspiels nach Verzögerungszeit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen