बॉब द बोमन
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
किसी भी क्रम में अल्पविराम से अलग किए गए इनपुट के रूप में आपको मिलेगा । - एक ASCII वर्ण बराबर होता है
1m
। - अंतिम पंक्ति में पहले वर्ण में निर्देशांक हैं
(0,0)
, इसलिए जमीन (जैसा कि प्रस्तुत है#
) पर हैy=0
। - बॉब हमेशा जमीन पर खड़ा रहता है, उसकी
y
स्थिति नहीं बदलती है। - कोई अधिकतम नहीं है
y
। हालांकि, एरो एपेक्स को प्रदान की गई तस्वीर के भीतर फिट होना चाहिए। - सभी इनपुट को दशमलव पूर्णांक के रूप में प्रदान किया गया है।
- गणना के दौरान, मान लें कि तीर एक बिंदु है।
- तीर उत्पत्ति
>
एक शूटिंग बॉब के तीर प्रमुख है (ऊपर देखें)। इसलिएarrow_x
, आपको गणना करनी होगीarrow_y
। आउटपुट में बॉब के बाएं पैर कोx
समन्वय से मेल खाना है । शूटिंग बॉब की। distance
हैx
लक्ष्य के समन्वय पैर । (यानी लक्ष्य के बीच में)।- सभी माप क्रमशः मीटर और डिग्री में प्रदान किए जाते हैं।
- ध्यान दें: शूटिंग बॉब को कभी भी प्रस्तुत नहीं किया जाता है, केवल गणना के लिए उपयोग किया जाता है! नीचे दो वैध आउटपुट-बोब्स के लिए देखें
- लक्ष्य से टकराने का अर्थ है कि तीर का रास्ता या तो दो सबसे बाईं ओर की दीवारों में से एक को पार करता है (
|
) (जो कि या तो (दूरी-1,3) या (दूरी-1,4) है। यदि किसी बिंदु पर तीर उन 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
।
सीमा और स्कोरिंग
- यह कोड-गोल्फ है , इसलिए सबसे छोटा समाधान जीतता है। कोई बोनस नहीं है।
- आपके कार्यक्रम (जैसा कि फ़ंक्शन में नहीं ) को ऊपर वर्णित प्रारूप में इनपुट को स्वीकार करना होगा, अतिरिक्त इनपुट की अनुमति नहीं है।
- आपको गलत / निरर्थक / असंभव जानकारी नहीं देनी होगी।
- जो कुछ भी आपकी भाषा के लिए सबसे कम उचित आउटपुट है उसे प्रिंट करें (std, file, ...)।
- मैं व्हाट्सएप को पीछे करने की परवाह नहीं करता।
- टिप: आउटपुट की चौड़ाई है
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