/* -*- coding: utf-8 -*- * * 3015.cc: No.3015 蜿ウ縺ォ蟇・○繧・ - yukicoder */ #include #include #include using namespace std; /* constant */ const int MAX_N = 200000; /* typedef */ using ll = long long; /* global variables */ char s[MAX_N + 4]; /* subroutines */ /* main */ int main() { scanf("%s", s); int n = strlen(s); ll sum = 0; for (int i = 0, x = 0; i < n;) { int l1 = 0, l0 = 0; while (i < n && s[i] == '1') i++, l1++; while (i < n && s[i] == '0') i++, l0++; if (l0 > 0 && l1 > 0) { x += l1 / 2; sum += (ll)x * l0; } } printf("%lld\n", sum); return 0; }