Submission #341499

#TimeUsernameProblemLanguageResultExecution timeMemory
341499A_DDatum (COCI20_datum)C++14
15 / 50
189 ms620 KiB
/* ID: antwand1 TASK: pprime LANG: C++ */ #include <bits/stdc++.h> #define ll long long #define int long long #define du long double #define F first #define S second #define FOR(a,b) for(int a=1;a<=b;a++) #define FORl(a,b) for(a=1;a<=b;a++) #define FOR0(a,b) for(int a=1;a<b;a++) #define FORl0(a,b) for(a=0;a<b;a++) #define ii pair<int,int> using namespace std; int a[]={31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; bool ok(int v) { if(v%4==0)a[1]=29; else a[1]=28; string s; while(v){ s+=(v%10)+'0'; v/=10; } while(s.size()<4){ s+='0'; } // cout<<s<<" "; int q=(s[2]-'0')*10+s[3]-'0'; // cout<<q<<" "; int g=(s[0]-'0')*10+s[1]-'0'; //cout<<g<<endl; if(q==0||q>12)return 0; return g&&a[q]>=g; } void solve() { string s; int cnt=0; cin>>s; int v=0; for(int i=0;i<s.size();i++){ if(s[i]=='.'){ cnt++; continue; } if(cnt==2){ v*=10; v+=s[i]-'0'; } } // cout<<v<<endl; v++; while(!ok(v)){ if(v>9999)assert(0); v++; } s=""; while(v){ s+=(v%10)+'0'; v/=10; } while(s.size()<4)s=s+'0'; string f=s; reverse(f.begin(),f.end()); s+=f; string ans; for(int i=0;i<s.size();i++){ ans+=s[i]; if(i==1)ans+='.'; if(i==3)ans+='.'; } ans+='.'; cout<<ans<<endl; } main() { int n; cin>>n; while(n--)solve(); }

Compilation message (stderr)

datum.cpp: In function 'void solve()':
datum.cpp:45:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   45 |     for(int i=0;i<s.size();i++){
      |                 ~^~~~~~~~~
datum.cpp:71:18: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   71 |     for(int i=0;i<s.size();i++){
      |                 ~^~~~~~~~~
datum.cpp: At global scope:
datum.cpp:79:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   79 | main()
      |      ^
#Verdict Execution timeMemoryGrader output
Fetching results...