C ++

 Computer >> コンピューター >  >> プログラミング >> C ++
  1. C++の電球スイッチャー

    最初にオフになっている電球がn個あるとします。まず、すべての電球をオンにします。次に、1つおきの電球をオフにします。 3回目のラウンドでは、3つおきの電球を切り替えます(オフの場合はオン、オンの場合はオフ)。同様に、i番目のラウンドでは、すべてのi電球を切り替えます。 n回目のラウンドでは、最後のバルブのみを切り替えます。したがって、nラウンド後に電球がいくつあるかを見つける必要があります。したがって、入力が3の場合、結果は1になります。これは-が原因です。 最初は、3つの電球が[オフ、オフ、オフ]です。 最初のラウンドの後、3つの電球は[オン、オン、オン]になります。 2回目のラウンドの

  2. C ++でRand7()を使用してRand10()を実装する

    1〜7の範囲の均一なランダム整数を生成する関数rand7があるとします。1〜10の範囲の均一なランダム整数を生成する別の関数rand10を作成する必要があります。一部のライブラリ関数を使用して乱数を生成することはできません。 2つの乱数が必要であるとすると、[8,10]になる可能性があります。 これを解決するには、次の手順に従います- rand40:=40 =40 rand40:=(rand7()-1)* 7 +(rand7()– 1) rand40 mod 10+1を返す 理解を深めるために、次の実装を見てみましょう- 例 #include <bits/st

  3. C++のSquareへのマッチ棒

    小さなマッチガールがいるとしましょう。そして、私たちは小さなマッチガールが持っているマッチ棒を正確に知っています。それらのマッチ棒をすべて使い切って1つの正方形を作る方法を見つけなければなりません。スティックを壊してはいけませんが、それらをリンクすることはできます。各マッチスティックは1回だけ使用する必要があります。入力は、女の子が持っているいくつかのマッチ棒で、棒の長さで表されます。マッチガールが持っているすべてのマッチ棒を使用して1つの正方形を作成できるかどうかを表すために、出力はtrueまたはfalseのいずれかになります。したがって、入力が[1,1,2,2,2]のような場合、答えは真に

  4. C++の1と0

    それぞれm0sとn1sのドミネーターがあるとします。一方、バイナリ文字列の配列があります。ここでのタスクは、指定されたm0とn1で生成できる文字列の最大数を見つけることです。 0と1はそれぞれ最大1回使用できます。したがって、入力がArray =[“ 10”、“ 0001”、“ 111001”、“ 1”、“ 0”、]であり、m=5およびn=3の場合、出力は4になります。 「10」、「0001」、「1」、「0」である50と31を使用して、合計4つのストリングを形成できます。 これを解決するには、次の手順に従います- サイズ(m + 1)x(n + 1)の行列を作成します ret:=0 0

  5. C++で円の中にランダムな点を生成する

    円の中心の半径とx-y位置があるとすると、円内に均一なランダムな点を生成するrandPoint()という関数を作成する必要があります。したがって、留意しなければならない重要なポイントがいくつかあります- 入力値と出力値は浮動小数点です。 円の中心の半径とx-y位置は、クラスコンストラクターに渡されます。 円の円周上の点は円の中にあると見なされます。 randPoint()は、ランダムポイントのx位置とy位置をこの順序で返します。 したがって、入力が[10、5、-7.5]のような場合、[11.15792、-8.54781]、[2.49851、-16.27854]、[11.16325、-1

  6. C++のマジックストリング

    文字列があるとします。その文字列はマジックストリングSと呼ばれ、「1」と「2」のみで構成され、次の規則に従います- 文字列Sは、文字「1」と「2」の連続した出現回数を連結すると文字列S自体が生成されるため、魔法のようです。 文字列Sの最初のいくつかのコンポーネントは次のとおりです-S=1221121221221121122…… Sで連続する「1」と「2」をグループ化すると、次のようになります。-1 22 11 2 1 22 1 22 11 2 1122......各グループでの「1」または「2」の出現は− 1 2 2 1 1 2 1 2 2 1 2 2 ...... ここで、入力とし

  7. C++でのサブシーケンスの増加

    整数配列があるとすると、与えられた配列の可能なすべての異なる増加部分列を見つけることがタスクであり、増加部分列の長さは少なくとも2でなければなりません。したがって、配列が[4,6,7,7のような場合]の場合、出力は次のようになります-[[4、6]、[4、7]、[4、6、7]、[4、6、7、7]、[6、7]、[6、7 、7]、[7,7]、[4,7,7]]。 これを解決するには、次の手順に従います- すべての結果を格納するためにresと呼ばれる配列を定義します solveというメソッドを作成します。これには、nums配列、start配列、temp配列が必要です tempのサイズが1より大きい場

  8. C++でのTeemo攻撃

    LOLの世界に、Teemoという名前のヒーローがいて、彼の攻撃によって敵のAsheが毒状態になる可能性があるとします。ここで、Teemoの攻撃の昇順の時系列をAsheに向けて与え、Teemoの攻撃ごとの毒の持続時間を与えたとすると、Asheが毒の状態にある合計時間を見つける必要があります。 Teemoは特定の時点の最初に攻撃し、Asheをすぐに毒状態にすると想定できます。 入力は[1,4]と2のようになり、出力は4になります。これは、時点1で、TeemoがAsheを攻撃し始め、Asheをすぐに毒殺するためです。ここで、この中毒状態は時点2の終わりまで2秒間続きます。そして、時点4で、Teem

  9. C++の重複しない長方形のランダムポイント

    重なり合わない軸に位置合わせされた長方形の長方形のリストがあるとすると、長方形で覆われた空間内の整数をランダムかつ均一に選択する関数pickを作成する必要があります。したがって、いくつかの点に留意する必要があります- 整数点は、整数座標を持つ点です。 長方形の周囲の点は、長方形で覆われたスペースに含まれます。 i番目の長方形=rects[i]は[x1、y1、x2、y2]を示します。ここで、[x1、y1]は左下隅の整数座標であり、[x2、y2]は右上隅。 各長方形の長さと幅は2000を超えません。 1 <=rects.length <=100 整数座標の配列としてポイントを返すを選択します

  10. C++での対角トラバース

    M x N個の要素の行列があるとすると、行列のすべての要素を対角順に見つける必要があります。したがって、行列が-のような場合 1 2 3 4 5 6 7 8 9 出力は[1,2,4,7,5,3,6,8,9]になります これを解決するには、次の手順に従います- 配列をretにし、row:=0およびcol:=0、n:=row count、m:=col count、down:=falseを設定します 0からn–1の範囲のiの場合 x:=i、y:=0 配列の一時を作成する =0かつy

  11. C++で最長のパリンドロームサブシーケンス

    文字列sがあるとすると、パリンドロームサブシーケンスの最長の長さをsで見つける必要があります。 sの最大長は1000であると想定できます。したがって、入力が「bbbab」のような場合、出力は4になります。考えられるパリンドロームのサブシーケンスの1つは「bbbb」です。 これを解決するには、次の手順に従います- x:=s、次にx、n:=sのサイズを逆にする nが0の場合、0を返します sの前に1つの空白スペースを追加してsを更新し、xの前に1つの空白スペースを追加してxを更新します ret:=0 サイズ(n + 1)x(n + 1)の1つの行列dpを作成します 1からnの範囲のi

  12. C++のランダムフリップマトリックス

    n_rowsの行数とn_colsの列数のバイナリ行列があるとします。ここでは、すべての値が最初は0です。0の値をランダムに均一に選択して1に変更し、その値の位置[row.id、col.id]を返す関数flip()を定義する必要があります。また、すべての値を0に戻す別の関数reset()を作成する必要があります。システムのMath.random()の呼び出し回数を最小限に抑え、時間とスペースの複雑さを最適化する必要があります。 次数2x3の行列があり、flipを4回呼び出すと、結果は[0,1]、[1,2]、[1,0]、[1,1]になります。 これを解決するには、次の手順に従います- 穴と呼

  13. C++での連続サブアレイ合計

    非負の数とターゲット整数kのリストがあるとすると、配列に、合計がkの倍数、合計がn*になる少なくとも2のサイズの連続サブ配列があるかどうかを確認する関数を作成する必要があります。 kここで、nも整数です。したがって、入力が[23,2,4,6,7]のようで、k =6の場合、[2,4]はサイズ2の連続サブ配列であり、合計が6になるため、結果はTrueになります。 これを解決するには、次の手順に従います- マップmを作成し、m [0]:=-1を設定し、sum:=0、n:=nums配列のサイズを設定します 0からn–1の範囲のiの場合 sum:=sum + nums [i] kがゼロ以外の場

  14. C++で削除することによる辞書の最長の単語

    文字列と文字列辞書があるとすると、指定された文字列の一部の文字を削除することで形成できる最長の文字列を辞書で見つける必要があります。考えられる結果が複数ある場合は、辞書式順序が最小の最長の単語を返します。結果がない場合は、空白の文字列を返します。したがって、入力が「abpcplea」のようで、d =[「ale」、「apple」、「monkey」、「plea」]の場合、結果は「apple」になります。 これを解決するには、次の手順に従います- isSubsequence()というメソッドを定義します。これにはs1とs2が必要です j:=0 0からs1のサイズまでの範囲のiの場合 s2

  15. C++の連続配列

    バイナリ配列があるとすると、0と1の数が等しい連続したサブ配列の最大長を見つける必要があります。したがって、入力が[0,1,0]の場合、出力は[0、 1]または[1,0]は、0と1の数が等しい最大の連続配列です。 これを解決するには、次の手順に従います- ret:=0、n:=numsのサイズ、sum:=0 マップmを作成し、m [0]を設定します:=-1 0からnumsのサイズまでの範囲のiの場合– 1 sum:=nums[i]が1の場合はsum+1、それ以外の場合はsum:=sum – 1 合計がmの場合、ret:=retの最大値とi– m [sum]、それ以外の場合はm [

  16. C++での美しいアレンジメント

    1からNまでのN個の整数があるとします。この配列のi番目の位置(1 <=i <=N)に次のいずれかが当てはまる場合、これらのN個の数値で完全に構成される配列として美しい配列を定義します。 − i番目の位置の数値はiで割ることができます。 iはi番目の位置の数値で割り切れます。 したがって、入力が2の場合、最初の美しい配置は[1,2]であるため、結果も2になります。ここで、1番目の位置(i =1)の数値は1であり、1はi(i =1)で割り切れます。次に、2番目の位置(i =2)の数は2であり、2はi(i =2)で割り切れます。 2番目の美しい配置は[2、1]です。ここで、1番目の位置(i

  17. C++での重み付きランダムピック

    正の整数の配列wがあり、w [i]がインデックスiの重みを表すとすると、その重みに比例してインデックスをランダムに選択する関数pickIndex()を定義する必要があります。 したがって、入力が[1,3]のようである場合、pickIndex()を5回呼び出すと、答えは− 0、1、1、1、0になる可能性があります。 これを解決するには、次の手順に従います- 配列vを定義します イニシャライザを使用して、次のように初期化します n:=w [0] 1からwのサイズまでの範囲のiの場合 w [i]:=w [i] + w [i – 1] n:=w [i] v =w pickI

  18. シリーズ3、5、33、35、53のN番目の項をC++で検索するプログラム

    このチュートリアルでは、シリーズ3、5、33、35、53のN番目の用語を見つけるプログラムについて説明します… このために、番号が提供されます。私たちの仕事は、その特定の位置で特定のシリーズの用語を見つけることです。 例 #include <bits/stdc++.h> using namespace std; //finding the nth term in the series int printNthElement(int n){    int arr[n + 1];    arr[1] = 3;    arr[

  19. C++でHCFを繰り返し検索するプログラム

    このチュートリアルでは、HCFを繰り返し見つけるプログラムについて説明します。 このために、2つの番号が提供されます。私たちのタスクは、反復関数を使用して、指定された数値のHCFを計算することです。 例 #include <bits/stdc++.h> using namespace std; int get_HCF(int a, int b){    while (a != b){       if (a > b)          a = a - b;   &n

  20. 文字がC++で母音または子音であるかどうかを確認するプログラム

    このチュートリアルでは、文字が母音であるか子音であるかを確認するプログラムについて説明します。 このために、キャラクターが提供されます。私たちの仕事は、提供された文字が母音であるか子音であるかをユーザーに印刷することです。 例 #include <iostream> using namespace std; //checking if the character is a vowel or consonant void is_vowel(char x){    if (x == 'a' || x == 'e' || x == &

Total 5992 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:168/300  20-コンピューター/Page Goto:1 162 163 164 165 166 167 168 169 170 171 172 173 174