5개의 숫자 s, v1, v2, t1 및 t2가 있다고 가정합니다. 아말과 비말은 온라인으로 타이핑 게임을 하고 있습니다. 이 게임에서는 길이가 s인 문자열을 입력합니다. Amal은 v1 밀리초 안에 문자를 입력하고 Bimal은 v2 밀리초 안에 문자를 입력합니다. Amal의 네트워크 지연은 t1밀리초이고 Bimal의 네트워크 지연은 t2밀리초입니다.
연결 지연이 t밀리초이면 게임은 다음과 같이 진행됩니다.
게임 시작 후 t밀리초가 지나면 참가자는 입장하라는 텍스트를 받습니다.
그런 다음 그는 타이핑을 시작했습니다.
T 그가 모든 텍스트를 입력한 지 1000분의 1초 후에 웹사이트에 관련 정보가 수신되었습니다.
먼저 끝내는 사람이 승자가 됩니다. 두 참가자의 시간이 같으면 동점입니다. 우리는 승자를 찾아야 합니다.
입력이 s = 5; v1 = 2; t1 = 1; t2 = 2이면 Amal의 성공 메시지가 7밀리초 안에 도착하고 Bimal의 성공 메시지가 14초 안에 도착하기 때문에 출력은 Amal이 됩니다. 밀리초. 그래서 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!