查詢影像是否為黑白或彩色的 C++ 程式碼


假設我們得到一個包含 n 個畫素的影像。畫素可以具有以下顏色:

  • 'C'(青色)

  • 'M'(品紅色)

  • 'Y'(黃色)

  • 'W'(白色)

  • 'G'(灰色)

  • 'B'(黑色)

第 i 個畫素的顏色在字串 'pixels' 中給出。給定字串,我們必須確定給定的照片是彩色的還是黑白的。如果它是彩色照片,則它將包含至少一個顏色為 'C'、'M' 和 'Y' 的畫素,我們將列印 'Color';否則,它將僅包含顏色為 '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

更新於: 2022 年 3 月 11 日

1K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告