Solve projectile trajectory and range.
Projectile motion separates cleanly into two independent problems. Horizontally there is no acceleration, so the range is just the horizontal velocity component times the flight time. Vertically the motion is free fall from the launch height with an initial upward velocity, and solving that quadratic gives the flight time. Launch height matters more than intuition suggests: throwing from shoulder height rather than ground level extends the range noticeably.
Projectile motion with launch height
vx = v cos(angle); vy = v sin(angle); flight time = (vy + sqrt(vy^2 + 2 g h)) / g; range = vx x flight time; max height = h + vy^2 / (2 g)
Only when launch and landing are at the same height. Launching from above the landing surface shifts the optimum below 45 degrees — a shot putter releasing from about two metres does best near 42 degrees, and the gap widens as launch height grows relative to range.
No, it is the vacuum solution. Drag reduces real range substantially for light or fast projectiles — a golf ball's actual flight departs from this by a wide margin, though spin-generated lift partly compensates.
Because the projectile starts above the landing surface, so the descent covers more height than the ascent. The two are equal only when launch height is zero.