假設我們有五個數字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中文網其他相關文章!