#include using namespace std; //#include //using namespace atcoder; #define ll long long #define GET_REP(_1, _2, _3, _4,NAME, ...) NAME #define rep1(i, n) for (int i = 0; i < (n); ++i) #define rep2(i, m, n) for (int i = (n); i < (m); ++i) #define rep3(i, m, n, o) for (int i = (n); i < (m); i+=o) #define rep(...) GET_REP(__VA_ARGS__, rep3, rep2, rep1)(__VA_ARGS__) #define rrep1(i,n) for (int i = (n); i > 0; i--) #define nall(a) a.begin(),a.end() #define rall(a) a.rbegin(),a.rend() #define fi first #define se second #define getvec(a,n,s) \ vector a(n);\ for (auto& i:a) cin >>i; #define int long long #define vi vector #define vpii vector> #define vs vector #define vvi vector> #define vvs vector> template auto vec(size_t n, T val) { return std::vector(n, val); } template auto vec(size_t n, Sizes... sizes) { return std::vector(n, vec(sizes...)); } random_device rd; mt19937 gen(rd()); //uniform_int_distribution dist(); signed main() { int n; cin >> n; string s; cin >> s; vi a(n, 1000000); int now = 3141592; rep(i, n) { if(s[i] == '#') now = 0; a[i] = min(a[i], now); now++; } now = 199990; for(int i = n - 1; i >= 0; i--) { if(s[i] == '#') now = 0; a[i] = min(a[i], now); now++; } //rep(i, n) cout << a[i] << " "; //cout << endl; int ind = 0, nowm = 0; rep(i, n) { if(nowm < a[i]) { nowm = a[i]; ind = i; } } cout << ind + 1 << endl; }