-
ハンバーガーとチキンバーガーを作ることで最大の利益を上げるためのC++プログラム
5つの数b、p、f、h、cがあるとします。レストランには2種類のハンバーガーがあります。ハンバーガーとチキンバーガーです。ハンバーガーには2つのパンとビーフパティが必要です。チキンバーガーには2つのパンとチキンカトレットが必要です。 b個のバンズ、p個のビーフパティ、f個のチキンカツレツがあります。 hルピーにはハンバーガー、cルピーにはチキンバーガーを販売しようとしています。得ることができる最大の利益を見つけなければなりません。 したがって、入力がb=7のような場合。 p =5; f =2; h =10; c =12の場合、1つのハンバーガーと2つのチキンバーガーの場合、出力は34になりま
-
合計と積をゼロとは異なるものにするために必要なステップ数をカウントするC++プログラム
n個の要素を持つ配列Aがあるとします。 1つの操作で、Aにプリセットされた任意の1つの要素で1を追加できます。配列内のすべての要素の合計または積のいずれかがゼロに等しい場合、この操作をもう一度実行できます。配列内のすべての要素の合計と積の両方をゼロとは異なるものにするために必要な最小ステップ数を数える必要がありますか? したがって、入力がA =[-1、0、0、1]の場合、積と合計の両方が0であるため、出力は2になります。2番目と3番目の要素に1を加算すると、配列は次のようになります。 [-1,1,1,1]の場合、合計は2に等しく、積は-1に等しくなります。 ステップ これを解決するには、次
-
最大kルピーで購入できるチョコレートの最大数を見つけるためのC++プログラム
n個の要素を持つ配列Aがあり、他の値l、r、およびkがそこにあるとします。アマルはチョコレートを買いたいと思っています。彼は高すぎるチョコレートや安すぎるチョコレートも買わないでしょう。店内にはn種類のチョコレートバーがあり、価格はAで表されています。チョコレートバーは、価格がrより大きい場合は高すぎ、l未満の場合は安すぎます。彼はせいぜいkルピーを使いたいと思っています。彼が購入できるチョコレートの最大量を見つける必要があります。 したがって、入力がA =[1、2、3、4、5、6]のような場合; l =3; r =5; k =10の場合、出力は2になります。これは、3ルピーと4ルピーのチョ
-
r行c列のすべてのセルを黒にするために必要な最小数の操作を見つけるC++プログラム
2つの数値r、cとサイズnxmのグリッドがあるとします。一部のセルは黒で、残りは白です。 1つの操作で、いくつかの黒いセルを選択し、これら2つのうちの1つを正確に実行できます- 行のすべてのセルを黒に着色するか、 列のすべてのセルを黒に着色します。 行rと列cのセルを黒にするために必要な操作の最小数を見つける必要があります。不可能な場合は、-1を返します。 したがって、入力が次のような場合 W B W W W B B B W B W W B B B r=0およびc=3 この場合、出力は1になります。こ
-
クレイジーライターでn文字を入力した後、最終的な文字数をカウントするC++プログラムがあります
n個の要素を持つ配列Aがあり、別の値cがそこにあるとします。私たちのシステムには、文字を入力できるクレイジーなワードプロセッサがありますが、連続してc秒間入力しないと、書かれた文字がすべて削除されます。 A [i]は、i番目の文字を入力した時刻を表します。 n文字すべてを入力した後、画面に残る最終的な文字数を見つける必要があります。 したがって、入力がA =[1、3、8、14、19、20]のような場合。 c =5の場合、出力は3になります。これは、2番目の8で画面に3つの単語が表示されるためです。次に、2番目の13ですべてが消えます。14秒と19秒で、さらに2文字が入力され、最後に2番目の2
-
すべての問題を解決するためにT以下の可能な限り長い時間を見つけるためのC++プログラム
N個の要素を持つ配列Aがあるとします。別の番号Tを持っています。アマルがプログラミングコンテストに参加しようとしていると考えてください。それはT分間続き、N個の問題が発生します。彼にはi番目の問題を解決する時間があります。彼はN個の問題から解決する問題を0個以上選択するので、それらを解決するのに合計でT分もかかりません。彼が選んだ問題を解決するのにかかる最長の時間を見つけなければなりません。 したがって、入力がT=17のような場合。 A =[2、3、5、7、11]の場合、出力は17になります。これは、最初の4つの問題を選択した場合、それらを解決するのに合計2 + 3 + 5 + 7=17分か
-
M以下の数を表すことができる塩基の数を見つけるためのC++プログラム
数値文字列Sと別の数Mがあるとします。dをSの最大の桁とします。d+1以上の整数nを選択して見ることにより、M以下の多くの異なる整数を見つける必要があります。基数としてのS-n数? したがって、入力がS=999のような場合。 M =1500の場合、出力は3になります。これは、Sを基数10の数値として、999を基数11の数値として、1197を基数12の数値として、1413を取得するためです。これらの3つの値は、可能な唯一の値です。取得し、1500以下。 ステップ これを解決するには、次の手順に従います- if size of S is same as 1, then: &nbs
-
数値とその桁の合計gcdが1より大きい最も近い整数を検索するC++プログラム
=nを見つける必要があります。 したがって、入力がN =31の場合、31のgcdと(3 + 1)は1であるため、出力は33になります。32のgcdと(3 + 2)は1であり、33のgcdと( 3 + 3)は3です。 ステップ これを解決するには、次の手順に従います- for initialize i := n, when i <= n + 2, update (increase i by 1), do: jml := 0 x := i while x > 0, do: &n
-
細胞着色ゲームの勝者を見つけるためのC++プログラム
2つの配列AとBがあり、どちらもそれぞれN個の要素を持っているとします。 AmalとBimalが、セル番号が1からNまでのボードでゲームをプレイしていると考えてください。N-1道路。道路は2つのセルを接続しています。つまり、i番目の道路はA[i]とB[i]を接続しています。隣接するセルに繰り返し移動することにより、他のすべてのセルからすべてのセルに到達できます。最初、セル1は黒色でマークされ、セルNは白色でマークされています。他のセルは着色されていません。アマルが最初にプレイし、代わりにプレイします。 Amalは、黒いセルに隣接し、黒く塗られている色のないセルを選択します。 Bimalは、白い
-
特定の条件でグラフを作成するC++プログラム
NとKの2つの数があるとします。N個の要素を持つ無向グラフがあるとします。 N個の頂点は次の条件を満たす- グラフはシンプルで接続されています 頂点には1からNまでの番号が付けられています グラフのエッジの数をMとします。エッジには1からMまでの番号が付けられます。エッジの長さは1です。エッジiは頂点U[i]を頂点V[i]に接続します。 頂点のペア(i、j)は正確にKペアあり、i
-
各桁が異なる特定の範囲の数値を検索するC++プログラム
2つの数lとrがあるとします。 lとr(両方を含む)の間にあり、xのすべての数字が異なる整数xを見つける必要があります。 したがって、入力がl=211のような場合。 r =230の場合、出力は213になります。 ステップ これを解決するには、次の手順に従います- for initialize k := l, when k <= r, update (increase k by 1), do: h := convert k to string Define one set s for initialize i
-
同じではない2行から2つのポイントを見つけるC++プログラム
2つの範囲(l1、r1)があると仮定します。(l2、r2)はx軸上の2本の線を表します。 l1
-
2つの条件でブロックをペイントできる方法の数をカウントするC++プログラム
N、M、Kの3つの数字があるとします。それらが一列に並んでいるN個のブロックがあると考えてください。それらをペイントするには、次の2つの方法を検討します。次の2つの方法でブロックが異なる色でペイントされている場合にのみ、2つのブロックのペイントが異なります- ブロックごとに、M色の1つを使用してペイントします。 (すべての色を使用する必要はありません) 同じ色で塗られた隣接するブロックの最大Kペアが存在する可能性があります。 答えが大きすぎる場合は、結果mod998244353を返します。 したがって、入力がN=3のような場合。 M =2; K =1の場合、出力は6になりま
-
2人の友人が同じ量のキャンディーを手に入れることができるようにバッグを配布できるかどうかを確認するC++プログラム
4つの要素を持つ配列Aがあるとします。キャンディーは4袋あり、i番目の袋にはA[i]個のキャンディーが入っています。 2人の友人の1人に各バッグを渡したいと思います。各友達が合計で同じ量のキャンディーを受け取るようにこれらのバッグを配布できるかどうかを確認する必要がありますか? したがって、入力がA =[1、7、11、5]の場合、出力はTrueになります。これは、1番目と3番目のバッグを最初の友達に、2番目と4番目のバッグを二番目の友達。このようにして、各友達は12個のキャンディーを受け取ります。 ステップ これを解決するには、次の手順に従います- a := A[0] b := A[1]
-
コンピューターを接続するためのケーブル長を最小化できる方法をいくつカウントするC++プログラム
両方ともN個の要素を持つ2つの配列AとBがあるとします。 N台のコンピューターとN台のソケットがあると考えてください。 i番目のコンピューターの座標はA[i]で、i番目のソケットの座標はb[i]です。これらの2N座標は、ペアごとに異なります。各コンピュータをケーブルでソケットに接続したいと思います。各ソケットは、最大1台のコンピューターに接続できます。ケーブルの長さを最小限に抑える方法をいくつ考えなければなりません。答えが大きすぎる場合は、結果mod 10 ^ 9+7を返します。 したがって、入力がA =[0、10]のような場合。 B =[20、30]の場合、2つの最適な接続(0から20、1
-
コインフォームxルピーの量をチェックするC++プログラム
KとXの2つの数字があるとします。AmalにK、500ルピーの紙幣があるとします。合計がXルピーになるかどうかを確認する必要があります。 したがって、入力がK=2のような場合。 X =900の場合、2 * 500 =1000であり、900以上であるため、出力はTrueになります。 ステップ これを解決するには、次の手順に従います- if (500 * k) >= x, then: return true Otherwise return false 例 理解を深めるために、次の実装を見てみましょう- #include <bi
-
最大および最小のクラッカーの可能な最小の差を見つけるためのC++プログラム
NとKの2つの番号があるとします。N個のクラッカーをK人のユーザーに配布します。ユーザーが受け取ったクラッカーの最大数とユーザーが受け取ったクラッカーの最小数の差を最小限に抑える必要があります。 したがって、入力がN=7のような場合。 K =3の場合、出力は1になります。これは、ユーザーがそれぞれ2つ、2つ、および3つのクラッカーを受け取った場合、ユーザーが受け取ったクラッカーの最大数とユーザーが受け取った最小数の差が1であるためです。 ステップ これを解決するには、次の手順に従います- if n mod k is same as 0, then: return
-
文字'a'文字列を追加した後に文字列を検索するC++プログラムが非パリンドロームになります
小文字の英字を含む文字列Sがあるとします。 Sには文字「a」を1つだけ挿入する必要があります。それを挿入した後、Sを回文ではなくすることができる場合はその文字列を返し、そうでない場合は「不可能」を返します。 したがって、入力がS =bpapbのような場合、出力は bpaapbになります。 ステップ これを解決するには、次の手順に従います- if concatenation of S and "a" is not palindrome, then: return S concatenation 'a' otherwise when
-
k番目の文字を小文字に変換するC++プログラム
N文字の文字列Sがあるとします。 Sには、「A」、「B」、または「C」の3種類の文字のみが含まれます。別の整数Kもあります。K番目の文字を小文字にした後、Sを出力する必要があります。 したがって、入力がK=2のような場合。 S =AABACCの場合、出力は AaBACCになります。 ステップ これを解決するには、次の手順に従います- S[K - 1] = S[K - 1] + 32 return S 例 理解を深めるために、次の実装を見てみましょう- #include <bits/stdc++.h> using namespace std; string solve(int
-
半径Rの円形の池の円周を見つけるC++プログラム
池の半径を表す数値Rがあるとします。この池の周囲を見つけなければなりません。 したがって、入力がR =73のような場合、出力は458.67252742410977361942になります。 ステップ これを解決するには、次の手順に従います- res := r * 2 * cos-inverse (-1) return res 理解を深めるために、次の実装を見てみましょう 例 理解を深めるために、次の実装を見てみましょう- #include<bits/stdc++.h> using namespace std; double solve(int r){ &nbs