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

C++で合計nを作成するために必要な最小文字数。


問題の説明

整数nが与えられ、a =1、b =2、c =3、…..、z =26とします。タスクは、合計nを作成するために必要な最小文字数を見つけることです

If n = 23 then output is 1
If n = 72 then output is 3(26 + 26 + 20)

アルゴリズム

1. If n is divisible by 26 then answer is (n/26)
2. If n is not divisible by 26 then answer is (n/26) + 1

#include <iostream>
using namespace std;
int minRequiredSets(int n){
   if (n % 26 == 0) {
      return (n / 26);
   } else {
      return (n / 26) + 1;
   }
}
int main(){
   int n = 72;
   cout << "Minimum required sets: " << minRequiredSets(n) << endl;
   return 0;
}

出力

上記のプログラムをコンパイルして実行する場合。次の出力を生成します-

Minimum required sets: 3

  1. C++を使用して中央値をxに等しくするために追加する要素の最小数。

    問題の説明 サイズnと要素xの配列「arr」が与えられた場合、タスクは、中央値がxに等しくなるように配列に追加される要素の最小数を見つけることです。 長さnの配列の中央値は、要素を降順ではない順序で並べ替えた後、位置番号(n-1)/2を占める要素です。たとえば、以下の配列の中央値は20-です。 arr1 [] ={10、20、30、40} arr [] ={1、2、3}およびx =4の場合、中央値を4に等しくするために、配列に4つの数値、つまり{4、5、5、5}を追加する必要があります アルゴリズム アルゴリズムは非常に単純です。配列の中央値がxと等しくなるまで、配列に1つの数値x

  2. C++で文字列回文を作成するための削除の最小数。

    問題の説明 サイズ「n」の文字列が与えられます。タスクは、文字列回文を作成するために最小数の文字を削除することです。 指定された文字列が「abcda」の場合、最初と最後を除く任意の2文字を削除して、回文にすることができます。 文字「b」と「c」を削除すると、「ada」文字列は回文になります 文字「c」と「d」を削除すると、「aba」文字列は回文になります 文字「b」と「d」を削除すると、「aca」文字列は回文になります アルゴリズム 1. Find longest palindromic subsequence of given string. Let’s