जल्दी-जल्दी मेवेदोरिया में फूट डालो


10

पृष्ठभूमि

Manufactoria को एक गेम के रूप में विपणन किया गया है, लेकिन हम कोड-गोल्फर्स इसे देख सकते हैं कि यह वास्तव में क्या है: एक दो-आयामी प्रोग्रामिंग भाषा। मेफोरिया प्रोग्रामिंग भाषा एक एकल कतार के आसपास आधारित है , जिसमें रंगीन मार्करों की एक श्रृंखला है। इंस्ट्रक्टर पॉइंटर कन्वेयर बेल्ट का उपयोग करके गेम बोर्ड के चारों ओर घूमता है, और यह लेखकों और शाखाओं की एक श्रृंखला का सामना करता है जो कतार से पढ़ते हैं और लिखते हैं।

भाषा को समझना बहुत आसान है, इसलिए इसे सीखने का सबसे तेज़ तरीका खेल के पहले कुछ स्तरों (ऊपर जुड़ा हुआ) को खेलना है।

चुनौती

आपकी चुनौती एक ऐसा प्रोग्राम बनाना है जो कम से कम समय में एक संख्या को दूसरी संख्या से विभाजित कर सके।

कार्यक्रम के इनपुट में वाई ब्लू मार्करों के बाद एक्स ब्लू मार्करों की एक स्ट्रिंग होगी। आवश्यक आउटपुट X / Y की लंबाई के साथ लाल मार्करों की एक स्ट्रिंग होगी।

खेल बोर्ड का उपयोग इस आधिकारिक प्रतियोगिता स्तर में पाया जाता है:

http://pleasingfungus.com/Manufactoria/?ctm=Divide_and_Conquer;Input_will_be_X_blues_followed_by_Y_reds,_output_X/Y_reds;bbbbbbrr:rrr|bbbrrr:r|bbbbr:rrrr|r:|bbbbbbbbbbbbrrrr:rrr|bbbbbbbbbbbbrrr:rrrr|bbbbbbbbbrrr:rrr|bbbbbbbbbbrr: rrrrr; 13, 3, 0

यह 13x13 (अधिकतम आकार) है और यह सही परीक्षणों (स्कोरिंग अनुभाग देखें) से पहले से सुसज्जित है।

स्कोरिंग

आपके कार्यक्रम का स्कोर कुल समय है जो कार्यक्रम को आधिकारिक प्रतियोगिता स्तर में सभी परीक्षणों को पास करने के लिए लेता है। कुल समय स्तर-पूर्ण स्क्रीन पर दिया गया है।

परीक्षण चलाने के दौरान, आपको परिणामों को जल्दी प्राप्त करने के लिए बाईं ओर नीचे दिए गए 50x त्वरक स्लाइडर का उपयोग करना होगा (समय त्वरण स्कोर को प्रभावित नहीं करता है)।

यहाँ विभाजन समस्याओं की एक सूची है जो परीक्षणों में शामिल है:

 6/2 = 3
 3/3 = 1
 4/1 = 4
 0/1 = 0
12/4 = 3
12/3 = 4
 9/3 = 3
10/2 = 5

उदाहरण I / O

12/3=4
in:  BBBBBBBBBBBBRRR
out: RRRR

10/2=5
in:  BBBBBBBBBBRR
out: RRRRR

9/3=3
in:  BBBBBBBBBRRR
out: RRR

0/1=0
in:  R
out: 

मस्त माल, वो खेल! वास्तव में इन दिनों गोल्फ को समय न दें, लेकिन इसे याद रखेंगे।
tomsmeding

जवाबों:


6

स्कोर 3:29

1,2,3,4 से विभाजित होने वाला विशेष मामला भी हो सकता है। इसे बहुत तेज बनाता है ।

यहाँ छवि विवरण दर्ज करें

http://pleasingfungus.com/Manufactoria/?lvl=34&code=c9:13f2;c10:13f2;c11:13f2;p12:2f7;y13:2f0;p11:2f0;c11:4f3;c10:3f0;p11:5f0 ; C10: 5f0; C9: 5f0; C11: 6f3; P11: 7f0; C10: 7f0; P11: 3f0; R10: 6F1; q8: 5f4; q8: 6F1; q9: 6F1; C7: 5f3; C7: 6f3; q10 : 2f0; R10: 1f3; R10: 4f1; q9: 3f4; q9: 4f1; C9: 2f3; C8: 3f3; C8: 4f3; R10: 8f1; q10: 9f6; q9: 9f1; q9: 8f4; q9: 7f4 ; C8: 8f3; C8: 9f3; C8: 10f3; C8: 11f3; C8: 12f3; C8: 13f2; C7: 7f2; C8: 7f3; R11: 9f3; R11: 10f0; R10: 10f0; r9: 10f3; r9 : 11f2; P11: 11f6; R11: 12f1; G11: 8f3; B10: 11f2; C16: 10f2; प्रश्न 17: 10f6; प्रश्न 17: 11f3; G18: 11f0; C12: 11f1; C12: 10f2; C13: 10f2; C14: 10f2 ; C15: 10f2; C17: 12f0; p16: 12f4; C16: 11f3; C16: 13f1; प्रश्न 15: 12f0; R15: 13f1; C14: 12f3; C14: 13f0; C13: 13f0; प्रश्न 17: 7f6; प्रश्न 17: 9f1; Q18 : 9f6; प्रश्न 18: 8f5; प्रश्न 17: 6F1; G16: 6f2; y18: 6f0; p17: 5f5; R18: 5f0; C16: 5f0; p15: 5f0; R15: 6f3; B15: 7f2; p16: 7f6; R16: 8f1 ; प्रश्न 14: 5f0; Y14: 4f3; G14: 6F1; p13: 5f0; p13: 6f0; p13: 7f0; p13: 8f0; p13: 9f1; G12: 9f0; C17: 8f1; और CTM = Divide_and_Conquer;Input_will_be_X_blues_followed_by_Y_reds, _output_X / Y_reds; bbbbbbrr: RRR | bbbrrr: r | bbbbr: rrrr | r: | bbbbbbbbbbbbrrrr: RRR | bbbbbbbbbbbbrrr: rrrr | bbbbbbbbbrrr: RRR | bbbbbbbbbbrr: rrrrr; 13, 3, 0;


मुझे इसकी भविष्यवाणी करनी चाहिए थी, लेकिन वैसे भी अच्छी नौकरी। काश खेल इंजन मुझे 8 से अधिक परीक्षण मामलों को बनाने की अनुमति देता। क्या मुझे भविष्य में और अधिक मि‍लेशिया चुनौतियां पैदा करनी चाहिए?
PhiNotPi

1
ज़रूर, मुझे वे पसंद हैं।
कीथ रान्डेल

4

स्कोर: 15:51

यहाँ छवि विवरण दर्ज करें

बार-बार घटाव द्वारा विभाजन होता है। आर के बीच वाई का उपयोग करता है कि हमने अब तक कितने विभाजक ट्रैक किए हैं। भागफल को गिनने के लिए Gs का उपयोग करता है।

उदाहरण के लिए, 12/4 के लिए प्रत्येक बाहरी लूप (आरंभिक जी लेखक के ठीक बाद) की स्थिति है:

BBBBBBBBBBBB RRRR G
BBBBBBBB RRRR GG
BBBB RRRR GGG
RRRR GGGG

जब कोई Bs नहीं बचता है, तो नीचे बाईं ओर गैजेट रु। और # G-1 रु। को आउटपुट करता है।

आंतरिक लूप एक समय में एक बी स्ट्रिप्स और स्थिति का ट्रैक रखने के लिए वाई का उपयोग करता है। बाहरी लूप पर शुरू:

BBBBBBBB RRRR GG
BBBBBBB RYRRR GG
BBBBBB RRYRR GG
BBBBB RRRYR GG
BBBB RRRR GG

आंतरिक लूप निचले दाईं ओर 3x4 बॉक्स है। बाकी के लेआउट को शायद थोड़ा बेहतर किया जा सकता है, लेकिन आंतरिक लूप तंग है।

http://pleasingfungus.com/Manufactoria/?lvl=34&code=c11:13f2;g12:2f3;p12:3f7;c13:3f3;p13:4f3;b12:4f2;r14:4f3;p14:7f7;r13:7f2 ; प्रश्न 14: 8f7; G13: 8f2; p14: 9f4; R13: 10f2; p14: 10f7; B15: 10f0; प्रश्न 14: 11f7; p15: 11f3; R16: 11f1; p15: 8f0; R15: 9f1; C16: 8f0; C13 : 2f0; C15: 2f0; C16: 2f0; C17: 2f0; C11: 3f3; C11: 4f3; C11: 6f3; C11: 7f3; C11: 8f3; C11: 9f3; C11: 5f3; P11: 10f7; प्रश्न 11: 11f6 ; प्रश्न 11: 12f7; R10: 12f2; C10: 10f2; प्रश्न 16: 10f5; Y14: 6f3; प्रश्न 14: 5f3; G15: 5f1; C15: 4f1; C15: 3f1; C17: 9f1; C17: 8f1; C17: 7f1; C17 : 6F1; C17: 5f1; C17: 4f1; C17: 3f1; y16: 9f1; G17: 10f1; प्रश्न 14: 2f4; G14: 1f3; और CTM = Divide_and_Conquer; Input_will_be_X_blues_followed_by_Y_reds, _output_X / Y_reds; bbbbbbrr: RRR | bbbrrr: r | bbbbr : rrrr | r: | bbbbbbbbbbbbrrrr: RRR | bbbbbbbbbbbbrrr: rrrr | bbbbbbbbbrrr: RRR | bbbbbbbbbbrr: rrrrr; 13; 3; 0 ;


आपके डिज़ाइन के हिस्सों को बड़े पैमाने पर पुनर्व्यवस्थित करके, मैं 53 भागों के साथ स्कोर को घटाकर 13:28 करने में सक्षम हूं।
PhiNotPi

2
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.