C++ではないのですが、プログラムの問題なのです。
問題:
ある検索プログラムでは、以下の検索式の定義に従って検索結果が表示されます。
記号: *
例: A*B
働き: AもBも含まれる(AND検索)

+
例: A+B
働き: AまたはBが含まれる(OR検索)

#
例: A#B
働き: Aは含むがBは含まない(NOT検索)

()
例) (A+B)*C
働き) AまたはBが含まれて、かつCを含む。()内を優先

[入力例]
   犬、猫以外の哺乳類のペットについて調べたい。
     ⇒ ペット*哺乳類#(犬+猫)
[質問]
   「ラーメン」を含むか、または「ファミレス」「ファーストフード」
    を含まない、「東京」にある「ランチ」を調べたい。

    ⇒ ???

    注:「」内は入力例でいう犬や猫などの検索キーワードとして使用します。

お願いします。考えてみてください!