在 C++ 中查詢最終顏色組合


我們有一個含有三種顏色 (G、B、Y) 的字串。我們必須根據以下關係查詢結果顏色 −

  • B * G = Y
  • Y * B = G
  • G * Y = B

假設字串“GBYGB”為 B。如果字串為“BYB”,那麼它將為 Y。

方法很簡單;我們將取字串。使用給定的條件,將每個字母與相鄰字元進行比較,找到顏色。

Example

動態演示

#include <iostream>
using namespace std;
char combination(string s) {
   char color = s[0];
   for (int i = 1; i < s.length(); i++) {
      if (color != s[i]) {
         if ((color == 'B' || color == 'G') && (s[i] == 'G' || s[i] == 'B'))
            color = 'Y';
            else if ((color == 'B' || color == 'Y') && (s[i] == 'Y' || s[i] == 'B'))
               color = 'G';
         else
            color = 'B';
      }
   }
   return color;
}
int main() {
   string color_str = "GBYBGY";
   cout << "Color Combination Result: " << combination(color_str);
}

輸出

Color Combination Result: B

更新於: 21-Oct-2019

254 次瀏覽

開啟您的職業生涯

完成課程即可獲得認證

開始學習
廣告