#include <bits/stdc++.h>
using namespace std;
int main() {
  string str, s;
  cin >> str;
  s = str;
  int k = 0;
  bool f1 = 0;
  bool f2 = 0;
  int res = 100010;
  for (int i = s.size() - 1; i >= 0; i--) {
    if (s[i] == '5') {
      f1 = 1;
      for (int j = i; j < s.size() - 1; j++) swap(s[j], s[j + 1]);
      break;
    } else
      k++;
  }
  if (f1) {
    for (int i = s.size() - 2; i >= 0; i--) {
      if (s[i] == '2') {
        for (int j = i; j < s.size() - 2; j++) swap(s[j], s[j + 1]);
        f2 = 1;
        break;
      } else
        k++;
    }
  }
  if (f1 && f2) {
    int i = 0;
    while (s[i] == '0') i++;
    if (str.size() > 2 && i >= str.size() - 2) {
    } else
      res = min(res, k + i);
  }
  k = 0;
  f1 = 0;
  f2 = 0;
  s = str;
  for (int i = s.size() - 1; i >= 0; i--) {
    if (s[i] == '0') {
      f1 = 1;
      for (int j = i; j < s.size() - 1; j++) swap(s[j], s[j + 1]);
      break;
    } else
      k++;
  }
  if (f1) {
    for (int i = s.size() - 2; i >= 0; i--) {
      if (s[i] == '5') {
        for (int j = i; j < s.size() - 2; j++) swap(s[j], s[j + 1]);
        f2 = 1;
        break;
      } else
        k++;
    }
  }
  if (f1 && f2) {
    int i = 0;
    while (s[i] == '0') i++;
    if (str.size() > 2 && i >= str.size() - 2) {
    } else
      res = min(res, k + i);
  }
  k = 0;
  f1 = 0;
  f2 = 0;
  s = str;
  for (int i = s.size() - 1; i >= 0; i--) {
    if (s[i] == '5') {
      f1 = 1;
      for (int j = i; j < s.size() - 1; j++) swap(s[j], s[j + 1]);
      break;
    } else
      k++;
  }
  if (f1) {
    for (int i = s.size() - 2; i >= 0; i--) {
      if (s[i] == '7') {
        for (int j = i; j < s.size() - 2; j++) swap(s[j], s[j + 1]);
        f2 = 1;
        break;
      } else
        k++;
    }
  }
  if (f1 && f2) {
    int i = 0;
    while (s[i] == '0') i++;
    if (str.size() > 2 && i >= str.size() - 2) {
    } else
      res = min(res, k + i);
  }
  k = 0;
  f1 = 0;
  f2 = 0;
  s = str;
  for (int i = s.size() - 1; i >= 0; i--) {
    if (s[i] == '0') {
      f1 = 1;
      for (int j = i; j < s.size() - 1; j++) swap(s[j], s[j + 1]);
      break;
    } else
      k++;
  }
  if (f1) {
    for (int i = s.size() - 2; i >= 0; i--) {
      if (s[i] == '0') {
        for (int j = i; j < s.size() - 2; j++) swap(s[j], s[j + 1]);
        f2 = 1;
        break;
      } else
        k++;
    }
  }
  if (f1 && f2) {
    if (str.size() == 2) {
    } else
      res = min(res, k);
  }
  if (res == 100010)
    cout << -1 << endl;
  else
    cout << res << endl;
  return 0;
}
