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

画像が白黒かカラーかを確認するためのC++コード


n個のピクセルを含む画像が与えられたとします。ピクセルは次の色にすることができます-

  • 「C」(シアン)

  • 「M」(マゼンタ)

  • 「Y」(黄色)

  • 「W」(白)

  • 「G」(灰色)

  • 「B」(黒)

i番目のピクセルの色は文字列「pixels」で指定されます。文字列を考えると、与えられた写真がカラフルなのか白黒なのかを調べる必要があります。カラー写真の場合は、少なくとも1ピクセルの色「C」、「M」、「Y」が含まれ、「色」が印刷されます。それ以外の場合は、「W」、「G」、「B」の色のピクセルのみが含まれ、「BW」が印刷されます。

したがって、入力がn =10、pixels ="GBWYM"の場合、出力はColorになります。

ステップ

これを解決するには、次の手順に従います-

for initialize i := 0, when i < n, update (increase i by 1), do:
   if pixels[i] is not equal to 'B' and pixels[i] is not equal to 'W' and pixels[i] is not equal to 'G', then:
   print("Color")
   return
print("BW")

理解を深めるために、次の実装を見てみましょう-

#include <bits/stdc++.h>
using namespace std;
#define N 100
void solve(int n, string pixels ) {
   for (int i = 0 ; i < n; i++) {
      if(pixels[i]!='B' && pixels[i]!='W' && pixels[i]!='G') {
         cout<<"Color";
         return;
      }
   }
   cout<<"BW";
}
int main() {
   int n = 10;
   string pixels = "GBWYM";
   solve(n, pixels);
   return 0;
}

入力

10, "GBWYM"

出力

Color

  1. nラウンドゲームに勝った人を見つけるためのC++コード

    nラウンドの2人ゲームがあるとします。ラウンドのスコアは、各要素が{P1スコア、P2スコア}の形式である配列「スコア」で示されます。スコアの高いプレイヤーがラウンドに勝ち、さらにラウンドに勝った場合はプレイヤーがゲームに勝ちます。それ以外の場合は、引き分けとして宣言されます。したがって、スコアを考慮して、誰がゲームに勝ったかを確認する必要があります。 したがって、入力がn =4、スコア={{4、3}、{3、2}、{5、6}、{2、5}}の場合、出力はDrawになります。 ステップ これを解決するには、次の手順に従います- res := 0 while n is non-zero, do:

  2. バッテリーコンボの数を調べるためのC++コード

    最大5回使用できるバッテリーがn個あるとします。 3つのバッテリーを必要とするデバイスがいくつかあり、デバイスを使用するたびにバッテリーの使用数が1つ増えます。デバイスをk回使用する必要がある場合、デバイスに電力を供給するためにいくつのバッテリーの組み合わせを作成できるかを調べる必要があります。 2台の機器で同時に使用することはできません。また、5回使用した電池を含めることはできません。バッテリーの使用回数はアレイバットに記載されています。 したがって、入力がn =6、k =2、batt ={2、4、4、2、1、3}のような場合、出力は1になります。 k回デバイスに電力を供給するために作成