I'll go on limb and try to guess what you want based from your code - this will essentially keep just one variable and check for the minimum on each loop (and update accordingly, if needed):
base, area = input().strip().split()
base, area = int(base), int(area)
min_pos = 1
min_trig = abs(base / 2 - area) # calculate the first immediately
for i in range(2, area + 1): # loop from the second...
form = abs((base * i) / 2 - area)
if form < min_trig:
min_pos = i
min_trig = form
print(min_pos)
UPDATE
As stated in the comments, the above will find indexes only for a single minimum so it would be correct only if there is one minimum. If you need a list of minimums you can do as following:
base, area = input().strip().split()
base, area = int(base), int(area)
min_pos = [1] # initialize the first index as a minimum immediately
min_trig = abs(base / 2 - area) # calculate the first trig as a minimum immediately
for i in range(2, area + 1): # loop from the second...
trig = abs((base * i) / 2 - area)
if trig == min_trig:
min_pos.append(i)
elif trig < min_trig:
min_pos = [i]
min_trig = trig
print(min_pos) # prints you a list of all minimum positions
That way you don't have to store everything in a separate list nor you need to do double loops. Pure O(N) solution.