output_description: Print the minimum number of stones that needs to be recolored.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N
      S
attempt: stp = int(input())
  s = [j for j in input()]
  cut = ["#", "."]
  b, ans = [], 0
  ass = 0 if s.count(".") < s.count("#") else 1
  for x, y in enumerate(s):
      if y == "#":
          b.append(x)
  for i in reversed(b):
      if i + 1 < stp:
          if s[i + 1] == ".":
              ans += 1
              s[i] = cut[ass]
  print(ans)
  
problem_description: Statement
  
  There are N stones arranged in a row. Every stone is painted white or black. A
  string S represents the color of the stones. The i-th stone from the left is
  white if the i-th character of S is `.`, and the stone is black if the
  character is `#`.
  
  Takahashi wants to change the colors of some stones to black or white so that
  there will be no white stone immediately to the right of a black stone. Find
  the minimum number of stones that needs to be recolored.
samples: [{"input": "3\n    #.#", "output": "1\n    \n\nIt is enough to change the color of the first stone to white.\n\n* * *"}, {"input": "5\n    #.##.", "output": "2\n    \n\n* * *"}, {"input": "9\n    .........", "output": "0"}]