বব দ্য বোম্যান
o
/( )\ This is Bob.
L L Bob wants to be an archer.
#############
.
/ \ <--- bow So he bought himself a
(c -)-> <--- arrow nice longbow and is about
( )/ <--- highly focused Bob shoot at a target.
L L
#############
___________________________________________________________________________________________
sky
Bob is a smart guy. He already knows what angle and
velocity his arrow has / will have. But only YOU know
the distance to the target, so Bob doesn't know if he
will hit or miss. This is where you have to help him.
. +-+
/ \ | |
(c -)-> | |
( )/ +++
L L |
###########################################################################################
কার্য
আপনার কাজ হ'ল ববকে আঘাত করা বা নিখোঁজ হওয়ার একটি ASCII আর্ট ছবি রেন্ডার করা। গণনার জন্য:
- আপনার প্রোগ্রামটি আপনার যে
arrow_x,angle,velocity,distance
কোনও ক্রমে কমা-বিযুক্ত ইনপুট হিসাবে গ্রহণ করবে input - একটি ASCII অক্ষর সমান
1m
। - শেষ লাইনের প্রথম অক্ষরের স্থানাঙ্ক রয়েছে
(0,0)
, সুতরাং স্থলটি (হিসাবে দেওয়া হয়েছে#
) এখানে রয়েছেy=0
। - বব সবসময় মাটিতে দাঁড়িয়ে থাকে, তার
y
অবস্থান পরিবর্তন হয় না। - কোন সর্বাধিক নেই
y
। যাইহোক, তীর শীর্ষগুলি উপস্থাপিত ছবির মধ্যে মাপসই করা উচিত। - সমস্ত ইনপুট দশমিক পূর্ণসংখ্যা হিসাবে সরবরাহ করা হয়।
- গণনার সময়, ধরুন তীরটি একটি বিন্দু।
- তীরের উত্স হ'ল
>
একটি শ্যুটিং ববের তীর মাথা (উপরে দেখুন)। দেওয়া হয়েছেarrow_x
, আপনি গণনা করতে হবেarrow_y
। আউটপুটে বব এর বাম পায়ের সাথেx
কর্ডের সাথে মিল রাখতে হবে । শুটিং বব এর। distance
হয়x
লক্ষ্য এর তুল্য পা । (অর্থাত্ টার্গেটের মাঝখানে)।- সমস্ত পরিমাপ যথাক্রমে মিটার এবং ডিগ্রীতে সরবরাহ করা হয়।
- মনোযোগ: শুটিং বব কখনই রেন্ডার হয় না, কেবল গণনার জন্য ব্যবহৃত হয়! দুটি বৈধ আউটপুট-ববসের জন্য নীচে দেখুন
- লক্ষ্যকে আঘাত করা মানে তীরের পথটি দুটি বাম দিকে লক্ষ্য প্রাচীরের একটিকে অতিক্রম করে (
|
) (এটি হয় (দূরত্ব-1,3) বা (দূরত্ব-1,4) some যদি কোনও স্থানে তীরটি 2 মিটারের মধ্যে থাকে তবে স্থানটি দেয়ালের পরিবর্তে এক্সটি এটি আঘাত করে। লক্ষ্য সর্বদা একই উচ্চতা এবং কেবলমাত্র এর এক্স অবস্থান পরিবর্তন করতে পারে))। কর্নার হিট বা লক্ষ্যভেদে আকাশ থেকে পড়ে যাওয়া একটি তীর গণনা করে না। - মানক পৃথিবী জি প্রয়োগ হয় (9.81 মি / সেকেন্ড ^ 2)।
distance+1
ক্ষেত্রের শেষ, তারপরে, সমস্ত কিছু মিস এবং কোনও তীর রেন্ডার করা উচিত নয়।- যদি তীরটি অন্য কোনও উপায়ে লক্ষ্য করে (
distance-1
ইত্যাদি), কোনও তীর রেন্ডার করা উচিত নয়।
হারানো
এটি বব অনুপস্থিতির একটি উদাহরণ রেন্ডারিং (তীরটি 34 মিটারের মাটিতে প্রবেশ করে, কোণ 45 ° °, বায়ুতে সময় 10 সে, বেগ 50 ডলার - তবে এই আউটপুট তৈরি করার জন্য আরও অনেক বেশি সম্ভাব্য ইনপুট রয়েছে। কেবল আপনার প্রোগ্রামটি দেখান যে শারীরিকভাবে "নির্ভুল" ফলাফল গণনা করার জন্য সাধারণ সূত্রগুলি)):
+-+
| |
c\ | |
/( ) v +++
L L | |
###########################################################################################
হিট
এটি বব স্কোরিংয়ের একটি উদাহরণ রেন্ডারিং (তীর লক্ষ্যমাত্রায় প্রবেশ করে (= তার পথ অতিক্রম করে)):
+-+
>--X |
\c/ | |
( ) +++
L L |
###########################################################################################
উদাহরণ
arrow_x
7. হয়arrow_y
সবসময় 3।angle
হয়30°
বা0.523598776
রেডিয়ানvelocity
হয়13m/s
।distance
20 হয়।
সুতরাং লক্ষ্য আঘাত করতে, তীরটি অতিক্রম করতে হবে (19,3)
বা (19,4)
। অন্য সব কিছু মিস হবে। এই ক্ষেত্রে, তীর স্থল (মানে প্রবেশ করবে y
হবে <1.0
কোণে) 12.9358m = ~13m
পর 1.149s
।
সীমাবদ্ধতা এবং স্কোরিং
- এটি কোড-গল্ফ , তাই সংক্ষিপ্ততম সমাধানটি জয়লাভ করে। কোন বোনাস আছে।
- আপনার প্রোগ্রামটি (যেমন কার্যক্ষম নয় ) অবশ্যই উপরে বর্ণিত ফর্ম্যাটে ইনপুট গ্রহণ করতে হবে, অতিরিক্ত ইনপুট অনুমোদিত নয়।
- আপনাকে ভুল / অর্থহীন / অসম্ভব ইনপুটগুলি পরিচালনা করতে হবে না।
- আপনার ভাষার জন্য সবচেয়ে সংক্ষিপ্ত যুক্তিসঙ্গত আউটপুট যাই হোক না কেন তা মুদ্রণ করুন (স্ট্যান্ড, ফাইল, ...)।
- আমি হোয়াইটস্পেস অনুসরণের বিষয়ে চিন্তা করি না।
- টিপ: আউটপুট প্রস্থ হয়
distance+2
। উচ্চতা হয়apex+1
।
The left foot of Bob in the output has to match the x coord. of the shooting Bob.
এবংSee below for the two valid output-Bobs