# FFD.py
# Fig. 49.1 
# input: 20

import math

n = int(input("n=? "))
wghts = []  # create weights and goal
for i in range(n): 
  wghts.append(math.sqrt(i+1))
goal = sum(wghts)/2
print("goal:", goal)

print("Abby's weights: ", end ='')
abby = 0; carl = 0
for i in range(n-1,-1,-1): # large to small
  if (abby + wghts[i]) < goal:
    # assign w_i to Abby
    abby += wghts[i]
    print(1, end='')
  else:   # assign to Carl
    carl += wghts[i]
    print(0, end ='')
print()

print("Total Weights")
print(f"abby: {abby:.9f}")
print(f"carl: {carl:.9f}")
