私はGDBでこれを実行すると、それは条件が 入力例えば文字と文字を比較するにはどうすればいいですか?
を満たしている場合でも、if文になりません。真でなければならない場合は000 最初が、ここで
偽では、完全なコード ですプログラムは...文字列で発生した、すべて1が連続的に
感謝しているかどうかを確認することになっている
#include<iostream>
#include<limits>
#include<string>
#include<sstream>
using namespace std;
int main()
{
int trials = 0;
cin>>trials;
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
while(trials--)
{
string line;
getline(cin,line);
int i = 0;
int n = line.length();
int d = 0;
int u = 0;
int flag = 0;
for(i = 0; i < n; i++)
{
if(line[i] == '0')
{
flag = 1;
}
if(line[i] == '0' && line[i + 1] == '1' && d == 0)
{
u++;
}
else if(line[i] == '1' && line[i + 1] == '0' && u == 1)
{
d++;
}
}
if(flag == 0)
cout<<"YES"<<endl;
else if(u ==1 && d == 1)
{
cout<<"YES"<<endl;
}
else
cout<<"NO"<<endl;
}
}
'getline'の直後に' line'の内容は何ですか? GDBを使って調べましたか? –
行の内容は同じ "000"です –
これが何をすべきかを教えてください。 Btw、ちょうどそれを実行しました.IEが真であると評価された場合は、最初にhttp://cpp.sh/8vwnで実行されます。したがって、現時点ではデバッガを使用したことがありますか? – Aziuth