#include // #include using namespace std; // using bigint = boost::multiprecision::cpp_int; template using min_priority_queue = priority_queue,greater>; random_device seed_gen; mt19937 engine(seed_gen()); int64_t get_time_ns(){ struct::timespec t; clock_gettime(CLOCK_MONOTONIC, &t); return t.tv_sec * int64_t(1'000'000'000) + t.tv_nsec; } int main() { string s; cin >> s; int n = s.size(); int ans = n-1; for(int i = 0; i < n; i++) { if(i == 0 && s[i] == '1') continue; if(i != 0 && s[i] == '3') continue; ans = -1; break; } cout << ans << endl; return 0; }