मेरे रोबोट ने किसी तरह कम परिचालित किया है और बेतरतीब ढंग से मेरी प्रयोगशाला से कहीं दूर चला गया है!
सौभाग्य से, जब भी वह ऐसा करता है, तो उसका शट-डाउन क्रम शुरू हो जाता है, जिससे वह स्विच ऑफ करने से पहले बेतरतीब ढंग से मुड़ने और पांच राउंड के लिए सामना करने की दिशा में पर्याप्त समय देता है। उनके gyro और एक्सेलेरोमीटर फ़ंक्शंस अभी भी डेटा को लैब में वापस भेज रहे हैं जबकि वह अभी भी चालू है।
उदाहरण के लिए, डेटा हमेशा दो संख्याओं के पांच सेटों के रूप में आएगा।
12:234,-135:47,-68:230,140:324,127,87
आपका मिशन, गोल्फरों को) रोबोट के उन्मत्त रन का अनुकरण करना है और a1:d1,a2:d2,a3:d3,a4:d4,a5:d5जहां a(n) घड़ी के कोण (डिग्री में) के रूप में संख्याओं के पांच सेटों को प्रदर्शित करके अनुक्रम को चालू करना -179<=a<=+180है ताकि रोबोट अपने वर्तमान शीर्ष से चालू हो जाएगा ( शुरू में यह शून्य हेडिंग पर होता है इससे पहले कि यह एमोक चलता है और पहली बार मुड़ता है), और d(n) पैरों में वह दूरी है जो अगले हेडिंग परिवर्तन से पहले चलती है जो कि ऐसा है 0<=d<=500; और बी) प्रयोगशाला से एक परिकलित शीर्षक (जो शून्य की ओर भी बढ़ रहा है), पैरों में दूरी (3 दशमलव स्थानों तक सटीकता दृढ़ता से प्रोत्साहित की जाती है, -5 बाइट्स यदि आप करते हैं), और ओरिएंटेशन हेडिंग (डिग्री में) मेरे रोबोट का सामना करना पड़ रहा है, जहां वह बंद है।
आसान उदाहरण:
Data: 0:1,45:1,90:1,90:1,90:1
Heading: 0
Distance: 1
Orientation: -45
यादृच्छिक बदल जाता है और दूरी बस, यादृच्छिक हैं। कोई भी सेट मान हार्ड कोडेड नहीं हैं, हमें कोड के भीतर कार्रवाई में यादृच्छिकता को देखना होगा।
यादृच्छिकता पर प्रतिबंध: कोई घड़ी या दिनांक आधारित संदर्भ नहीं, हमें randomकोड के भीतर एक मूल संदर्भ देखना होगा । जब भी आप इस कोड को चलाते हैं, यादृच्छिकता को प्रत्येक मोड़-राउंड दौर के साथ 360 के 1 संभावित कोण को दिखाने की संभावना के साथ प्रस्तुत करना होगा। तो रोबोट एक मोड़ पर -36 डिग्री और एक मोड़ पर +157 डिग्री मोड़ सकता है, इसके बाद +2 डिग्री का एक और मोड़ -116 डिग्री और दूसरा अंतिम मोड़ पर +42 डिग्री हो सकता है। प्रत्येक यादृच्छिक कोण पीढ़ी के साथ कम से कम 360 अलग-अलग मान संभव होना चाहिए (-179 से +180 डिग्री समावेशी)।
डिस्टेंस रन के लिए प्रतिबंध: इसी तरह, सेट की जाती हैं, 501 संभव दूरी हैं जिन्हें रोबोट चला सकता है, (0 से 500 फीट के बीच), इसलिए मुझे उम्मीद है कि रोबोट की रनिंग डिस्टेंस को निर्धारित करते समय यादृच्छिकता भी उपलब्ध होगी। रोबोट सैद्धांतिक रूप से अपने संबंधित दौरों के साथ 45, 117, 364, 27 और 6 फीट दौड़ सकता है ...
आपके द्वारा खिलाया गया डेटा हमेशा पूर्णांक मानों में होगा ... रोबोट पूर्णांक श्रेणियों में बदल जाएगा, और पूर्णांक श्रेणी में चलेगा। हालांकि, आउटपुट मान फ्लोट होंगे ...
यह कोड-गोल्फ है। सबसे छोटा कोड जीतता है ... अब जाओ मेरे रोबोट को ढूंढो!
PS: मेरे "3 दशमलव स्थानों तक सटीकता" के संदर्भ में, यदि आप शीर्षक प्रदान कर सकते हैं (डिग्री में, 3 दशमलव स्थानों का न्यूनतम स्तर तक) और पैरों में दूरी भी (मिनट 3 दशमलव स्थानों के लिए भी सटीक) -5 बाइट बोनस मिलेगा)।
-180 < a <= +180रूप में इस्तेमाल कर सकते हैं, लेकिन<AFAIK से कम नहीं ...