पर्ल, 45 बाइट्स
;print$_=<>,~~reverse;m;esrever~~,><=_$tnirp;
बहुत सीधा, print
इनपुट ( $_=<>
) इसके बाद है reverse
। reverse
रिटर्न $_
क्योंकि हम इसे स्केलर संदर्भ में उपयोग कर रहे हैं ~~
। फिर हम लिपि के उलट, शून्य संदर्भ में, मिलान के रूप में m//
उपयोग करते हैं ;
।
यदि हम छापामार कर सकते हैं तो हमें एक पैलिंड्रोम नहीं बनाना होगा, esrever,><=_$tnirp
हम कोड को 43 बाइट्स तक छोटा कर सकते हैं :
g.print$_=<>,reverse.m.esrever,><=_$tnirp.g
प्रयोग
echo -n 'neverod' | perl -e 'g.print$_=<>,reverse.m.esrever,><=_$tnirp.g'
neveroddoreven
पर्ल, 26 बाइट्स
25 बाइट्स कोड + 1 के लिए शामिल है -p
।
$_.=reverse;m;esrever=._$
मुझे नहीं लगता कि यह मान्य है क्योंकि इसे -p
ध्वज की आवश्यकता है जो मुझे नहीं लगता कि आसानी से स्क्रिप्ट सामग्री में जोड़ा जा सकता है ताकि एक सच्चा तालमेल बनाया जा सके। ऊपर की तरह बहुत अधिक कॉल, इस तथ्य पर निर्भर करता है कि बंद करने के लिए पर्दे के पीछे (नए पर्ल्स पर -p
भी) जोड़ता है ।;
m//
प्रयोग
echo -n 'neverod' | perl -pe ';$_.=reverse;m;esrever=._$;'
neveroddoreven