#include <iostream>
#include <string>
using namespace std;
int main(){
string s, t;
cin >> s;
for(int i=0; i<s.length(); i++){
if(s[i]!='R' || s[i]!='G' || s[i]!='B'){
cout << "invalid input1";
break;
}
}
}
即使我输入了一个只包含R、G和B的字符串,它也会显示无效输入!我的逻辑错在哪里?
如果字符串只包含R、G和B,我希望它不会显示无效输入。Like RGBRGRBRBRGRGRGRGRGRGRGRGRGR..但即使它只包含R、G和B,也会显示无效输入。这是一个更大的Codeforces问题的一部分,我真的很紧张,我被困在这样一个基本的部分...
2条答案
按热度按时间r1wp621o1#
您正在使用OR运算符。
如果字符串为
R
,则s[i]!='G'
的计算结果为true
,并且由于使用了OR运算符,因此得到invalid output
vx6bjr1n2#
尝试替换
与