मैश अप टाइम!
यह मेरी रैंडम गोल्फ ऑफ़ द डे और ऑप्टिमाइज़र ASCII आर्ट ऑफ़ द डे सीरीज़ दोनों की # 5 किस्त है । इस चुनौती में आपका सबमिशन दोनों लीडरबोर्ड की ओर गिना जाएगा (जो आप लिंक किए गए पोस्ट को पा सकते हैं)। बेशक, आप इसे किसी भी अन्य कोड गोल्फ चुनौती की तरह मान सकते हैं, और इसका जवाब दिए बिना किसी भी श्रृंखला के बारे में चिंता किए बिना।
छेद 5: हीरा झुकाव
एक नियमित षट्भुज हमेशा हीरे के साथ टाइल की जा सकती है जैसे:
हम इन झुकावों के ASCII कला प्रतिनिधित्व का उपयोग करेंगे। साइड-लंबाई 2 के एक षट्भुज के लिए, इस तरह के 20 झुकाव हैं:
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
/\_\_\ /\_\_\ /\_\_\ /\_\_\ /_/\_\ /_/\_\ /\_\_\ /_/\_\ /_/\_\ /_/\_\
/\/\_\_\ /\/_/\_\ /\/_/_/\ /\/_/\_\ /\_\/\_\ /\_\/_/\ /\/_/_/\ /\_\/\_\ /\_\/_/\ /_/\/\_\
\/\/_/_/ \/\_\/_/ \/\_\_\/ \/_/\/_/ \/\_\/_/ \/\_\_\/ \/_/\_\/ \/_/\/_/ \/_/\_\/ \_\/\/_/
\/_/_/ \/_/_/ \/_/_/ \_\/_/ \/_/_/ \/_/_/ \_\/_/ \_\/_/ \_\/_/ \_\/_/
____ ____ ____ ____ ____ ____ ____ ____ ____ ____
/_/_/\ /\_\_\ /_/\_\ /_/_/\ /_/\_\ /_/\_\ /_/_/\ /_/_/\ /_/_/\ /_/_/\
/\_\_\/\ /\/_/_/\ /_/\/_/\ /\_\_\/\ /\_\/_/\ /_/\/_/\ /_/\_\/\ /\_\_\/\ /_/\_\/\ /_/_/\/\
\/\_\_\/ \/_/_/\/ \_\/\_\/ \/_/\_\/ \/_/_/\/ \_\/_/\/ \_\/\_\/ \/_/_/\/ \_\/_/\/ \_\_\/\/
\/_/_/ \_\_\/ \_\/_/ \_\/_/ \_\_\/ \_\_\/ \_\/_/ \_\_\/ \_\_\/ \_\_\/
एक साइड की लंबाई को देखते हुए N
, आपको N
यादृच्छिक पर साइड की लंबाई के हेक्सागोन के लिए इस तरह की एक टाइलिंग उत्पन्न करनी चाहिए । सटीक वितरण कोई फर्क नहीं पड़ता, लेकिन प्रत्येक टाइलिंग को गैर-शून्य संभावना के साथ लौटाया जाना चाहिए।
इसके लिए N ≤ 4
, आपके सबमिशन को 1 मिनट के भीतर कम से कम 80% समय पर एक टाइलिंग का उत्पादन करना होगा और कम से कम 80% झुकाव को 1 मिनट के भीतर उत्पन्न करना होगा। अधिकांश दृष्टिकोणों को इस नियम के बारे में चिंता करने की ज़रूरत नहीं होगी (यह बहुत ही उदार है) - यह बहुत भोले-भाले अस्वीकृति-आधारित एल्गोरिदम को नियमबद्ध करने के लिए है जब तक कि एक टाइलिंग नहीं होती है।
आपको यह जानना पसंद होगा कि दिए गए N के लिए संभावित झुकाव की कुल संख्या OEIS A008793 में पाई जा सकती है ।
आप एक पूर्ण प्रोग्राम या फ़ंक्शन लिख सकते हैं और STDIN (या निकटतम विकल्प), कमांड-लाइन तर्क या फ़ंक्शन तर्क के माध्यम से इनपुट ले सकते हैं और STDOUT (या निकटतम विकल्प), फ़ंक्शन रिटर्न मान या फ़ंक्शन (आउट) पैरामीटर के माध्यम से आउटपुट का उत्पादन कर सकते हैं।
आपको षट्भुज को संरेखित करने के लिए आवश्यक से अधिक अग्रणी स्थान का उत्पादन नहीं करना चाहिए (जो कि षट्भुज के बाएं कोने में है, उसके सामने कोई स्थान नहीं होना चाहिए)। प्रत्येक पंक्ति में N
अनुगामी स्थान हो सकते हैं (आवश्यक रूप से लगातार नहीं, इसलिए आप उदाहरण के लिए एक आयताकार आउटपुट हो सकते हैं, षट्भुज के बाउंडिंग बॉक्स को प्रिंट कर सकते हैं)।
यह कोड गोल्फ है, इसलिए सबसे छोटा सबमिशन (बाइट्स में) जीतता है। और निश्चित रूप से, प्रति उपयोगकर्ता सबसे कम सबमिशन भी श्रृंखला के समग्र लीडरबोर्ड में प्रवेश करेगा।
लीडरबोर्ड
प्रत्येक श्रृंखला की पहली पोस्ट एक लीडरबोर्ड उत्पन्न करती है।
यह सुनिश्चित करने के लिए कि आपके उत्तर दिखाए गए हैं, कृपया प्रत्येक मार्कलाइन के साथ निम्नलिखित मार्कडाउन टेम्प्लेट का उपयोग करके प्रत्येक उत्तर को शुरू करें:
# Language Name, N bytes
N
आपके सबमिशन का आकार कहां है। यदि आप अपने स्कोर में सुधार करते हैं, तो आप पुराने अंकों को हेडलाइन में रख सकते हैं , उनके माध्यम से स्ट्राइक करके। उदाहरण के लिए:
# Ruby, <s>104</s> <s>101</s> 96 bytes
(भाषा को वर्तमान में नहीं दिखाया गया है, लेकिन स्निपेट की आवश्यकता होती है और इसे पार्स किया जाता है, और मैं भविष्य में एक उप-भाषा लीडरबोर्ड जोड़ सकता हूं।)
For N ≤ 4, your submission must produce a tiling within 1 minute at least 80% of the time.
बहुत आसान: एक ही समय का 80%, मूल टाइलिंग, अन्यथा मुझे जो भी समय में एक और टाइलिंग मिलती है वह मुझे चाहिए