C ++

 Computer >> コンピューター >  >> プログラミング >> C ++
  1. C++でチップを試す

    いくつかのチップがあるとすると、i番目のチップは現在位置チップ[i]にあります。次の2つのタイプの操作は、任意のチップで必要に応じて何度でも実行できます(場合によってはゼロ)- i番目のチップを2ユニットずつ左側または右側に移動します。コストは0です。 i番目のチップを1単位ずつ左側または右側に移動します。コストは1です。 最初は、2つ以上のチップが存在する可能性があります。すべてのチップを同じ位置に移動するために必要な最小コストを返す必要があります。最終的な位置は何でもかまいません。したがって、最初のチップの配列が[2,2,2,3,3]の場合、出力は2になります。4番目と5

  2. C++で2Dグリッドをシフト

    サイズmxnの2Dグリッドが1つあるとします。別の変数kがあります。グリッドをk回シフトする必要があります。シフト操作は以下のようになります グリッドG[i、j]の要素がG [i、j + 1]に移動します グリッドG[i、n –1]の要素がG[i + 1、0]に移動します グリッドG[m-1、n –1]の要素がG[0、0]に移動します したがって、グリッドが-のような場合 1 2 3 4 5 6 7 8 9 出力は-になります 9 1 2 3 4 5 6 7 8

  3. リンクリストの2進数をC++の整数に変換する

    単一リンクリストへの参照ノードである「ヘッド」が1つあるとします。リンクリストに存在する各ノードの値は0または1です。このリンクリストには、数値のバイナリ表現が格納されます。リンクリストにある数値の10進数値を返す必要があります。したがって、リストが[1,0,1,1,0,1]のような場合 これを解決するには、次の手順に従います- x:=リスト要素を配列に変換する 次に、リストを逆にしますx ans:=0、およびtemp:=1 範囲i:=0のiの場合、x –1のサイズまで ans:=ans + x [i] * temp temp:=temp * 2

  4. C / C ++の2-3ツリー(検索と挿入)?

    2-3ツリーは、ツリーデータ構造として定義され、子を持つすべてのノード(内部ノード)には、2つの子(2ノード)と1つのデータ要素、または3つの子(3ノード)と2つのデータがあります。要素。 定義 1つのデータ要素と2つの子がある場合、内部ノードは2ノードと呼ばれます。 2つのデータ要素と3つの子がある場合、内部ノードは3ノードと呼ばれます。 次のステートメントのいずれかが満たされる場合に限り、Tは2-3ツリーと呼ばれます- Tは空または空です。つまり、Tにはノードが含まれていません。 Tは、データ要素aを備えた2ノードです。 Tが子Lと右子Rを残した場合、次のように結

  5. 2-C / C ++の満足度(2-SAT)の問題?

    f =(x1∨y1)∧(x2∨y2)∧...∧(xn∨yn)とします。 問題:fは満足できるか? xi∨yiと および すべて同等です。したがって、(xi∨yi)のそれぞれをこれらの2つのステートメントに変換しています。 ここで、2n個の頂点を持つグラフを想定します。 (xi∨yi)のそれぞれの場合、2つの有向エッジが追加されます ¬xiからyiへ ¬yiからxiへ ¬xiとxiの両方が同じSCC(Strongly Connected Component)にある場合、fは充足可能として扱われません fが満足できるものとして扱われると仮定します。ここで、fを満たす

  6. C++での3方向マージソート

    マージソートでは、配列を再帰的に2つの部分に分割し、ソートして最後にマージします。マージソートの変形は、配列を2つの部分に分割する代わりに、3つの部分に分割する3方向のマージソートとして扱われます。 マージソートは、配列を再帰的にサイズが半分のサブ配列に分解します。同様に、3方向マージソートは配列をサイズの3分の1のサブ配列に分解します。 例 Input : 46, -1, -44, 79, 31, -41, 11, 20 , 74, 94 Output : -44 -41 -1 11 20 31 46 74 79 94 Input : 24, -18 Output : -18 24 3

  7. C++17の初期化子を使用したElseおよびSwitchステートメント

    多くの場合、関数によって返されるものの値を検証し、この値に基づいて条件付き操作を実行する必要があります。したがって、コードを以下に示します- // Some method or function return_type foo(Params) // Call function with Params and // store return in var1 auto var1 = foo(Params); if (var1 == /* some value */) {    //Perform Something } else {    //Perform

  8. C++の範囲のセットビットをコピーします

    このチュートリアルでは、指定された範囲内のある数値のセットビットを別の数値にコピーするプログラムについて説明します。 このために、2つの整数が提供されます。私たちのタスクは、最初の数値のビットを確認し、それらが指定された範囲内にある場合は、それらのビットを2番目の数値にも設定することです。最後に、生成された数字を返します。 例 #include <bits/stdc++.h> using namespace std; //copying set bits from y to x void copySetBits(unsigned &x, unsigned y, unsig

  9. C++での凸包グラハムスキャン

    このチュートリアルでは、特定の点のセットの凸包を見つけるプログラムについて説明します。 凸包は、図形の内側の境界上に指定されたすべての点を含む最小の多角形の凸包です。 グラハムスキャンでは、最初にポイントが最下部のポイントに到達するようにソートされます。次に、ポイントは順番にトラバースされ、破棄されるか、順番に基づいて境界上にあると受け入れられます。 例 #include <iostream> #include <stack> #include <stdlib.h> using namespace std; struct Point{   &n

  10. C++での凸包単調チェーンアルゴリズム

    このチュートリアルでは、特定の点のセットの凸包を見つけるプログラムについて説明します。 凸包は、図形の内側の境界上に指定されたすべての点を含む最小の多角形の凸包です。 例 #include <bits/stdc++.h> #define llu long long int using namespace std; //structure for the given point struct Point {    llu x, y;    bool operator<(Point p){    return x &l

  11. C++で分割統治アルゴリズムを使用した凸包

    このチュートリアルでは、特定の点のセットの凸包を見つけるプログラムについて説明します。 凸包は、図形の内側の境界上に指定されたすべての点を含む最小の多角形の凸包です。 このプログラムでは、ブルートフォースを使用して、指定されたポイントをより小さなセグメントに分割し、最後に後続のポイントをマージして凸包を構築します。 例 #include<bits/stdc++.h> using namespace std; //storing the center point of polygon pair<int, int> mid; //calculating the quad

  12. 与えられた点を持つ長方形の座標はC++の内部にあります

    このチュートリアルでは、長方形の座標を見つけるプログラムについて説明します 与えられたポイントが内側にあります。 このために、いくつかの座標点が提供されます。私たちのタスクは、すべての点がその内側にあり、その辺が座標軸に平行になるように、最小の長方形を見つけることです。 例 #include <bits/stdc++.h> using namespace std; //calculating the coordinates of smallest rectangle void print_rectangle(int X[], int Y[], int n){   &n

  13. C ++で秒を日、時間、分、秒に変換する

    このチュートリアルでは、秒を日、時間、分、秒に変換するプログラムについて説明します。 このため、ランダムな秒数が提供されます。私たちの仕事は、それをそれぞれ適切な日数、時間、分、秒に変換することです。 例 #include <bits/stdc++.h> using namespace std; //converting into proper format void convert_decimal(int n) {    int day = n / (24 * 3600);    n = n % (24 * 3600);   &

  14. 凸包ジャービスのアルゴリズムまたはC++でのラッピング

    このチュートリアルでは、Jarvisのアルゴリズムを使用して特定の点のセットの凸包を見つけるプログラムについて説明します。 凸包は、図形の内側の境界上に指定されたすべての点を含む最小の多角形の凸包です。 ジャービスのアルゴリズムでは、左端のポイントを選択し、ラッピングポイントを時計回りに動かし続けます。 例 #include <bits/stdc++.h> using namespace std; //structure of the point struct Point{    int x, y; }; //calculating the position

  15. C++でローマ数字を1から3999の間にある10進数に変換する

    このチュートリアルでは、ローマ数字を1〜3999の10進数に変換するプログラムについて説明します。 このために、ランダムなローマ数字が提供されます。私たちの仕事は、与えられたローマ数字をそれに相当する10進数に変換することです。 例 #include<bits/stdc++.h> using namespace std; //calculating the decimal value int value(char r){    if (r == 'I')    return 1;    if (r ==

  16. C++で最後の操作を追加および削除して1つの文字列を別の文字列に変換する

    このチュートリアルでは、最後の追加操作と削除操作を使用して、ある文字列を別の文字列に変換するプログラムについて説明します。 このために、2つのストリングが提供されます。私たちのタスクは、最後の要素の追加と削除のk回の操作を実行して、最初の文字列を2番目の文字列に変換できるかどうかを計算することです。 例 #include <bits/stdc++.h> using namespace std; //checking if conversion between strings is possible bool if_convert(string str1, string str2,

  17. C ++での変更を最小限に抑えて、厳密に増加する整数配列に変換します

    このチュートリアルでは、最小限の変更で厳密に増加する整数配列に変換するプログラムについて説明します。 このために、アレイが提供されます。私たちのタスクは、配列の要素を、要素の変更を最小限に抑えて厳密に昇順になるように変更することです。 例 #include <bits/stdc++.h> using namespace std; //calculating number of changes required int remove_min(int arr[], int n){    int LIS[n], len = 0;    for (

  18. C++でのみ3と8の数字の数値に変換します

    このチュートリアルでは、数値を3桁と8桁のみに変換するプログラムについて説明します。 このために、乱数が提供されます。私たちの仕事は、数字から1を足したり引いたりするか、数字の数字を任意の数字に変換することによって、その数字を3と8だけに変換することです。 例 #include <bits/stdc++.h> using namespace std; //calculating minimum operations required int cal_min(long long int num){    //calculating remainder and o

  19. 1から3999までの10進数をC++のローマ数字に変換する

    このチュートリアルでは、1から3999までの10進数をローマ数字に変換するプログラムについて説明します。 このために、ランダムな整数が提供されます。私たちの仕事は、与えられた数字をそれに相当するローマ数字に変換することです。 例 #include <bits/stdc++.h> using namespace std; //converting decimal to roman numeral int printRoman(int number){    int num[] = {1,4,5,9,10,40,50,90,100,400,500,900,1000

  20. C++の代替母音と子音文字列

    指定された文字列の場合、母音と子音が交互の位置を占めるように、指定された文字列の文字を再配置します。文字列を正しく並べ替えられない場合は、「そのような文字列はありません」と表示してください。相互の母音の順序と、相互の子音の順序を維持する必要があります。 複数の必要な文字列を作成できる場合は、辞書式に小さく表示します。 例 Input : Tutorial Output : Tutorila Input : onse Output : nose 「鼻」と「1つ」の2つの可能な結果が存在します。 「鼻」は辞書式順序で小さいため、表示します。 指定された文字列の母音と子音の数がカウントされ

Total 5992 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:127/300  20-コンピューター/Page Goto:1 121 122 123 124 125 126 127 128 129 130 131 132 133