Submission #1120220

#TimeUsernameProblemLanguageResultExecution timeMemory
1120220vjudge1Palindrome-Free Numbers (BOI13_numbers)C++17
12.50 / 100
1085 ms512 KiB
#include <bits/stdc++.h> using namespace std; #define int long long const int sz=2e5+5; const int INF=1e18; const int MOD=1e9+7; bool check(string s) { //cout<<s<<endl; if(s.size()<4) { if(s.size()==1) return true; if(s.size()==2) return (s[0]!=s[1]); return (s[0]!=s[2] && s[1]!=s[2] && s[0]!=s[1]); } for(int i=0;i<s.size()-4;i++) if((s[i]==s[i+3] && s[i+1]==s[i+2]) || (s[i]==s[i+2] && s[i]!=s[i+3]) || (s[i]!=s[i+3] && s[i+1]==s[i+3]) || (s[i]==s[i+1] || s[i+1]==s[i+2] || s[i+2]==s[i+3])) return false; return true; } void solve() { int a,b,res=0; cin>>a>>b; for(int i=a;i<=b;i++) { string s=to_string(i); if(check(s)) res++; } cout<<res; } signed main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t=1; //cin>>t; while(t--) { solve(); } }

Compilation message (stderr)

numbers.cpp: In function 'bool check(std::string)':
numbers.cpp:28: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]
   28 |     for(int i=0;i<s.size()-4;i++)
      |                 ~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...