Buggy python submission (verdict: Time Limit Exceeded):
s=input()

lens = len(s)
logs = lens.bit_length()
doubling = [[0]*lens for _ in range(logs)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logs):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

for i in range(lens):
  print(doubling[logs-1].count(i))


Fixed submission:
s=input()

logk = (10**100).bit_length()
lens = len(s)
logs = lens.bit_length()
doubling = [[0]*lens for _ in range(logk)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logk):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

from collections import Counter
result = Counter(doubling[logk-1])
for i in range(lens):
  print(result[i])

Buggy python submission (verdict: Time Limit Exceeded):
s=input()

lens = len(s)
logs = lens.bit_length()
doubling = [[0]*lens for _ in range(logs)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logs):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

for i in range(lens):
  print(doubling[logs-1].count(i))


Fixed submission:
s=input()

logk = (10**100).bit_length()
lens = len(s)
logs = lens.bit_length()
doubling = [[0]*lens for _ in range(logk)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logk):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

from collections import Counter
result = Counter(doubling[logk-1])
for i in range(lens):
  print(result[i])

Buggy python submission (verdict: Time Limit Exceeded):
s=input()

k = 10**100
logk = k.bit_length()
lens = len(s)
doubling = [[0]*lens for _ in range(logk)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

logs = lens.bit_length()
for i in range(1,logs):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

for i in range(lens):
  print(doubling[logs-1].count(i))


Fixed submission:
s=input()

logk = (10**100).bit_length()
lens = len(s)
logs = lens.bit_length()
doubling = [[0]*lens for _ in range(logk)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logk):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

from collections import Counter
result = Counter(doubling[logk-1])
for i in range(lens):
  print(result[i])

Buggy python submission (verdict: Time Limit Exceeded):
s=input()

k = 10**100
logk = k.bit_length()
lens = len(s)
doubling = [[0]*lens for _ in range(logk)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logk):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

for i in range(lens):
  print(doubling[logk-1].count(i))


Fixed submission:
s=input()

logk = (10**100).bit_length()
lens = len(s)
logs = lens.bit_length()
doubling = [[0]*lens for _ in range(logk)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logk):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

from collections import Counter
result = Counter(doubling[logk-1])
for i in range(lens):
  print(result[i])

Buggy python submission (verdict: Time Limit Exceeded):
s=input()

k = 10**100
logk = k.bit_length()
lens = len(s)
doubling = [[0]*lens for _ in range(logk)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logk):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

now = 0
for pos in range(logk):
  if k & 1:
    now = doubling[pos][now]
  k = k >> 1

result = [0] * lens
for i in range(lens):
  result[i] = doubling[logk-1].count(i)
  print(result[i])

Fixed submission:
s=input()

logk = (10**100).bit_length()
lens = len(s)
logs = lens.bit_length()
doubling = [[0]*lens for _ in range(logk)]

for i in range(lens):
  if s[i] == 'R':
    doubling[0][i] = i + 1
  else:
    doubling[0][i] = i - 1

for i in range(1,logk):
  for j in range(lens):
    doubling[i][j] = doubling[i-1][doubling[i-1][j]]

from collections import Counter
result = Counter(doubling[logk-1])
for i in range(lens):
  print(result[i])