n=int(eval(input()))

s=eval(input())

li=0

ri=len(s)

cnt=0

while li<ri:

  if s[li] == "W":

    while li<ri:

      ri-=1

      if s[ri] == "R":

        cnt+=1

        break

      

  li+=1

print(cnt)

  
n=int(eval(input()))

s=eval(input())

rcnt=s.count("R")

# "R"をすべて左に寄せるならば、(0 ～ "R"個数-1)分の配列範囲はすべて"R"となる。

r_expected_arr=s[:rcnt]

# "R"期待範囲に"W"が存在する場合、"R"との交換が要求される。

# その場合、文字列中に"R"個数分の"R"が存在するため、交換対象の"R"は必ず存在する。

w_exchange_needed=r_expected_arr.count("W")

print(w_exchange_needed)

n = int(eval(input()))
s = eval(input())
li = 0
ri = len(s)
cnt = 0
while li < ri:
    if s[li] == "W":
        while li < ri:
            ri -= 1
            if s[ri] == "R":
                cnt += 1
                break
    li += 1
print(cnt)

n = int(eval(input()))
s = eval(input())
rcnt = s.count("R")
# "R"をすべて左に寄せるならば、(0 ～ "R"個数-1)分の配列範囲はすべて"R"となる。
r_expected_arr = s[:rcnt]
# "R"期待範囲に"W"が存在する場合、"R"との交換が要求される。
# その場合、文字列中に"R"個数分の"R"が存在するため、交換対象の"R"は必ず存在する。
w_exchange_needed = r_expected_arr.count("W")
print(w_exchange_needed)

-li = 0 -ri = len(s) -cnt = 0 -while li < ri: -    if s[li] == "W": -        while li < ri: -            ri -= 1 -            if s[ri] == "R": -                cnt += 1 -                break -    li += 1 -print(cnt) +rcnt = s.count("R") +# "R"をすべて左に寄せるならば、(0 ～ "R"個数-1)分の配列範囲はすべて"R"となる。 +r_expected_arr = s[:rcnt] +# "R"期待範囲に"W"が存在する場合、"R"との交換が要求される。 +# その場合、文字列中に"R"個数分の"R"が存在するため、交換対象の"R"は必ず存在する。 +w_exchange_needed = r_expected_arr.count("W") +print(w_exchange_needed)