पूरे होल को अनहेल्ड का उपयोग करके लिखें


55

ASCII वर्ण 126 करने के लिए दशमलव कोड 33 से कर रहे हैं:

!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~

ध्यान दें कि अधिकांश फोंट में, इनमें से 25 पात्रों में "छेद" हैं: ( 0 से अधिक एक जीनस जो आप कह सकते हैं)

#$%&04689@ABDOPQRabdegopq

अन्य 68 "अपवित्र" पात्र हैं:

!"'()*+,-./12357:;<=>?CEFGHIJKLMNSTUVWXYZ[\]^_`cfhijklmnrstuvwxyz{|}~

आपका कार्य केवल छोटे अक्षरों में संभव प्रोग्राम लिखना है, जो कि किसी भी क्रम में एक ही बार में प्रत्येक पवित्र अक्षर का आउटपुट देता है।

चूंकि स्पेस, टैब और न्यूलाइन्स (लाइन फीड और / या कैरिज रिटर्न) वे खाली स्थान हैं जो वे आपके प्रोग्राम या इसके आउटपुट में दिखाई दे सकते हैं। वे अभी भी वर्णों की संख्या की ओर गिनती करते हैं। अन्य ASCII वर्णों का उपयोग नहीं किया जा सकता है (और निश्चित रूप से गैर-ASCII वर्ण नहीं)।

टिप्पणियाँ

  • आपको सभी अपवित्र पात्रों का उपयोग करने की आवश्यकता नहीं है और न ही प्रत्येक में से केवल एक का।
  • आउटपुट में अनचाहे अक्षर नहीं हो सकते।
  • व्हाइटस्पेस भाषा का इस्तेमाल किया जा सकता है।
  • आउटपुट stdout में जाना चाहिए या किसी फ़ाइल में जा सकता है। कोई इनपुट नहीं होना चाहिए।

बोनस: केवल मनोरंजन के लिए, होले वाले वर्णों का उपयोग करके सभी अनहोल्ड वर्णों को प्रिंट करने का प्रयास करें। मुझे संदेह है कि यह एक मौजूदा भाषा में किया जा सकता है।


9
शीर्षक के लिए +1। हम इस तरह से प्यार करते हैं ।
जैकब

1
पर्ल समाधान कहाँ है ?!
पियरे अरलाउड

4
खैर, हास्केल या सी में कोई समाधान नहीं; यदि यह एक कार्यक्रम है जिसे आप चाहते हैं, तो आपको वर्तनी की आवश्यकता है main
रयानॉइड

2
व्हॉट्सएप का उपयोग करके बोनस प्राप्त किया जा सकता है।
यहोशू

1
कैसे किसी ने कभी नहीं देखा कि मैं भूल गया ~??
केल्विन के शौक

जवाबों:


18

पायथ , 43 35 वर्ण

tTFk"*+,-7;=?GHIKVWXYhiklnvwx"C-Ck7

इसे यहाँ आज़माएँ ।

वर्णों को उस क्रम में प्रिंट करता है सिवाय इसके कि 9 शुरुआत में है, न्यूलाइन अलग हो गया।

स्ट्रिंग में सभी वर्ण 7 होते हैं जो आवश्यकता से अधिक होते हैं, सिवाय इसके कि 9 @ बन जाते हैं, इसलिए यह विशेष आवरण है। @Howard को एल्गोरिथम धन्यवाद।

स्पष्टीकरण:

tT                print(10-1)                T=10, t(x)=x-1 if x is an int.
Fk"<string>"      for k in "<string>":
C-Ck7             print(chr(ord(k)-7))       Note that C is overloaded as ord and chr.

24

GolfScript, 37 36 अक्षर

[":=<?)-/! YX[]VIHKx{}|~vih"{25^}/]+

यहाँ कोड का प्रयास करें

स्ट्रिंग में 25 के साथ निषिद्ध वर्ण शामिल हैं। सौभाग्य से सभी वर्ण मान्य लोगों के लिए मैप किए गए हैं।


22

ब्रेनफक 119

--[------->++<]>-.+.+.+.++++++++++.++++.++.++.+.+++++++.+.+.++.+++++++++++.+.+.+.[------>+<]>--.+.++.+.++.++++++++.+.+.

उह, --शुरुआत में ... क्या आप वहां प्रारंभिक रजिस्टर पर वापस 254 पर साइकिल चला रहे हैं?
वैलीवेस्ट

1
यूप :) लूप को ३६ कम (३५ में पाने के लिए) बनाता है
टेउन प्रुन

खैर, यह निश्चित रूप से मेरे 275 ... अच्छी तरह से किया जाता है ...
WallyWest

@ केल्विन के शौकीन मैं निश्चित रूप से कुछ इनपुट की अनुमति नहीं देता, क्षमा करें। हालांकि ओपी स्पष्ट करना चाह सकता है।
ईसैक

@ आइसाकग मुझे पता है, यही कारण है कि मेरा मुख्य कोड इनपुट नहीं लेता है और अंतिम उदाहरण गंभीर नहीं है :)
Teun Pronk

20

बोनस - डीसी, 179 अक्षर

ओह अच्छा, एक और प्रतिबंधित चरित्र सेट चुनौती जहां Pअनुमति है।

6A44469PD684P44D4898PDB99P4008D0BP486B48BPA60BPD096P4A68666P460A0D4P690490AP8084088P6B6AB66P6BBB608P80D4BAAPA046PBAD4P60A6668P480DD96P4A040BBP848BP40DD8D0P46840B6P696B48BP48D64BAP

चूंकि dcस्पष्ट रूप से स्पष्ट करने के लिए पर्याप्त अस्पष्ट है (अजीब बात है कि मेरे आस-पास के अजीब सामान को देखते हुए!) यहाँ एक सिंहावलोकन है:

यह मुख्य रूप से मनमाने ढंग से सटीक अंकगणित के साथ एक आरपीएन कैलकुलेटर है। लेकिन इस चुनौती के लिए, मैं Pकमांड का उपयोग कर रहा हूं , जो आधार 256 में पात्रों की एक श्रृंखला के रूप में एक संख्या की व्याख्या करता है और उन्हें प्रिंट करता है। उदाहरण: 65 Pप्रिंट A(ASCII कोड 65)। 16706 Pप्रिंट्स AB(16706 = 65 * 256 + 66)।

इसके अलावा, एकमात्र अन्य दिलचस्प विशेषता यह है कि यह सभी हेक्साडेसिमल अंकों को पहचानता है, 0-9A-Fभले ही वे हेक्साडेसिमल संख्या में निहित न हों। दशमलव इनपुट डिफ़ॉल्ट है, इसलिए इनपुट टोकन का 999अर्थ है 9 hundreds + 9 tens + 9और ABCइसका मतलब है 10 hundreds + 11 tens + 12कि यह इसके बराबर है 1122

ABDदशमलव में अंकों का उपयोग करने की क्षमता आंशिक रूप से उपयोग करने में असमर्थता के लिए बनाती है 12357, और आदेश और समूहीकरण का विकल्प बाकी काम करता है। (मैं कुछ नंबरों की जरूरत है x, y, zऔर वे अनुमति अंकों के साथ प्रदर्शनीय नहीं कर रहे हैं, तो मैं का प्रतिनिधित्व करने की कोशिश x*256*256+y*256+zके बजाय।)

संभवतः बड़े समूहों का उपयोग करके कार्यक्रम को थोड़ा कम किया जा सकता है। मैं प्रति नंबर 3 बाइट्स नहीं गया।


1
@DigitalTrauma समस्या के बयान के अंत में बोनस था ।

हा! मैंने यह खो दिया! अति उत्कृष्ट! +1
डिजिटल ट्रॉमा

क्या आप इसे समझा सकते हैं? और क्या कोई जगह है जिसे हम चला सकते हैं?
केल्विन के शौक

4
एक जगह जिसे आप चला सकते हैं? डीसी कुछ मूर्खतापूर्ण भाषा नहीं है जिसे हार्ड-टू-रीड प्रोग्राम बनाने के लिए डिज़ाइन किया गया है, यह एक गंभीर कैलकुलेटर है। इसे किसी भी यूनिक्स मशीन (या साइबरविन) पर चलाएं। en.wikipedia.org/wiki/Dc_(computer_program)

@ केल्विन के शौक यदि आपके पास किसी भी लिनक्स या यूनिक्स मशीन (ओएसएक्स सहित) के बारे में है, तो बस एक पाठ फ़ाइल के रूप में सहेजें जैसे कि बोनस.डेक, फिर चलाएं dc bonus.dc। डीसी वहाँ से बाहर सबसे पुरानी भाषाओं में से एक है और शाब्दिक दशकों से * निक्स में एक स्थायी स्थिरता है। यह अच्छी तरह से ज्ञात नहीं है, शायद अपने आर्कन के कारण और बहुत ही पठनीय आरपीएन सिंटैक्स के कारण नहीं। हालांकि , कुछ कोड-गोल्फ चुनौतियों के लिए महान ;-)
डिजिटल ट्रामा

12

बैश + कोरुटिल्स, 56 बाइट्स

tr \(-y \!-r<<<'*+,-7;=?GHIKVWXYhiklnvwx'
tr C-F 7-:<<<E

जैसा कि भाग्य होता है, पवित्र पात्रों के 7 से अस्सी मूल्य को जोड़ने से सभी अपवित्र वर्ण ("9" के अपवाद के साथ) मिलते हैं। तो हम इस परिवर्तन को उल्टा करते हैं, फिर "9" प्राप्त करने के लिए एक समान परिवर्तन ("ई" से 12 घटाएं)।

आउटपुट:

#$%&0468@ABDOPQRabdegopq
9

7
मुझे पसंद है कि कैसे पहली पंक्ति वर्णों के एक समूह से 7 घटाती है, और इसमें -7विराम चिह्नों के बीच एक विशिष्ट रूप से प्रदर्शित होता है, और उन 2 तथ्यों का एक दूसरे से कोई लेना-देना नहीं है।

@ WumpusQ.Wumbley मैंने यह भी नहीं देखा था कि :)
डिजिटल ट्रॉमा

6

पर्ल - 49 बाइट्स

symlink".",':=<?)-/! YX[]VIHKx{}|~vih'^chr(25)x25

यह हॉवर्ड के समाधान का एक पर्ल संस्करण है। 25 के साथ स्ट्रिंग XORing। आउटपुट नाम के साथ एक फ़ाइल है #$%&04689@ABDOPQRabdegopq। मुझे उपयोग करने का विचार symlinkऔर फ़ाइल नाम आउटपुट स्वरूप के रूप में मिला क्योंकि बाकी सब कुछ प्रतिबंधित है।

यहाँ एक और पर्ल समाधान है जिसके साथ मैं आया था। यह शायद बहुत सुधार किया जा सकता है और यह बहुत लंबा है, इसलिए मैं अभी के लिए एक पठनीय प्रारूप में जा रहा हूं।

until(y/1/1/>32){s//1/}
until(y/1/1/>125+1){
    if(chr(y/1/1/)!~/[!"'()*+,-.\/12357:;<=>?CEFGHIJKLMNSTUVWXYZ[\\\]^_`cfhijklmnrstuvwxyz{|}~]/) {
        symlink".",chr y/1/1/;
    }
    s/^/1/
}

यह एक कई फाइलों को आउटपुट करता है, प्रत्येक का नाम वर्णों में से एक है। मैं समझ नहीं पा रहा था कि किसी वर्जित चरित्र का उपयोग किए बिना तार को कैसे जोड़ा जाए।

for, while, map, say, print, eval, s///e, और किसी भी चर नाम (चर के साथ शुरू नहीं किया जा सकता @या $पर्ल में) जो इस मुश्किल बना दिया।

उम्मीद है कि फ़ाइल नाम एक आउटपुट प्रारूप के रूप में ठीक हैं क्योंकि मुझे पूरा यकीन है कि आउटपुट जानकारी का हर दूसरा तरीका प्रतिबंधित पात्रों में से एक का उपयोग करता है।


मैं आपको रचनात्मकता के लिए एक +1 देने जा रहा हूं! कोड का बहुत चालाक उपयोग!
वेलेवेस्ट

मुझे पता है कि यह बहुत पुराना है, लेकिन आउटपुट को स्क्रीन पर प्रिंट करना और -pध्वज का उपयोग करके कुछ बाइट्स को सहेजना संभव है और *_=\(... ): इसे ऑनलाइन आज़माएं!
डोम हेस्टिंग्स

@DomHastings शांत! मुझे लगता है कि -pझंडे पर प्रतिबंध लगा दिया जाएगा क्योंकि pइसमें छेद है।
hmatt1

5

MATLAB, 36 बाइट्स

SO CLOSE .... वर्तमान विजेता (isaacg) से केवल 1 बाइट अधिक! जो, आगे के निरीक्षण पर, पहले से ही मैंने क्या करने के लिए निर्धारित किया था। खैर, पहिए को फिर से खड़ा करने में कोई बुराई नहीं ...

मुझे पता है कि यह एक पुरानी चुनौती है, लेकिन मुझे केवल इस बात का एहसास है कि इसके बाद मुझे इसमें दिलचस्पी हुई।

['*+,-7;=?GHIKVWXYhiklnvwx'-7,57,'']

अगर केवल मैं MATLAB को समझ सकता हूं कि मुझे एक अलग ''... सुझाव, किसी के बिना एक स्ट्रिंग चाहिए ?


4

ब्रेनफक 303 275

++++++++[>+>++>+++>++++>+++++>++++++>+++++++>++++++++>+++++++++>++++++++++>+++++++++++>++++++++++++>+++++++++++++>++++++++++++++>+++++++++++++++>++++++++++++++++<<<<<<<<<<<<<<<<-]>>>>+++.--->----.+.+.++>.>----.++.++.+.->.+.+.-->----.++++>-.+.+.+.-->>+.+.-->----.+.++.+>-.+.+.

ब्रेनफक, परम अपवित्र गूढ़ भाषा (व्हॉट्सएप के अलावा);)


1
कृपया पुराने टुकड़े हटाएं, हड़ताल न करें।
ईसैक

2
मैं देख रहा हूँ कि आपने अपने कोड स्निपेट्स के लिए उद्धरण चीज़ों (असली नाम नहीं जानते) का इस्तेमाल किया। अपने कोड का चयन करना आसान हो सकता है और Ctrl+ K:)
Teun Pronk

@ आइसाकग डन। TeunPronk, किया!
वैल्ली वेस्ट

6
या सिर्फ 4 या दो बार स्पेसबार को हिट करें। @TeunPronk यह? `यह एक बैकटिक है। (इसके अलावा, एक गंभीर लहजे में कहा जाता है, हालांकि " बोली थिंगी " मेरे लिए एक नया एक है: पी)
दरवाज़े

1
@Doorknob तब हम दोनों ने आज कुछ सीखा है हालाँकि जो आपने सीखा है वह किसी भी तरह गलत है: P
Teun Pronk

4

जेएस - 196 - यह कोशिश करो

h=(c=!1+[])[1];i=c[2*2];j=(f=[]+{})[1];this[i+'v'+h+'l'](h+'l'+i+'rt('+h+'t'+j+f[2]+'("Iy\x51lJj\\x'+2*2+'1\\x3'+~-1+'Nj\\x'+2*3+'75\x51EFC\x52E\\x3'+3*3+'\x51UVJhYm\x52lZ2\\x3'+3*3+'wc\x51=="))')

1
गोश, यह पागल है। ऐसा लगता है कि Js सबसे
अपमानजनक

अपमानजनक हाँ, लेकिन यह मेरी प्रविष्टि की तुलना में एक मात्र स्पेक है ... क्षमा करें @bebe लेकिन मैं बाहर हूँ-जेएस आप इस समय होगा ...
WallyWest

1
@ मैं युद्ध की घोषणा करता हूं।
बेबे

1
217 : h=1-1;j=3+3;k='\\x';m=!i+k;c=m[1];f=m[i=2+2];l=k+3;n=k+j;r=k+i;this[f+'v'+c+'l'](c+'l'+f+'rt("\\x23\\x2'+i+k+25+k+2+j+l+h+l+i+l+j+l+2*i+l+3*3+r+h+r+1+r+2+r+i+r+'f\\x5'+h+k+51+k+52+c+n+2+n+i+f+n+7+n+'f\\x7'+h+k+'71")')- पहले प्रयोग पर घोषित l, संक्षिप्त, संक्षिप्त m, iबार-बार पैटर्न के लिए कुछ अतिरिक्त संस्करण बनाए गए (आप संभवतः आउटपुट किए गए वर्णों के क्रम को बदलकर इसे सुधार सकते हैं, लेकिन यह मेरे धैर्य से परे है: पी)।
अलकनजा

2

GolfScript, 89 वर्ण

71 22+,{33+}/]''+'!"\'()*+,-./12357:;<=>?CEFGHIJKLMNSTUVWXYZ[\]^_`cfhijklmnrstuvwxyz{|}'-

बस सभी ASCII वर्णों की एक सरणी बनाता है और उनसे गैर- "पवित्र" वर्णों को घटाता है।

71 22+,  # Builds array of 0..93
{33+}/]  # Converts to 33..126
''+      # Convert ASCII codes to string
'stuff'- # Subtracts "stuff" (the non-holed characters) from the string

2

Befunge 98 - 69 बाइट्स

"()+ijWI=*">:5j2 ,-5_"157:h">:5j2 ,-1_"=>?LMN^_lmn">:5j2 ,+3_"?"1+s <

इसे 3 भागों में करता है। एक जहाँ अपवित्र चरित्र मान होली वाले चरित्र से भिन्न होते हैं 5. फिर वे जो 1 से भिन्न होते हैं, और अंत में अपवित्र वर्णों की एक सूची होती है जो कि होली वाले वर्णों से 3 भिन्न होती है। Befunge में समाप्ति कार्यक्रम निर्देश "@" (चार मूल्य 64) है, इसलिए अंत में मैं लोड करता हूं "?" (char value 63) 1 जोड़ें फिर उस कोड को निर्देश 's' के साथ रखें।

मैं शायद तीनों को एकजुट करके इसे और अधिक गोल्फ बना सकता था

>:5j2 ,(differ value)_

अनुभाग, लेकिन शायद ज्यादा नहीं।


2

जावास्क्रिप्ट २४० २२ 22

शुरुआती पेशी:

z=(!1+"")[1];y=(!!1+"")[3];x={}+"";w=x[1];v=x[2];u=z+"t"+w+v;1[_="c\157nstruct\157r"][_](z+'l'+y+'rt('+u+'("Iy\x51lJj"+'+(t=u+'("\x51\x51==")')+'+'+u+'("M"+'+t+'+"==")+"Nj"+'+u+'("Zw==")+"5\x51EFC\x52E\71\x51UVJhYm\x52lZ2\71wc\x51=="))')()

अब, यह एक शानदार शुरुआत है, यहां बताया गया है कि यह कैसे टूट जाता है ...

z=(!1+"")[1];        // assigns "a" to z, !1+"" === "false"
y=(!!1+"")[3];       // assigns "e" to y, !!1 === "true"
x={}+"";             // assigns "[object Object]" to x
w=x[1];v=x[2]        // assigns "o" to w, and "b" to v
u=z+"t"+w+v;         // creates the mystical "atob" command, yes, I'm gonna use it!
1[_="c\157nstruct\157r"][_] // sets up the primitive to a number object... this acts similar to the "window" primitive object so that I can play off functions...
z+'l'+y+'rt(         // starts creating an alert call
'+u+'("Iy\x51lJj"+'+(t=u+'("\x51\x51==")')+'+'+u+'("M"+'+t+'+"==")+"Nj"+'+u+'("Zw==")+"5\x51EFC\x52E\71\x51UVJhYm\x52lZ2\71wc\x51=="))')()
// Above line abuses atob command with a couple of nested instances of the command, also using hex and octal equivalents of characters

और फिर मैंने सोचा ... "एक सरल तरीका होना चाहिए ..." और वहाँ है ...

संशोधित सबमिशन: z=(!1+"")[1];y=(!!1+"")[3];x={}+"";w=x[1];v=x[2];u=z+"t"+w+v;this[y+"v"+z+"l"](z+'l'+y+'rt('+u+'("Iy\x51lJj"+'+(t=u+'("\x51\x51==")')+'+'+u+'("M"+'+t+'+"==")+"Nj"+'+u+'("Zw==")+"5\x51EFC\x52E\71\x51UVJhYm\x52lZ2\71wc\x51=="))')

देखकर मैं उपयोग कर सकते हैं eval (यह piecing, @bebe से प्रेरणा द्वारा, जो का उपयोग कर की तुलना में बहुत तेज है constructorएक के constructorएक के number...) मैं इसे 228 करने के लिए drilled नीचे ... मुझे पता है यह इस विशेष गोल्फ चैलेंज जीत नहीं सकता है , लेकिन यह सिर्फ दिखाने का मेरा तरीका है कि आप जावास्क्रिप्ट का कितना दुरुपयोग कर सकते हैं, और अभी भी वांछित परिणाम प्राप्त कर सकते हैं ...


2

मुख्य - अनिद्रा , 50

FFy~~jF~y<={*n<<ztf>={.f=(tHL~k<yf={*n>Lj(FunLn<j~

यह आउटपुट:

abdegopq04689@ABDOPQR#$%&

बोनस - अनिद्रा, 268

ogeeoddp@poe@ggep@oe@opge@gee@%d@p@gqeo@p@ge@e9de49ed9e4dppe@%e@geee@ge@p%ee@%e@dp@%ep@%ee@%d@%eeee@%e@%ee@%e@geee@%e@gee@ggopop@peo@ggep@p@ge@ggeep@ge@gee@%e@geee@ge@gee@ge@ppoep@%ee@%edep@gepe@ge@%ee@%e@geee@ge@%ee@%%eeoe@ge@pep@%gep@p@%e@%%eep@%e@gee@e%e@oe@%gep@p@

यह आउटपुट:

!"'()*+,-./12357:;<=>?CEFGHIJKLMNSTUVWXYZ[\]^_`cfhijklmnrstuvwxyz{|}~

मुझे लगता है कि आउटपुट को फिर से व्यवस्थित करने पर कार्यक्रम की लंबाई को कम करना संभव है, लेकिन मुझे ऐसा करने के लिए अपने खोज कार्यक्रम को संशोधित करने की आवश्यकता है।

बस मामले को एक और भाषा दिखाने के लिए जो प्रतिबंधित संख्या में वर्णों के साथ काम करने में सक्षम है। वैसे, यह स्रोत में केवल 3 अद्वितीय वर्णों के साथ किसी भी आउटपुट के बारे में लिख सकता है।

वर्तमान में, यह एकमात्र भाषा है जो सभी मौजूदा उत्तरों के बीच मुख्य चुनौती और बोनस दोनों कर सकती है।

अनिद्रा दुभाषिया


1

Befunge 98 - 46 बाइट्स

इसहाक की पायथ प्रविष्टि का Befunge-ified संस्करण:

"xwvnlkihYXWVKIHG?=;7-,+*">:5j2 ,-7_"?"1+:,s <

1

जाप , 33 बाइट्स

7+2+"*+,-7;=?GHIKVWXYhiklnvwx"c-7

इसे ऑनलाइन आज़माएं!

Isaacg के Pyth सबमिशन के रूप में समान एल्गोरिथ्म , बस Japt में छोटा होता है।

यह काम किस प्रकार करता है

7+2+"*+,-7;=?GHIKVWXYhiklnvwx"c-7

7+2           Obviously the number 9
    "..."c-7  Apply -7 on each char's charcode of this string
   +          String concatenation

हां, यह JS है, जो सबसे अपमानजनक भाषाओं में से एक है , बस छोटी है (और आपको इसकी आवश्यकता नहीं है alertया console.logयहाँ नहीं है)।

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