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

C++で文字列パナグラムを作成するためのコスト


このチュートリアルでは、ストリングパナグラムを作成するコストを見つけるためのプログラムについて説明します。

このために、整数の配列が提供されます。私たちのタスクは、与えられた文字列をパナグラムに変換し、文字を追加するコストで提供される配列を使用して、それを行うためのコストを計算することです。

#include <bits/stdc++.h>
using namespace std;
//calculating the total cost of
//making panagram
int calc_cost(int arr[], string str) {
   int cost = 0;
   bool occurred[26] = { false };
   for (int i = 0; i < str.size(); i++)
      occurred[str[i] - 'a'] = true;
   for (int i = 0; i < 26; i++) {
      if (!occurred[i])
         cost += arr[i];
   }
   return cost;
}
int main(){
   int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 };
   string str = "abcdefghijklmopqrstuvwz";
   cout << calc_cost(arr, str);
   return 0;
}

出力

63

  1. C ++で文字列をintに解析する方法は?

    文字列ストリームを使用して、C++のintをintに解析できます。この方法では、エラーチェックを行う必要があります。 例 #include<iostream> #include<sstream> using namespace std; int str_to_int(const string &str) {    stringstream ss(str);    int num;    ss >> num;    return num; } int main() {

  2. C ++でintをstringに変換する方法は?

    Cのitoa関数を使用して、intを文字列に変換できます。 例 #include<iostream> int main() {    int a = 10;    char *intStr = itoa(a);    string str = string(intStr);    cout << str; } 出力 これにより、出力が得られます- 10 これにより、整数が文字列に変換されます。 C ++ 11では、同じ目的で使用できる新しいメソッドto_stringが追加されました。次の