コンテストで勝者と非勝者の異なるカウントを見つけるためのC++コード
nとkの2つの数字があるとします。コンテストにはn人の学生がいます。記念品を受け取る人もいれば、証明書を受け取る人もいれば、何も受け取らない人もいます。何かを受け取った人は勝者と呼ばれます。しかし、記念品と証明書の数を数えるいくつかの規則があります。証明書の数は、記念品の数の正確にk倍でなければなりません。勝者の数はn/2を超えてはなりません。勝者がいない可能性もあります。これらのルールに従って、勝者の可能な最大数を特定する必要があります。次に、記念品を持っている学生の数、証明書を持っている学生の数、勝者ではない学生の数を見つけます。
したがって、入力がn=18のような場合。 k =2の場合、出力は[3、6、9]になります。
ステップ
これを解決するには、次の手順に従います-
x := (n / 2) / (1 + k) return x, (k * x) and (n - (x + (k * x)))
例
理解を深めるために、次の実装を見てみましょう-
#include <bits/stdc++.h> using namespace std; void solve(int n, int k){ int x = (n / 2) / (1 + k); cout << x << ", " << (k * x) << ", " << (n - (x + (k * x))); } int main(){ int n = 18; int k = 2; solve(n, k); }
入力
8, 2
出力
3, 6, 9
-
C++で文字列を検索して置換
文字列Sがあるとすると、文字のグループを新しい文字に置き換えるいくつかの置換操作を実行します。各置換操作には、開始インデックスi、ソースワードx、およびターゲットワードyの3つのパラメータがあります。ここでの規則は、xが元の文字列Sの位置iで始まる場合、xの出現をyに置き換えるというものです。それ以外の場合は何もしません。 したがって、例として、S =abcdがあり、置換操作i =2、x =cd、y =ffffがある場合、 cdは元の文字列の位置2から始まるため、考えてみます。 S、これを「ffff」に置き換える必要があります。 置換操作i=0、x =ab、y =eeeと、別の置換操作i
-
C ++で文字列の長さを見つけるための5つの異なる方法?
ここでは、C++で文字列の長さを取得する5つの異なる方法を示します。 C ++では、従来の文字配列文字列を使用できます。C++にはStringクラスもあります。さまざまな領域で、文字列の長さを計算するさまざまな方法があります。 C ++ Stringクラスには、length()およびsize()関数があります。これらは、文字列型オブジェクトの長さを取得するために使用できます。文字列のような従来のCの長さを取得するには、strlen()関数を使用できます。これはcstringの下にあります ヘッダーファイル。別の2つのアプローチは簡単です。 1つはwhileループを使用する方法で、もう1つはf