गोल्फ अभ्यास: अजगर [बंद]


10

यह उन चालों और अनुकूलन के बारे में एक चुनौती है, जिनका उपयोग पायथ में गोल्फिंग करते समय किया जा सकता है। Pyth golfers शामिल कई चालों को पहचान सकते हैं। हालांकि, अपरिचित दृष्टिकोण और निर्माण शामिल हो सकते हैं, इसलिए यदि आप अटक जाते हैं , तो पाइथ टिप्स के साथ-साथ पाइथ कैरेक्टर संदर्भ पर एक नज़र डालें । यहां समाधान का परीक्षण किया जा सकता है

लक्ष्य: अनुकूलन के लिए आपके लिए 8 समस्याएं हैं, जिनमें से प्रत्येक पायथ स्निपेट के साथ है। आपका लक्ष्य कुछ समतुल्य लेकिन छोटा बनाना है। संदर्भ समाधान कुल 80 बाइट्स। आपका लक्ष्य यह है कि जितना संभव हो सके उतना हरा दें।

विजेता सबमिशन में जाएगा जो बाइट की सबसे छोटी कुल संख्या के साथ सभी 8 समस्याओं को हल करता है। टाईब्रेकर पहले की पोस्ट है।

उत्तर देना: कृपया अपने कुल स्कोर को छोड़कर, अपने पूरे उत्तर को खराब कर दें। यह इरादा है कि आप अपना स्वयं का सबमिट करने से पहले अन्य लोगों के उत्तरों को न देखें।

प्रत्येक सबमिशन को हर समस्या का जवाब देना चाहिए और संबंधित बाइट की गिनती देनी चाहिए, लेकिन यदि आप इसे सुधार नहीं सकते तो संदर्भ कार्यान्वयन का उपयोग करने के लिए स्वतंत्र महसूस करें।

विवरण: यदि प्रश्न एक निश्चित मूल्य या आउटपुट के लिए कहता qहै, तो समानता वांछित है, इसलिए 1और !0समतुल्य हैं। यदि प्रश्न यह परीक्षण करने के लिए कहता है कि क्या कोई शर्त सत्य है, तो आउटपुट सत्य होना चाहिए यदि स्थिति सही है और यदि स्थिति झूठी है तो गलत है, लेकिन इससे परे असंवैधानिक है। तुम सच के लिए झूठे और झूठ के लिए सच स्वैप नहीं कर सकते। यदि प्रश्न किसी चीज़ को प्रिंट करने के लिए कहता है, तो एक अनुगामी न्यूलाइन के अलावा और कुछ भी मुद्रित नहीं किया जा सकता है।

इस सवाल के पोस्टिंग के रूप में सबसे हाल के पाइथ के लिए सभी उत्तर मान्य होने चाहिए ।

समस्या 1: क्यू में सेट को देखते हुए, किसी भी क्रम में क्यू के तत्वों से युक्त सूची का उत्पादन करें।

; 3 bytes
f1Q

समस्या 2: सूची को आउटपुट करें [1, 1, 0, 0, 1, 1, 0]

; 9 bytes
[J1JZZJJZ

समस्या 3: क्यू में एक धनात्मक पूर्णांक को देखते हुए, परीक्षण करें कि क्या Q के सभी अंक सकारात्मक हैं (शून्य नहीं)।

; 7 bytes
!f!TjQT

समस्या 4: z में एक स्ट्रिंग को देखते हुए, परीक्षण करें कि क्या z में कोई उद्धरण चिह्न है - "या '

; 9 bytes
|}\'z}\"z

समस्या 5: मानचित्र Q = 1 से 'जीत', Q = 0 से 'टाई' और Q = -1 से 'हार'।

; 20 bytes
@["Tie""Win""Lose")Q

समस्या 6: प्रिंट 0123456789

; 6 bytes
sm`dUT

समस्या 7: z में एक स्ट्रिंग को देखते हुए, व्युत्क्रमों की संख्या गिनें।

(अनुक्रमित करें iऔर jयदि उलटा करें, i < jलेकिन z[i] > z[j])।

; 17 bytes
ssmm>@zd@zkrdlzUz

समस्या 8: z में एक सूची को देखते हुए, आसन्न तत्वों की संख्या की गणना करें।

; 9 bytes
lfqFT.:z2

@ user1737909 यह उत्तर सही है। एक फ़ंक्शन पर f1Qफिल्टर Qजो हमेशा सच होता है, इसलिए यह हमेशा सेट के प्रत्येक तत्व को आउटपुट करता है। fएक सूची को आउटपुट करता है, जो उस प्रश्न में उद्देश्य को पूरा करता है।
इसहाक

मैं इस प्रश्न को ऑफ-टॉपिक के रूप में बंद कर रहा हूं क्योंकि भागों के बीच कोई इंटरैक्शन नहीं होने वाली बहु-भाग चुनौतियां अस्वीकृत हैं। meta.codegolf.stackexchange.com/a/8464/45941
मार्टिन

जवाबों:


9

52 बाइट्स

समस्या 1: 2 बाइट्स

    SQ

समस्या 2: 5 बाइट्स
    jC\f2

समस्या 3: 4 बाइट्स
    -0`Q
समस्या 4: 6 बाइट्स
    @z+N\'
समस्या 5: 17 बाइट्स
    %3>"LTWoiisene"hQ
या
    @c3"LoseTieWin"hQ
समस्या 6: 3 बाइट्स
    pMT
समस्या 7: 9 बाइट्स
    s>R_d.cz2
समस्या 8: 6 बाइट्स
    sqVztz
समस्या के लिए @ xnor के समाधान को 4 के साथ जोड़कर (दोनों 6 बाइट्स) एक अच्छा 4 बाइट्स समाधान देता है । तो 48 बाइट्स संभव हैं।


आप अपने समाधान को xnor के साथ जोड़ नहीं सकते, क्योंकि xnor अमान्य है (उसके उत्तर पर मेरी टिप्पणी देखें)।
orlp

@orlp * सब कुछ लेकिन अमान्य सामान संयोजन ;-) मेरी पोस्ट में समाधान जोड़ा गया।
जकुबे जुएल

आह, मैं अब देख रहा हूँ :) लगता है कि मैं 6 बाइट्स (और गिनती) इष्टतम से भी बदतर था।
orlp

आह! धन्यवाद! एहसास नहीं था :)। मैं वह निकाल दूंगा।
शुक्र

7

54 बाइट्स

टास्क 1, 2 बाइट्स : SQ
टास्क 2, 6 बाइट्स : j102 2
टास्क 3, 5 बाइट्स : *FjQT
टास्क 4, 6 बाइट्स : @z"'\"
टास्क 5, 17 बाइट्स : @c3"LoseTieWin"hQ
टास्क 6, 4 बाइट्स : jkUT
टास्क 7, 7 बाइट्स : s>M.cz2
टास्क 8, 7 बाइट्स :sqM.:z2


अच्छी तरह से golfed :-)
Vedaad शाकिब

क्या आप टास्क 4 के लिए वैध हैं क्योंकि यह गलत है कि यह सिर्फ एक खाली लाइन प्रिंट करता है?
माल्टसेन

@ मैल्टीसेन हाँ, क्योंकि सत्य का मूल्य ""गलत है क्योंकि not ""सत्य है।
orlp

3

58 बाइट्स

टास्क 1, 2 बाइट्स : SQ
टास्क 2, 5 बाइट्स : jC\f2
टास्क 3, 6 बाइट्स : !}जेड Q
टास्क 4, 8 बाइट्स : |}\'z}Nz
टास्क 5, 18 बाइट्स : @c"Tie\nWin\nLose"bQ
टास्क 6, 4 बाइट्स : jkUT
टास्क 7, 9 बाइट्स : lf>FT.cz2
टास्क 8, 6 बाइट्स :sqVtzz


मैं के बारे में पता नहीं था Vइसलिए मैं यह है कि एक के लिए माफ कर रहा हूँ, (हालांकि मैं अभी भी पूरी तरह से है, यह समझ में नहीं आता जब से तुम inequal लंबाई ऑपरेंड पर वेक्टर संचालन कर रहे हैं), लेकिन मैं वास्तव में के बारे में सोचा गया है चाहिए C\f= /
orlp

@orlp Vस्वचालित रूप से असमान इनपुटों को
काटता है

3

यह पोस्ट सभी उत्तरों में सर्वश्रेष्ठ समाधानों के संचय के लिए है। कृपया समाधान में संपादित करें और उत्तर देने वाले ने पहली बार उस समाधान को पाया यदि कोई सुधार हो।

48 बाइट्स

1. SQ- 2 बाइट्स, पहली बार @orlp
2 द्वारा पोस्ट की गई । jC\f2- 5 बाइट्स, पहली पोस्ट @Maltysen
3. -0`Q- 4 बाइट्स, पहली बार @Jakube
4. द्वारा पोस्ट की गई @z`N- 4 बाइट्स, @xnor और @Jakube का मिश्रण, लेकिन इसमें नहीं अभी तक कोई जवाब नहीं।
(मैं जब प्रश्न लिखने, या तो यह देखा था नहीं)
5. @c3"LoseTieWin"hQ- 17 बाइट्स, पहले @orlp द्वारा पोस्ट की गई
6. pMT- 3 बाइट्स, पहले @Jakube द्वारा पोस्ट की गई
7. s>M.cz2- 7 बाइट्स, पहले @orlp द्वारा पोस्ट की गई
8. sqVtzz- 6 बाइट्स, पहली बार @Maltysen द्वारा पोस्ट की गई


क्या हम प्रश्न से पहले पायथ संस्करणों पर रोक लगा रहे हैं?
ऑप्टिमाइज़र

1
"इस प्रश्न के पोस्टिंग के रूप में सबसे हाल के पाइथ के लिए सभी उत्तर मान्य होने चाहिए।" रखो मुझे यह सुनने में दिलचस्पी होगी कि तुम क्या सोच रहे थे। @ ऑप्टिमाइज़र
इस्साकग

अजगर कभी विकसित हो रहा है, है ना? (अन्य गोल्फ भाषाओं की तुलना में बहुत तेज गति से)। तो इसकी बहुत संभावना है कि यह संख्या (48) आसानी से निकट भविष्य में उप 40 हो जाएगी। और चूंकि यह एक अभ्यास चुनौती है, आप आदर्श रूप से नई चुनौतियों के लिए नवीनतम पायथ संस्करण का उपयोग करके अभ्यास करना चाहेंगे।
ऑप्टिमाइज़र

2

57 बाइट्स

1. (2) SQक्रमबद्ध करें।
2. (5) ASCII वैल में तब बेस में jC\f2 कनवर्ट fकरें 2.
3. (5) संख्या स्ट्रिंग में /`Q`0गणना करें '0'
4. (5) के @z`\'साथ स्ट्रिंग के सेट चौराहे लेता है "'"
5. (18) @c"Tie Win Lose"dQविभाजन के साथ सूची बनाता है। मुझे काम करने में दिक्कत नहीं हुई।
6. (4) jkUTसम्मिलित हों range(10)। स्पष्ट रूप से स्वचालित रूप से एक स्ट्रिंग में कनवर्ट करता है।
7. (9) उन sm>d_d.:zपदार्थों को गिनता है जो उनके रिवर्स से अधिक हैं।
8. (9) l@C,zz.:zसूची के तत्वों के जोड़े और सूची में तत्वों के जोड़े के चौराहे की लंबाई। संदर्भ समाधान के रूप में एक ही लंबाई।


# 4 के लिए आपका समाधान अमान्य है। उदाहरण के लिए स्ट्रिंग te\\stएक झूठी सकारात्मक है।
orlp

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