घड़ी के आसपास रॉक


46

यथासंभव कुछ यूनिकोड वर्णों में, निम्नलिखित (144 वर्ण) प्रिंट करें:

1, 2, 3 o'clock, 4 o'clock rock,
5, 6, 7 o'clock, 8 o'clock rock,
9, 10, 11 o'clock, 12 o'clock rock,
We're gonna rock around the clock tonight.

अंक को छोड़कर आपको अपने कोड में किसी भी संख्या का उपयोग नहीं करना चाहिए 1


1
पहली 3 पंक्तियों के अंत में रिक्त स्थान हैं, क्या वे गणना करते हैं?
aditsu

@aditsu: ये संपादन के कारण होते हैं, क्योंकि m.buettner एक कोड ब्लॉक में वापस संपादन करते समय उन्हें निकालना भूल गया था। मैं इसमें संशोधन करूंगा, लेकिन संपादन बहुत छोटा माना जाता है।
12 सितंबर

1
मैंने उन्हें अब हटा दिया
aditsu

4
कई उत्तर उपयोग करते हैं 11। अनुदेश मतलब यह है कि आप केवल उपयोग कर सकते हैं नंबर 1 या अंकों 1?
mfvonh

10
@ mfvonh मैंने कहा आप उपयोग कर सकते हैं 1। मैंने यह निर्दिष्ट नहीं किया कि कितनी बार, इसलिए लोगों ने जो प्रयोग किया है 11वह एक चतुर खामियाजा है, और मैं इसके लिए बिल्कुल तैयार हूं।
रयबो १११

जवाबों:


48

जावास्क्रिप्ट - 140 132

k=1,s=", ",t=" o'clock",x="";while(k<11)x+=k+++s+k+++s+k+++t+s+k+++t+" rock,\n";alert(x+"We're gonna rock around the clock tonight.")

तथ्य यह है कि 11 को दो 1 में से बनाया गया है मुझे उन नियमों को पारित करने दें जो मुझे लगता है।

व्याख्या

K +++ s, (k ++) + s के बराबर है, इसलिए यह k को पहले x में जोड़ता है, फिर k को बढ़ाता है और फिर यह s को x में जोड़ता है। अंतिम वाक्य जोड़ने से पहले यह प्रक्रिया तीन बार की जाएगी।


तुम क्यों करते हैं {} ? यह कुछ समय के लिए आवश्यक नहीं है, आपके पास केवल 1 निर्देश है। लेकिन जैसा कि आपको उपयोग करना होगा ";" आप केवल 1 चार्ट जीतेंगे। ^ ^
एंटोनी एस्टेव

3
क्या करता k+++sहै? यह है (k++) + sया k + (++s)या (k++) + (++s)?
१५

31
इस बकवास के लिए +1:x+=k+++s+k+++s+k+++t+s+k+++t+u
क्रंचर

2
जेएस में @trlkly आमतौर पर गोल्फिंग आपको एक आउटपुट स्टेटमेंट का उपयोग करना पड़ता है और इससे alertछोटा होता है console.log। कंसोल में अंतिम गणना के ऑटो डिस्प्ले का उपयोग करना धोखा देने जैसा है।
edc65

15
क्या आप सुनिश्चित हैं कि ब्रेनफॉक नहीं है?
माइकल हैम्पटन

37

C # - 186

सर्वश्रेष्ठ गोल्फ भाषा या सर्वश्रेष्ठ गोल्फ भाषा?

class P{static void Main(){var s="";for(int i=1;i<11;)s+=i+++", "+i+++", "+i+++" o'clock, "+i+++" o'clock rock,\n";System.Console.Write(s+"We're gonna rock around the clock tonight.");}}

मुझे आश्चर्य है कि इसे इतने वोट क्यों मिले। गैर-गोल्फ-फ्रेंडली-भाषा प्रविष्टियों को लोग पसंद करते हैं, शायद
विलियम बारबोसा

7
उसने मुझे C ++ में करने के लिए प्रेरित किया, इसलिए उसे एक वोट मिला। असली पुरुष (tm) कोड गोल्फ के लिए अभ्यस्त व्याख्या की गई भाषाओं का उपयोग नहीं करते हैं!
डैरेन

आपको वास्तव में i++ +बिट्स में रिक्त स्थान की आवश्यकता नहीं है
DLHh

मैंने इसे dotnetfiddle पर लिखा था और यह रिक्त स्थान के बिना संकलन नहीं किया था। इसे इंगित करने के लिए धन्यवाद।
विलियम बारबोसा

आप एक जोड़े को और अधिक दाढ़ी कर सकते हैं WriteLine-> Write, और \nस्ट्रिंग के अंत में एक शाब्दिक का उपयोग कर सकते हैं ।
अल्कोंजा

27

ब्रेनफक (1574)

एक गंभीर प्रस्तुतिकरण नहीं है, लेकिन नियमों का पालन करता है।

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

यहां परीक्षण किया जा सकता है


12
ब्रेनफक जवाब हमेशा सम्मान के पात्र हैं।
छत्र

1
शायद हमें उसे "सबसे लंबा जवाब" पुरस्कार देना चाहिए? #RESPECT
जेमी

23

रूबी, 100

printf"%i, %i#{", %i o'clock"*r=-~1} rock,
"*-~r+"We're gonna rock around the clock tonight.",*1..$$

4
आप कुछ अन्य वर्णों को s="%i, %i#{", %i o'clock"*-~1} rock,\n"( \nशाब्दिक लाइनब्रेक के साथ प्रतिस्थापित ) सहेज सकते हैं । महान विचार का उपयोग करने के लिए $$!
वेंटरो

3
मेरी पिछली टिप्पणी पर विस्तार: यदि आप r=-~1इनलाइन असाइन करते हैं , तो आप "..."*-~rइसके बजाय उपयोग कर सकते हैं s+s+s, जिससे आप असाइनमेंट को छोड़ सकते हैं s
वेंटरो जूल

बहुत अच्छा, वे संपादन करेंगे।
हिस्टोक्रैट

18

पर्ल 123

$s="*, *, * o'(, * o'( ),";print"$s
$s
$s
We're gonna ) around the ( tonight."=~s![(*)]!(clock,rock)[1+1+1&ord$&]||++$i!reg

नियमित अभिव्यक्ति मेल खाती है (, )और *। मैंने इस तथ्य का उपयोग किया कि एएससीआईआई का कोड (40 है, )41 का है और *42 है।

rनियमित अभिव्यक्ति का ध्वज "स्थान प्रतिस्थापन में सक्षम करता है" और eध्वज कोड मूल्यांकन ( x.replace(/.../, function(m){...})जावास्क्रिप्ट में समान ) को सक्षम करता है।

(clock,rock)दो "नंगे शब्दों" की एक सरणी है। $&नियमित अभिव्यक्ति का वर्तमान मैच है और ord$&क्या यह ASCII मूल्य है।

3 या 1+1+1ASCII मानों से मास्क अब 0, 1 और 2 हैं, इसलिए मैं उन्हें संबंधित सरणी तत्व को पुनः प्राप्त करने के लिए उपयोग कर सकता हूं। जैसा कि 2 सरणी से बाहर है, "शॉर्ट सर्किट" ऑपरेटर ||मूल्यांकन करता है ++$i। पहले मैच $iमें undefइतना इन्क्रीमेंट हो रहा है कि मुझे 1 मिल रहा है, फिर 2 और इतने पर ...

सरल शब्दों में। यह "घड़ी" और "रॉक" के साथ *, वर्तमान घटना के साथ बदल देता है ।()


1
कर देता है। नहीं। कंप्यूट। कृपया स्पष्टीकरण दें?

1
@ TheRare स्पष्टीकरण जोड़ा गया;)
core1024

6
यह काला जादू है। +1
जेक

इस तरह की चीज़ पर्ल के लिए बनाई गई थी, यह बहुत अच्छा है।
छत्र

16

बैश + कोरुटिल्स, 120 एएससीआईआई, 92 यूनिकोड

ASCII:

c=clock
f(){ echo $[++i], $[++i], $[++i] o\'$c, $[++i] o\'$c rock,;}
f
f
f
echo We\'re gonna rock around the $c tonight.

यूनिकोड:

iconv -t unicode<<<挊挽潬正昻⤨⁻捥潨␠⭛椫ⱝ␠⭛椫ⱝ␠⭛椫⁝屯␧Ᵽ␠⭛椫⁝屯␧⁣潲正㬬㭽㭦㭦㭦捥潨圠履爧⁥潧湮⁡潲正愠潲湵⁤桴⁥挤琠湯杩瑨ਮ|sed 1d|bash

बेस 64 एनकोडेड यूनिकोड संस्करण (यदि यूनिकोड रेंडरिंग गड़बड़ हो जाए तो):

aWNvbnYgLXQgdW5pY29kZTw8POaMiuaMvea9rOato+aYiuKkqOKBu+aNpea9qOKQoOKtm+akq+Kx
neKQoOKtm+akq+KxneKQoOKtm+akq+KBneWxr+KQp+Kxo+KQoOKtm+akq+KBneWxr+KQp+KBo+a9
suato+OsrOCpveCppuCppuCppuaNpea9qOWcoOWxpeeIp+KBpea9p+a5ruKBoea9suato+aEoOa9
sua5teKBpOahtOKBpeaMpOeQoOa5r+adqeeRqOCornxzZWQgMWR8YmFzaAo=

2
120, फ़ंक्शन घोषणा के समापन ब्रेस के बाद अर्धविराम के रूप में आवश्यक नहीं है।
मैनेटवर्क

@manatwork ओप्स अच्छा कैच पकड़ते हैं - मुझे नहीं पता कि इसमें कोई कैसे फंस गया। धन्यवाद!
डिजिटल ट्रामा

1
मैं अब विंडोज पर हूं, लेकिन evalपाइपिंग bashया करने के बजाय उपयोग करने का क्या कारण है sh?
Core1024

@ core1024 मेरे लिए संभावना को भूलने के अलावा कोई कारण नहीं;; टिप के लिए धन्यवाद!
डिजिटल ट्रॉमा

1
उफ़, $rएस की गिनती नहीं की !
शहबाज

13

ब्रेनफक, 1299

बेलुवुरघ । वह भयानक था। मुझे नहीं पता कि मैंने ऐसा क्यों किया, यह शुरुआत में काफी आसान लग रहा था। पहली और शायद आखिरी ब्रेनफॉक स्क्रिप्ट। इसे यहाँ आज़माएँ।

एक स्वचालित कोड जनरेटर से कुछ मदद से , मैं एक स्क्रिप्ट लिखने में सक्षम था जो खरोंच से प्रत्येक को उत्पन्न करने के बजाय अधिकांश पात्रों का पुन: उपयोग करता था। यह केवल 275 वर्णों से छोटा है जो अपने आप उत्पन्न होता है, यहाँ पोस्ट किया गया है

आउटपुट न्यूलाइन-टर्मिनेटेड नहीं है।

मैं बाद में थोड़ा स्पष्टीकरण दे सकता हूं। अनिवार्य रूप से, किसी भी लंबी लाइन है जो की तरह कुछ नहीं है >>>>>>>या <<<<<<<या >>.>>.>>.>>.एक चरित्र या उनमें से एक श्रृंखला उत्पन्न करता है।

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

10

लुआ - 217 164 154 151 149 143

बदले में एक लूप का उपयोग करने के लिए पुराने को संशोधित किया गया, पात्रों के नाव-लोड को बचाता है। TeunPronk की मदद के लिए मुझे एक और 10 पात्रों को शेव करने के लिए और एक और 3 पात्रों को शेविंग करने के लिए WilliamBarbosa को धन्यवाद। चर का उपयोग करके 2 और वर्णों को बचाया जा सकता है kr=" rock,"एक बार उपयोग होने के बाद से चर को समाप्त करके 6 और वर्ण सहेजे जाते हैं ।

o=" o'clock"c=", "w=io.write k=1+1 for i=1,11,k+k do w(i,c,i+1,c,i+k,o,c,i+k+1,o," rock,\n")end w("We're gonna rock around the clock tonight.")

Ungolfed,

o=" o'clock"
c=", "
w=io.write
k=1+1
for i=1,11,k+k do 
   w(i,c,i+1,c,i+k,o,c,i+k+1,o," rock,\n")
end
w("We're gonna rock around the clock tonight.")

मुझे आश्चर्य है कि अगर यह अगर आप के बजाय एक पाश का उपयोग कम हो सकता है jऔर k
टेउन प्रुन

@TeunPronk: हाहा, मैं अभी बदल रहा था कि आपकी टिप्पणी ने मुझे विचलित कर दिया
काइल कानोस

1
आप इसे 157 पर ला सकते हैं। आपको हर तीसरे नंबर के बाद अल्पविराम की आवश्यकता नहीं है। के अंतरिक्ष सामने रखो O, निकालने Oसे R, में एक अंतरिक्ष जगह Rऔर की जगह Rद्वारा O,Rअपने में io.write:)
टुन PRONK

1
@TeunPronk: अपडेट किया गया। आपकी सहायताके लिए धन्यवाद!
काइल कानोस

1
आप io.writeएक चर ( f=io.write) में स्टोर कर सकते हैं और इसे और भी कम कर सकते हैं
विलियम बारबोसा

8

सीजेएम - 90 एएससीआईआई / 54 यूनिकोड

ASCII:

{{T):T}:F~", ":CFCF" o'clock":OCFO" rock,
"}Z*"We're gonna rock around the clock tonight."

यूनिकोड:

"ξ漰㠬༳ᆧᶃ㸩씪咦⏚騤䖫퍃᰽薂ᴤਥ궋씻㱗㽫Ƶꐥ勋䎔䃱魠ꝯ朐酠礢璿狮꓈执낦덋觫ᥛ琚"GZ)#bBC*b:c~

उन्हें http://cjam.aditsu.net/ पर आज़माएं


आपका यूनिको ... "यह उत्तर संपादित किया गया है।" ओह कोई बात नहीं।
१२:१४ बजे १२:१४

8

पायथन (123)

print((1+1+1)*"%i, %i, %i o'clock, %i o'clock rock,\n"%tuple(range(1,11+1+1))+"We're gonna rock around the clock tonight.")

PYG (112)

P((1+1+1)*"%i, %i, %i o'clock, %i o'clock rock,\n"%T(R(1,11+1+1))+"We're gonna rock around the clock tonight.")

7

ब्रेनफक - 680

इसे यहाँ परखें : ideone.com/Wi9ftB

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

जैसा कि मैंने वादा किया था, यहाँ एक बेहतर संस्करण है। मेरा दिमाग ऐसा लगता है .. ओह, तो यह है कि जहां से नाम आता है।

स्पष्टीकरण: (क्योंकि यह अकल्पनीय है और मैं यह नहीं भूलना चाहता कि यह कैसे काम करता है)

सबसे पहले आपको इस चुनौती के लिए सबसे अच्छा डेटा लेआउट चुनना होगा। मेरे द्वारा लाया गया

-4 outmost loop -3 newline char -2 space -1 numbers 1 lowercase #1 2 lowercase #2 3 comma, apostrophe, period 4 condition (outmost loop < 3) 5 inner loop 6 second inner loop

हमें यह विश्वास करना होगा कि यह तब तक इष्टतम है जब तक कि बहुत अधिक बदलाव नहीं होंगे (जो कि आपको लेआउट को फिर से व्यवस्थित करना होगा)

उसके बाद मैंने नई लाइन, संख्या, दो लोअरकेस अक्षर और अल्पविराम के लिए शुरुआती मान सेट करने के लिए 4x9x3 लूप का उपयोग किया। (सभी छोटे एससीआई कोडों को 4x9 = 36 मिला और दो लोअरकेस अक्षर को 4x9x3 = 108 मिला, फिर मैंने कुछ जोड़ा और उनका वास्तविक मूल्य प्राप्त किया।

जब प्रीसेट किया जाता है, तो कोड सबसे बाहरी लूप में प्रवेश करता है जो 3 बार चक्र करता है। मैं इसे pseudocode द्वारा समझाता हूं।

for 3 to 1 where i = numbers
    print '++i, '
    while inner_loop != 0              # this is true after the first loop
        while second_inner_loop != 0   # and this is true after the second
            print '10, 11 o'clock, 12' # prints the difference
            condition = 0              # it prevents the printing below
        second_inner_loop += 1
    inner_loop += 1
    while condition != 0
        print '++i, ++i o'clock, ++i'
    print ' o'clock rock,\n'

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

Address  Value  Pointer
     -4      0  <--
     -3     10
     -2     32
     -1     50
      1     99
      2    111
      3     44

इसलिए मैंने [-3] को [-1] में 4 बार डाला और 87 (डब्ल्यू) प्राप्त करने के लिए 3 को प्रतिस्थापित किया: >[>>++++<<-]>>---.
फिर इसे मिटा दें [-]
और [-2] को इस स्थान पर ले जाएं [-1] इसलिए स्थान लोअरकेस अक्षरों के करीब होगा।<[>+<-]

उसके बाद यह सिर्फ अक्षरों को प्रिंट करता है। निचला भाग # 1 निचले भाग 97-107 के लिए है और निचला भाग # 2 उपरोक्त क्षेत्र के लिए है।


2
+1 अन्य बीएफ उत्तरों की तुलना में 300 वर्ण छोटा होने के कारण
Durron597

मैं और भी कम जाने के बारे में सोच रहा था। स्थितियाँ एक सभ्य ट्यूटोरियल के बिना बनाने के लिए भयानक हैं (esolangs नीचे है), लेकिन यह ~ 200 चार्ट्स से कम हो सकता है
bebe

6

जावास्क्रिप्ट, 111 107 वर्ण, किसी भी संख्या का उपयोग किए बिना।

अपने ब्राउज़र के JS कंसोल में इन स्निपेट्स को निष्पादित करें:

107 ( http://xem.github.io/obfuscatweet/ और अन्य JS उत्तर से प्रेरित ):

eval(unescape(escape('𩡯𬠨𬰽𘠬𘀢𛁴🐢𘁯𙱣𫁯𨱫𘠬𪐽𮀽𙰧𞰫𚱩🀽𜐱𞱸𚰽𪐫𚰫𬰫𪐫𚰫𬰫𪐫𚰫𭀫𬰫𪐫𭀫𘠠𬡯𨱫𛁜𫠢𚐻𮀫𘡗𩐧𬡥𘁧𫱮𫡡𘁲𫱣𪰠𨑲𫱵𫡤𘁴𪁥𘁣𫁯𨱫𘁴𫱮𪑧𪁴𛠢').replace(/uD./g,'')))

111 (बस सभी स्ट्रिंग पैकिंग और चारों ओर से निष्कासन को हटाना):

unescape(escape('𜐬𘀲𛀠𜰠𫰧𨱬𫱣𪰬𘀴𘁯𙱣𫁯𨱫𘁲𫱣𪰬𒠵𛀠𝠬𘀷𘁯𙱣𫁯𨱫𛀠𞀠𫰧𨱬𫱣𪰠𬡯𨱫𛀊𞐬𘀱𜀬𘀱𜐠𫰧𨱬𫱣𪰬𘀱𜠠𫰧𨱬𫱣𪰠𬡯𨱫𛀊𥱥𙱲𩐠𩱯𫡮𨐠𬡯𨱫𘁡𬡯𭑮𩀠𭁨𩐠𨱬𫱣𪰠𭁯𫡩𩱨𭀮').replace(/uD./g,''))

4
किसी और को वहाँ एक कछुआ देखते हैं ...? डब्ल्यूटीएफ
डुनो

हे, हाँ, "बेतरतीब" यूनिकोड के पात्रों को जो कभी-कभी obfuscatweet द्वारा उत्पन्न होता है, इमोजी की ओर ले जाता है :)
xem

5

सी - 145 - मुझे कोशिश करो

main(i){i<11?main(i-~1+1,printf("%d, %d, %d o'clock, %d o'clock rock,\n"
,i++,i,i-~1,i-~1+1)):puts("We're gonna rock around the clock tonight.");}

सी - 172 - मेरी कोशिश करो

#define l ,__LINE__+~1
#define f ;printf("%d, %d, %d o'clock, %d o'clock rock,\n"
main(){f l
l
l
l)f
l
l
l
l)f
l
l
l
l);puts("We're gonna rock around the clock tonight.");}

1
मैं बहुत सी प्रोग्रामर नहीं हूँ, इसलिए मुझे माफ कर दो अगर मैं भोली हूँ, लेकिन तुम्हें #include <stdio.h>इस्तेमाल करने की ज़रूरत नहीं है printf?
काइल कानोस

1
डिफ़ॉल्ट पुस्तकालयों vc में स्रोत ++ और जीसीसी (से जुड़े होते हैं, इसलिए यदि आप कुछ खास जरूरत नहीं है, आप स्वतंत्र रूप से एक गोल्फ चुनौती टाइपिंग द्वारा शुरू कर सकते हैंmain(){...
Bebe

ओह समझा। यह अजीब है कि अगर यह डिफ़ॉल्ट रूप से स्वीकार किया जाता है, तो यह चेतावनी देता है (बस मेरे gcc और icc के साथ जांच की जाती है, कोई vc ++ परीक्षण के लिए नहीं)।
काइल कानोस

यह अनुक्रम बिंदु चेतावनी भी फैलाता है ...
bebe

@ केइल में फ़ाइलें शामिल हैं कि बाहरी कार्य कैसे काम करते हैं (रिटर्न प्रकार और पैरामीटर)। पुस्तकालयों को जोड़ने से कोई लेना देना नहीं है। एक मानक सी कंपाइलर किसी भी फ़ंक्शन (चेतावनियों के साथ) और रिटर्न मानों को जो भी पैरामीटर पसंद करता है, उसे अक्सर अनदेखा कर दिया जाता है, इसलिए यह वैसे भी काम करता है।
edc65

5

PHP - 125 129

संस्करण 1 (129)

$i;while($i<11)echo++$i.", ".++$i.", ".++$i." o'clock, ".++$i." o'clock rock,\n";echo"We're gonna rock around the clock tonight";

संस्करण 2 (125)

while($i++<11)echo"$i, ".++$i.", ".++$i." o'clock, ".++$i." o'clock rock,\n";echo"We're gonna rock around the clock tonight";

साफ संस्करण:

while($i++<11)
    echo "$i, ".++$i.", ".++$i." o'clock, ".++$i." o'clock rock,\n";
echo "We're gonna rock around the clock tonight";

5

पर्ल, 114 111 110 108

$s=", X o'clock";$_="X, X$s$s rock,
"x(1+1+1)."We're gonna rock around the clock tonight.";s/X/++$i/eg;print

110:

$s=", X o'clock";print(("X, X$s$s rock,
"x(1+1+1)."We're gonna rock around the clock tonight.")=~s/X/++$i/egr)

111:

print(("X, X, X o'clock, X o'clock rock,
"x(1+1+1)."We're gonna rock around the clock tonight.")=~s/X/++$i/egr)

114:

($s="X, X, X o'clock, X o'clock rock,
"x(1+1+1)."We're gonna rock around the clock tonight.")=~s/X/++$i/ge;print$s

4

सी ++ 261 203

#include<iostream>
#define x i++;
#define y std::cout<<
#define z y x y
void m(){for(int i=1;i<11;){z", ";z", ";z" o'clock, ";z" o'clock rock, "<<"\n";}y"We're gonna rock around the clock tonight.";}

मेरा पहला प्रयास संपादित; जब मैंने पहली बार इसका परीक्षण किया तो यह काम कर रहा था, लेकिन यह एक अस्थायी प्रतीत होता है; एक स्ट्रीम में पोस्ट-इन्क्रीमेंट "अपरिभाषित व्यवहार" है, और यह अजीब चीजें करता था (नीली स्क्रीनिंग विंडोज 7 सहित!) जब मैंने इसे फिर से चलाने की कोशिश की। मुझे लगता है कि std के बजाय प्रिंटफ का उपयोग करना: cout का उपयोग पोस्ट-इंक्रीमेंट के साथ एक छोटे प्रोग्राम को प्राप्त करने के लिए किया जा सकता है।

फिर से संपादित, लूप को फिर से लागू करके इसे 231 पर ले आया। अभी तक फिर से संपादित, अब 203 तक नीचे ... उन #defines लूपिंग संस्करण में सभी उपयोगी नहीं थे।

उन लोगों के लिए जो C ++ एक फंक्शन "m" को कैसे चला सकते हैं, एंट्री पॉइंट को किसी भी फंक्शन के रूप में केवल एक कंपाइलर ऑप्शन के साथ परिभाषित किया जा सकता है, जैसा कि सभी फंक को stdcall करने के लिए सेट किया जा सकता है; उपरोक्त संकलन करते समय मैंने दोनों स्विच का उपयोग किया। यदि आपको पुन: परिभाषित प्रविष्टि बिंदु पसंद नहीं है, तो मेरी वर्ण गणना में 3 जोड़ें।


आप कौन से कंपाइलर का उपयोग कर रहे हैं? gcc (4.7.1) मुझे मुख्य फ़ंक्शन को कॉल करने की अनुमति नहीं देता है m()। हालाँकि आप void5 वर्णों को छोड़ सकते हैं और सहेज सकते हैं (या यदि आप विधि का नाम रखते हैं तो 2 main)
Christoph Böhmwalder

कैसे पृथ्वी पर यह किसी भी upvotes मिला? सबसे पहले आपने 'm' नामक एक फ़ंक्शन लिखा, जो डिफ़ॉल्ट रूप से संकलित नहीं होगा, दूसरा हर संकलक रिवर्स ऑर्डर में घंटे दिखाता है। इसके लिए BIG करेक्शन की जरूरत है
bebe

1
@HackerCow मैं वी.एस.2013 को शून्य रिटर्न प्रकार परिभाषित किए बिना काम नहीं कर सकता; वहाँ एक संकलक स्विच है कि अनुमति देता है?
डैरेन

1
@bebe मैं अपने संपादन में मी () प्रवेश बिंदु समझाता हूं; जैसा कि आउटपुट घंटों के लिए रिवर्स ऑर्डर में प्रिंट किया जा रहा है, मैं कभी भी डुप्लिकेट करने में कामयाब नहीं हुआ, लेकिन मैंने इसे सही तरीके से प्रिंट करने के लिए प्राप्त करने का प्रबंधन किया (पहली बार मैंने इसे आज़माया), फिर सभी 1, 5 और 12 के रिटायर होने पर, फिर दूसरे पर यह ओएस दुर्घटनाग्रस्त हो गया। इसलिए, तकनीकी रूप से यह एक बार चला, लेकिन अपरिभाषित व्यवहार पर भरोसा करना शायद एक 'बुरा विचार' है, इसलिए मैंने इसे फिर से लिखा :)
डैरेन

1
@bebe मैं या तो शांत हूँ; किसी भी तरह से मैं C ++ के साथ किसी भी कोड गोल्फ पहेली को "जीतने" के लिए नहीं जा रहा हूं, इसलिए 3 वर्ण जोड़ना कोई बड़ी बात नहीं है। मैं मानता हूँ कि -D स्विच मैक्रो परिभाषाएँ धोखा दे रही होंगी, लेकिन बहुत अधिक किसी भी अन्य संकलक झंडे मेरे लिए वैध लगते हैं, क्योंकि वे भी आपके द्वारा लिंक किए गए थ्रेड में लोगों के लिए वैध लग रहे थे। सरल कंपाइलर स्विच से निचोड़ने का कोई भी लाभ वास्तव में C ++ और पायथन / बैश / पर्ल आदि के बीच खेल का मैदान नहीं होगा
डैरेन

4

स्विफ्ट - 136 134

var x=1
for;x<11;{print("\(x++), \(x++), \(x++) o'clock, \(x++) o'clock rock,\n")}
print("We're gonna rock around the clock tonight.")

3

जावा, 228

एक हार्डकोड समाधान शायद कम होता।

public static void main(String[] a){
        String s = "";
        int i=1,j=1;
        for(i--,j--;i<=11;){
            s += ++i + (j > 1 ? " o'clock rock, ":", ");
            if(j == "one".length()){
                j -= j;
                s +="\n";
            }else
                j++;
        }
        System.out.println(s+"We're gonna rock around the clock tonight");
}

3
+1 इस एहसास के लिए कि हार्ड-कोडिंग कम होगी।
काइल कानोस

1+1+19 अक्षरों से छोटा है "two".length()"। और String[] aआवश्यक है?
काइल कानोस

यह थोथा धोखा देने जैसा लगा, और हां, स्ट्रिंग [] एक आवश्यक है।
अंडरलेव्ड

यह धोखा नहीं है, कई लोगों ने इसका इस्तेमाल किया है: डी
काइल कानोस

3

बेफुज -98 ( 402) 268)

अब एक अनिश्चित काल!

".thginot kcolc eht dnuora kcor annog er'eW"a11+/a*1-> #;:,1+" ,",,:,1+" ,",,:,1+" ,kcolc'o "a1-k,:,1+a",kcor kcolc'o "ek,:a11+/a*b1111+++-+-#;_:,a-1+" ,",,:a111++-:*,,1+" ,",,:a111++-:*,,1+" ,kcolc'o "a1-k,:a111++-:*,,1+a",kcor kcolc'o "ek,:a11+/a*b1111+++-+$$$aa*k,@

1
पिछड़े पाठ के अनिश्चित बिट्स, ,,:,1+, a11+/a*b1111+++-+w:,, आवारा वर्ण कोड की मुख्य लाइन ... ठेठ Befunge नीचे। अधिकांश ऑनलाइन दुभाषियों को लाइन की लंबाई के साथ समस्या हो रही है (यह सीमा से अधिक है), क्या आपको एक के बारे में पता है जो बुरा नहीं है?

मुझे ऑनलाइन कोई भी Befunge-98 संकलक नहीं मिला, लेकिन आप pyfunge का उपयोग कर सकते हैं जो PyPI में उपलब्ध है।
वेनलन 531

3

ग्रूवी - 140 139 वर्ण

गोल्फ, विलियम बारबोसा के जवाब से प्रभावित :

s="ock"
i=1
f={->println "${i++}, ${i++}, ${i++} o'cl$s, ${i++} o'cl$s r$s,"}
f();f();f()
println "We're gonna r$s around the cl$s tonight"

Ungolfed:

s = "ock"
i = 1
f = { ->
    println "${i++}, ${i++}, ${i++} o'cl$s, ${i++} o'cl$s r$s,"}
}

f();f();f()

println "We're gonna r$s around the clock tonight"

2

गणितज्ञ - १५३

i=1;
StringReplace[
  StringJoin[
    Riffle[{s="X, X, X o'clock, X o'clock rock,",s,s},"\n"]]<>
    "\nWe're gonna rock around the clock tonight.","X":>ToString[i++]]

+1, मुझे लगता है कि यह सबसे अच्छी रणनीति है लेकिन यह छोटी हो सकती है

2

सी ++ 252

#define P(x) cout<<x
#define Q cout<<", "
#define N cout<<endl
#define C P(" o'clock")
#define R P(" rock")
#define F P(++i);Q;P(++i);Q;P(++i);C;Q;P(++i);C;R;N;
int i;
main()
{
    F F F
    P("We're gonna rock around the clock tonight.");
}

1
जब तक मेरा गणित चूसता है, तब तक आप 2 पात्रों P(", ")को Qबचाता है।
काइल कानोस

2
Nऔर Rकेवल एक बार दिखाई देते हैं: मैक्रो बनाने के बजाय उन्हें इनलाइन करना बेहतर होगा।

उपरोक्त टिप्पणियों का उपयोग करना और इसे 200 तक संघनित किया जा सकता है (यहां तक ​​कि मेरे कंपाइलर को शामिल और नाम स्थान के साथ भी):#include<iostream> #define P std::cout<<++i<< #define C" o'clock" #define F P", ";P", ";P C<<", ";P C<<" rock"<<std::endl; int i;main(){F F F std::cout<<"We're gonna rock around the clock tonight.";}
हेगन वॉन एटिजन

2

जावा (v2) - 250 241 232 वर्ण

यह एक पूर्ण चलने वाला कार्यक्रम है, जो विलियम बारबोसा के जवाब से प्रभावित है ।

golfed:

public class R{
static int o=1;
static String c(){return o+++", "+o+++", "+o+++" o'clock, "+o+++" o'clock rock,\n";}
public static void main (String[] a){System.out.println(c()+c()+c()+"We're gonna rock around the clock tonight");}}

Ungolfed:

public class R {
    static int o = 1;
    static String c() { 
        return o+++", "+o+++", "+o+++" o'clock, "+o+++" o'clock rock,\n";
    }

    public static void main (String[] a) {
        System.out.println(c()+c()+c()+"We're gonna rock around the clock tonight");
    }
}

2

ECMAScript6 - 136 135

अनुमत 1अंक का उपयोग भी नहीं करता है :

alert([,...a=[s=", ",s,(c=" o'clock")+s,c+" rock,\n"],...a,...a].map((x,i)=>i+x).join("")+"We're gonna rock around the clock tonight.")

फ़ायरफ़ॉक्स कंसोल में परीक्षण किया गया।


या 114 चेस का उपयोग कर xem.github.io/obfuscatweet ;)
xem

4
@xem, मुझे पता है कि यह कानून के पत्र के साथ फिट बैठता है, लेकिन मैं यूनिकोड संपीड़न (या किसी अन्य संकलक / जनरेटर) का प्रशंसक नहीं हूं। मेरे दिमाग में, गोल्फ कौशल की परीक्षा है और सभी कोड को हाथ से तैयार किया जाना चाहिए ... लेकिन यह सिर्फ मेरे लिए है।
अल्कोंजा

2

पॉवरशेल, 123 118 109

1,1,1|%{"$('',''," o'clock"," o'clock rock"|%{"$((++$a))$_,"})"}
"We're gonna rock around the clock tonight."

एक भयानक शुरुआत (167) के बाद मुझे कुछ ऐसे मुहावरों से छुटकारा मिला जिनकी मुझे आवश्यकता भी नहीं थी और कम से कम यह संदर्भ से कम हो गया।


2

हास्केल - 138 137 चरस

एक स्टैंडअलोन कार्यक्रम के रूप में:

r n=show n++s!!n
s=" o'clock rock,\n":c:c:" o'clock, ":s
c=", "
main=putStr$(r=<<)[1..11+1]++"We're gonna rock around the clock tonight."

संपादित करें: मेरे पास एक सहायक फ़ंक्शन ओ है जिसका उपयोग परिभाषित करने के लिए किया जाता है

s=o" rock,\n":c:c:o c:s;o=(" o'clock"++)

लेकिन यह 1 अतिरिक्त चरित्र की लागत का पता लगाता है। क्या कोई तरीका है कि "ओ'क्लॉक" / "रॉक" के सभी प्रकार को संकुचित करें?


2

जावास्क्रिप्ट, 140

a=", x o'clock",b="x, x"+a+a+" rock,\n",b+=b+=b+"We're gonna rock around the clock 
tonight.";for(i=1;i<=11+1;)b=b.replace("x",i++);alert(b)

मैं "x, x, x o'clock x olock रॉक, \ n ..." जैसे स्ट्रिंग बनाता हूं, फिर मैं "x" को संख्याओं के साथ बदल देता हूं।


1

PHP 150

11 सहित कोई संख्या नहीं, जो एक साथ दो 1 नहीं होगी, लेकिन संख्या मान ग्यारह।

function f(){static $i;echo++$i.", ".++$i.", ".++$i." o'clock, ".++$i." o'clock rock,\n";}f();f();f();echo"We're gonna rock around the clock tonight";

यह अनुगामी पूर्ण विराम को याद कर रहा है।
जॉय

1

पॉवरशेल, 156 140 136 136 129 127

for($i=1;$i-lt11){$i++,$i++,"$(($i++)) o'clock","$(($i++)) o'clock rock,"-join', '}"We're gonna rock around the clock tonight."

Ungolfed:

for($i = 1; $i -lt 11){
    $i++, $i++ , "$(($i++)) o'clock", "$(($i++)) o'clock rock," -join ', '
}
"We're gonna rock around the clock tonight." 

आप $i++,$i++,"$(($i++)) o'clock","$(($i++)) o'clock rock,"-join', 'लूप के भीतर उपयोग करके इसे 127 तक नीचे ला सकते हैं ।
जॉय

@ वास्तव में, सलाह के लिए धन्यवाद!
डार्कअजैक्स

1

कोबरा - 193

class P
    var i=1-1
    def main
        print[.f,.f,.f,"We're gonna rock around the clock tonight."].join("")
    def f as String
        return"[[.i+=1,.i+=1,.i+=1].join(", ")] o'clock, [.i+=1] o'clock rock,\n"
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.