Cześć, mam problem z zadaniem ze SPOJA (https://pl.spoj.com/problems/KC015/). Napisałem program który u mnie działa jak należy, ale SPOJ mi go odrzuca z wynikiem "Błędna Odpowiedź". Wie ktoś dlaczego? Mój kod:
#include <iostream>
#include <string>
using namespace std;
string liczba1,liczba2;
string znak;
int main(){
while(cin>>liczba1)
{
cin>>znak;
cin>>liczba2;
int p=0;
if(znak=="==")
{
if(liczba1.size()==liczba2.size())
{
for(int i=0;i<liczba1.size();i++)
{
if(liczba1[i]!=liczba2[i])
{cout<<"0"<<endl;
p=1;
}
if(i==liczba1.size()-1)
{if(p==0)
{
if(liczba1[i]==liczba2[i])cout<<"1"<<endl;
}
}
}
}else cout<<"0"<<endl;
}
if(znak=="<=")
{
if(liczba1.size()<=liczba2.size())
{
for(int i=0;i<liczba1.size();i++)
{
if(p==0){
if(liczba1[i]<liczba2[i])
{cout<<"1"<<endl;
p=1;
}
if(liczba1[i]>liczba2[i])
{cout<<"0"<<endl;
p=1;
}
}
if(p==0)
{
if(i==liczba1.size()-1)
{
if(liczba1[i]<=liczba2[i])cout<<"1"<<endl;
else cout<<"0"<<endl;
}
}
}
}else cout<<"0"<<endl;
}
if(znak==">=")
{
if(liczba1.size()>=liczba2.size())
{
for(int i=0;i<liczba1.size();i++)
{
if(p==0){
if(liczba1[i]>liczba2[i])
{cout<<"1"<<endl;
p=1;
}
if(liczba1[i]<liczba2[i])
{cout<<"0"<<endl;
p=1;
}
}
if(p==0)
{
if(i==liczba1.size()-1)
{
if(liczba1[i]>=liczba2[i])cout<<"1"<<endl;
else cout<<"0"<<endl;
}
}
}
}else cout<<"0"<<endl;
}
}
}