#include<iostream>
#include<sstream>
#include<string>
using namespace std;
int main(){
ios_base::sync_with_stdio(0);
short i=0, j, k;
string d[3], *w = d;
string::iterator it;
stringstream ss, ss2, ss3, ss4, ss5;
while(cin>>*w>>*w>>*(w+1)>>*(w+1)>>*(w+2)>>*(w+2)>>*(w+2)){
while(i<3){
if(i<2){
it = (*w).begin();
if('A'>*it || *it>'Z'){
cout<<i<<endl; break;
}
if('A'<=*it<='Z')
for(it++; it != (*w).end(); it++)
if('a'>*it || *it>'z')
if(*it != ';'){
cout<<i<<endl;
i=3; break;
}
}
if(i==2){
string mm(*w, 5, 2), dz(*w, 8, 2);
stringstream ss, ss_, ss__;
ss<<*w; ss>>j;
if(1900>j || j>2000){ cout<<i<<endl; break; }
ss_<<mm; ss_>>j;
if(1>j || j>12){ cout<<i<<endl; break; }
ss__<<dz; ss__>>j;
if(1>j || j>31){ cout<<i<<endl; break; }
cout<<3<<endl;
}
*w++; i++;
}
w=d; i = 0;
}
return 0;
}
Wie ktoś może dlaczego spoj wywala błędną odp. dla zadania link
Myśle, że błąd pojawia się przy sprawdzaniu daty, chociaż ja uważam że wszystko jest okey, ale coś nie gra...