#include "bits/stdc++.h" using namespace std; #define REP(i, n) for(int i=0; i<(n); i++) #define RREP(i, n) for(int i=(n-1); i>=0; i--) #define MAX 2222222 string s; int N; signed main() { cin >> N; vector ans; string good = "good"; string problem = "problem"; REP(n,N) { cin >> s; int ming[MAX]; int minp[MAX]; REP(i,s.size()) ming[i]=minp[i]=100; int problemcnt[MAX]; problemcnt[0] = 0; REP(i,s.size()-3) { int cnt = 0; REP(j,4) { cnt += (s[i+j] != good[j]); } problemcnt[i] = (i==0) ? 0 : problemcnt[i-1]; if (s.substr(i, 7) == problem) { problemcnt[i]++; } if (i == 0) ming[i] = cnt; else ming[i] = min(ming[i-1], cnt); } RREP(i,s.size()-6) { int cnt = 0; REP(j,7) { cnt += (s[i+j] != problem[j]); } if (i == s.size()-7) minp[i] = cnt; else minp[i] = min(minp[i+1], cnt); } int minc = 9999; REP(i,s.size()-7) { if (i+4 >= s.size()) break; int pc = (i==0) ? 0 : problemcnt[i]; minc = min(minc, ming[i] + minp[i+4] + pc); } ans.push_back(minc); } for (auto&& a : ans) { cout << a << endl; } return 0; }