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

少なくとも1人の水泳選手に会うのに何分待たなければならないかを数えるC++プログラム


4つの数p、a、b、cがあるとします。プールがあり、3人のスイマーがいます。プールを渡って戻ってくるまで、それぞれa、b、c分かかります。したがって、最初のスイマーは、開始時刻の0、a、2a、3a、...分後にプールの左側にいます。 2番目は0、b、2b、3b、...分で、3番目は0、c、2c、3c、...です。p分後にプールを訪れた場合、彼らは泳ぎ始めました。プールの左側に少なくとも1人のスイマーがいるまで、少なくとも1人は待たなければなりません。

したがって、入力がp=2のような場合。 a =6; b =10; c =9の場合、出力は2でプールの近くにあり、最初のスイマーが6で戻ってくるため、4単位の時間待機する必要があります。

ステップ

これを解決するには、次の手順に従います-

(decrease p by 1)
return minimum of (a - (p mod a + 1)), (b - (p mod b + 1)) and (c - (p mod c + 1))
>

理解を深めるために、次の実装を見てみましょう-

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

int solve(int p, int a, int b, int c) {
   p--;
   return min(a - (p % a + 1), min(b - (p % b + 1), c - (p % c + 1)));
}
int main() {
   int p = 2;
   int a = 6;
   int b = 10;
   int c = 9;
   cout << solve(p, a, b, c) << endl;
}

入力

2, 6, 10, 9

出力

4

  1. C ++プログラムを使用してプログラムを起動するにはどうすればよいですか?

    ここでは、メモ帳などのサードパーティアプリケーションやC++プログラムを使用したものを起動する方法を説明します。このプログラムは非常に単純で、コマンドプロンプトコマンドを使用してこのタスクを実行できます。 system()関数内でアプリケーション名を渡します。これにより、それに応じて開きます。 例 #include <iostream> using namespace std; int main() {    cout >> "Opening Nodepad.exe" >> endl;    sy

  2. C#の1つのクラスにいくつのデストラクタを含めることができますか?

    c#では、デストラクタはクラスの特別なメソッドであり、クラス内で使用されて、クラスのオブジェクトまたはインスタンスを破棄します。 クラス内に存在できるデストラクタは1つだけです 以下は、c#のデストラクタのプロパティです デストラクタはパラメータを取りません デストラクタはチルダ記号(〜)で始まります 構造体(〜)はStructsでは定義できません。 デストラクタを呼び出すことはできません。それらは自動的に呼び出されます。 デストラクタは、オブジェクトの基本クラスでFinalizeを暗黙的に呼び出します。 例 class Demo{   &nbs