- محدودیت زمان: ۱ ثانیه
- محدودیت حافظه: ۲۵۶ مگابایت
برنامهای بنویسید که با گرفتن مقادیر
$V_x, V_y, Y_0, h$
بردهای ممکن برای یک پرتابه با مشخصات زیر را به ترتیب از کوچک به بزرگ بدهد و درصورتی که امکان پذیر نباشد، عبارت impossible
را چاپ کند.
در مسئله پرتابه، یک شی از نقطهای به ارتفاع $Y_0$ با سرعت اولیهی $(V_x, V_y)$ پرتاب میشود. از شما میخواهیم مسافت طی شده در راستای $x$ (که «برد» نامیده میشود.)، زمانی که ارتفاع شی برابر $h$ است را حساب کنید. شتاب گرانش زمین ($g$) را برابر ۱۰ بگیرید و خروجیها را تا دو رقم پس از اعشار نمایش دهید.
- سرعت اولیه در راستای $x$: $V_x$
- ارتفاع اولیهی پرتابه: $Y_0$
- سرعت اولیه در راستای $y$: $V_y$
- ارتفاع نقطهِ نهایی: $h$
همچنین طبق رابطههای فیزیکی میدانیم که $$h = - \frac{g}{2}.t^2 + V_y.t + Y_0$$ و برد = $V_x.t$ است.
توجه کنید که برد نمیتواند منفی باشد.
ورودی
در تنها خط ورودی به ترتیب ۴ عدد اعشاری $V_x$ و $V_y$ و $Y_0$ و $h$ آمده است.
تضمین میشود که قدر مطلق تمامی اعداد ورودی از ۱۰۰۰ کمتر است و حداکثر ۶ رقم بعد از اعشار دارند.
خروجی
اگر رسیدن به این نقطه امکان ندارد، در تنها سطر خروجی impossible
را چاپ کنید.
در غیر این صورت، در هر سطر از خروجی، بردهای پرتابه را به ترتیب از کوچک به بزرگ با دقت دقیقاً دو رقم بعد از اعشار چاپ کنید.
مثالها
ورودی نمونه ۱
14.2 20.0 4.5 24.5
خروجی نمونه ۱
28.40
معادلهی پرتابه به این صورت است: $$24.5 = -5t^2 + 20.0 t + 4.5$$ پس زمانی که به ارتفاع مورد نظر میرسیم برابر $t = 2.0$ است. برد پرتابه در آن لحظه برابر $$2.0 \times 14.2 = 28.4$$ است.
ورودی نمونه ۲
7.3 10.5 3.5 24.0
خروجی نمونه ۲
impossible
معادلهی پرتابه به این صورت است:
$$24.0 = -5t^2 + 10.5 t + 3.5$$
و هیچ لحظهای این پرتابه به ارتفاع مورد نظر نمیرسد پس پاسخ impossible
است.
ورودی نمونه ۳
10.5 16.0 9.0 1.8
خروجی نمونه ۳
37.80
معادلهی پرتابه به این صورت است: $$1.8 = -5t^2 + 16.0 t + 9.0$$ پس تنها زمان مثبتی که به ارتفاع مورد نظر میرسیم برابر $t = 3.6$ است. برد پرتابه در آن لحظه برابر $$3.6 \times 10.5 = 37.8$$ است.
ارسال پاسخ برای این سؤال