/* -*- coding: utf-8 -*- * * 3745.cc: No.3745 Line Seats - yukicoder */ #include #include using namespace std; /* constant */ const int MAX_N = 100000; const int INF = 1 << 30; /* typedef */ /* global variables */ char s[MAX_N + 4]; int ls[MAX_N + 1], rs[MAX_N + 1]; /* subroutines */ /* main */ int main() { int n; scanf("%d%s", &n, s); ls[0] = INF; for (int i = 0; i < n; i++) ls[i + 1] = (s[i] == '#') ? 0 : ls[i] + 1; rs[n] = INF; for (int i = n - 1; i >= 0; i--) rs[i] = (s[i] == '#') ? 0 : rs[i + 1] + 1; int maxd = 0, maxi = -1; for (int i = 0; i < n; i++) if (s[i] == '.') { int d = min(ls[i + 1], rs[i]); if (maxd < d) maxd = d, maxi = i; } printf("%d\n", maxi + 1); return 0; }