#include<bits/stdc++.h>
using namespace std;
void print(int a,int b,int c)
{
if(a<10)cout<<0;
cout<<a;
cout<<".";
if(b<10)cout<<0;
cout<<b;
cout<<".";
if(c<1000)cout<<0;
cout<<c;
cout<<".\n";
}
bool adequate(int d,int m,int y)
{
if(d>31||m>12||d==0||m==0)return false;
if(d==31&&(m==2||m==4||m==6||m==9||m==11))return false;
if(d==30&&m==2)return false;
if(d==29&&m==2)
{
if(y%4!=0)return false;
}return true;
}
void solve()
{
string s;
cin>>s;
int d=0,a,b,l=0,i;
int m=0;
int y=0;
for(i=0; i<s.size(); i++)
{
if(s[i]=='.')l++;
else
{
if(l==0)
{
d*=10;
d+=s[i]-'0';
}
else if(l==1)
{
m*=10;
m+=s[i]-'0';
}
else
{
y*=10;
y+=s[i]-'0';
}
}
}
for(i=0; i<=9999; i++)
{
l=i;
a=l%10;
a*=10;l/=10;
a+=l%10;
l/=10;
b=l%10;
b*=10;l/=10;
b+=l;
if(i<y)continue;
else
{
if(b<m)continue;
else
{
if(a<=d)continue;
}
}
if(adequate(a,b,i))
{
print(a,b,i);
break;
}
}
}
int main()
{
int n;
cin>>n;
while(n--)solve();
return 0;
}
Compilation message
datum.cpp: In function 'void solve()':
datum.cpp:33:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for(i=0; i<s.size(); i++)
~^~~~~~~~~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
5 ms |
256 KB |
Output is correct |
2 |
Incorrect |
390 ms |
504 KB |
Output isn't correct |
3 |
Correct |
6 ms |
256 KB |
Output is correct |
4 |
Incorrect |
5 ms |
128 KB |
Output isn't correct |
5 |
Incorrect |
5 ms |
256 KB |
Output isn't correct |
6 |
Incorrect |
5 ms |
384 KB |
Output isn't correct |
7 |
Incorrect |
5 ms |
384 KB |
Output isn't correct |
8 |
Incorrect |
5 ms |
384 KB |
Output isn't correct |
9 |
Incorrect |
5 ms |
256 KB |
Output isn't correct |
10 |
Incorrect |
401 ms |
520 KB |
Output isn't correct |