डबल-टाइम डबल टाइम नहीं है


36

इस चुनौती के आधार पर

लय खेल में आसु! , कठिनाई संशोधक "डबल-टाइम" वास्तव में केवल 50% की गति बढ़ाता है।

आपका काम, एक प्रोग्राम है जो एक सकारात्मक आउटपुट लिखना है भी पूर्णांक (0 से अधिक), और जब प्रत्येक बाइट / चरित्र अपने स्रोत कोड में (अपनी पसंद है) दोहराया गया है, यह उत्पादन संख्या 1.5 से गुणा किया जाना चाहिए।

उदाहरण के लिए यदि आपका सोर्स कोड है ABCऔर वह 6 आउटपुट करता है, तो AABBCCआउटपुट 9 होना चाहिए।

मूल चुनौती के नियमों का पालन करना:

नियम

  • आपको एक पूर्ण कार्यक्रम बनाना चाहिए।
  • प्रारंभिक स्रोत कम से कम 1 बाइट लंबा होना चाहिए।
  • दोनों पूर्णांक आधार 10 में होने चाहिए (किसी अन्य आधार पर या वैज्ञानिक संकेतन के साथ उन्हें निषिद्ध करना)।
  • आपके प्रोग्राम को इनपुट (या अप्रयुक्त, खाली इनपुट) नहीं लेना चाहिए और किसी भी त्रुटि को नहीं फेंकना चाहिए (कंपाइलर चेतावनियों को त्रुटि नहीं माना जाता है)।
  • अनुगामी / अग्रणी स्थानों के साथ पूर्णांक आउटपुट की अनुमति है।
  • आप अपने स्रोत की प्रतियों के बीच एक नई पंक्ति नहीं मान सकते हैं।
  • यह , इसलिए प्रत्येक भाषा में सबसे कम बाइट्स जीतता है!
  • डिफ़ॉल्ट ढीले लागू होते हैं।

मुझे लगता है कि यह मूल चुनौती से बहुत कम तुच्छ होगा, लेकिन उम्मीद है कि हम कुछ रचनात्मक और अद्वितीय उत्तर देखेंगे!


@ फ़ेटलाइज़ write a program that outputs a positive even integerयस इट । प्रत्येक पूर्णांक में परिणाम के लिए हर संख्या को 1.5 से गुणा किया जा सकता है
स्किड्सदेव

यह मेरे लिए एक दुपट्टे की तरह लगता है।
आउटगॉल्फ जूल

@EriktheOutgolfer बहुत समान है, लेकिन मुझे यकीन है कि यह एक बहुत कठिन होने जा रहा है (जब तक कि मैं कुछ स्पष्ट याद नहीं कर रहा हूं)।
द लीथेलकोडर

9
दोहराव वाले चरित्र तुच्छ भाषाओं को अप्रमाणिक बना सकते हैं। मुझे आश्चर्य है कि अगर एकल-चरित्र-कमांड-स्टाइल या अभिव्यक्ति-आधारित भाषा में समाधान नहीं है।
कीउ गण

3
@ लॉथलॉकर शायद सबसे बड़ी बाधा है full program। डुप्लिकेट प्रोग्राम की कल्पना करना मुश्किल है, फिर भी एक मान्य प्रविष्टि बिंदु / फ़ंक्शन है।
कीउ गान

जवाबों:


22

पाइलॉन्स , 7 5 4 बाइट्स

टीआईओ पर एक यादृच्छिक भाषा का इस्तेमाल किया

46vt

स्पष्टीकरण:

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

46    # Stack is [4, 6]

v     # Reverse the stack [6, 4]

t     # take top of stack 4

दोगुनी:

4466   # Stack is [4, 4, 6, 6]

vv     # Reverse the stack twice so it's the same [4, 4, 6, 6]

tt     # take top of stack 6 and again which is 6 again

आधिकारिक बाइट के लिए 2 बाइट्स सहेजे गए

Veedrac के लिए धन्यवाद 1 बाइट्स बचाया


1
हे, के 4/6vtरूप में अच्छी तरह से काम करता है ...
आधिकारिक

18
मैं पूरी तरह से एक यादृच्छिक टीआईओ भाषा चुनने और एक चुनौती के लिए इसे सीखने की रणनीति का अनुमोदन करता हूं
स्काइड्सदेव

@officialaimm तुम सही हो, धन्यवाद।
LiefdeWen

1
4/6 <- 4 कुछ नहीं द्वारा विभाजित -> 4; और फिर 6. 44 // 66 <- 4 को 4 से विभाजित किया -> 1; कुछ नहीं से विभाजित -> कुछ भी नहीं; और फिर 6 और 6. शायद। हालांकि अच्छा किया।
वी। कोर्टोइस

1
क्या 46vtऐसा नहीं होगा ?
विड्रैक

21

जेली , 2 बाइट्स

!‘

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

स्पष्टीकरण:

!‘ Implicit 0
!  Factorial
 ‘ Increment

दोगुना संस्करण:

!!‘‘

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

स्पष्टीकरण:

!!‘‘ Implicit 0
!    Factorial
 !   Factorial
  ‘  Increment
   ‘ Increment

यदि आप इसे तीसरी बार करते हैं तो यह 3 -> 4 से होता है, 3-> 4.5 से नहीं ??
tuskiomi

@tuskiomi नहीं, क्योंकि ऐसा करने की उम्मीद नहीं है।
आउटगॉल्फ जूल

14

लिबरऑफिस कैल्क, 8 बाइट्स

=A2+3
19

इसे सेव करें *.csvऔर लिबर ऑफिस Calc में खोलें। आपको A1 में 22 मिलेंगे।


उन्हें डबल करें:

==AA22++33

1199

आपको A1 में 33 मिलेंगे


1
चतुर भाषा पसंद!
ग्यूसेप

11

MATL , 3 बाइट्स

TnQ

इसे ऑनलाइन आज़माएं! या दोगुना संस्करण

व्याख्या

MATL में एक स्केलर वैल्यू (संख्या, चार, लॉजिकल वैल्यू) 1 × 1 एरी के समान होती है, जिसमें वैल्यू होती है।

सामान्य संस्करण:

T    % Push true
n    % Number of elements of true: gives 1
Q    % Add 1: gives 2

दोगुना संस्करण:

TT   % Push [true, true]
n    % Number of elements of [true, true]: gives 2
n    % Number of elements of 2: gives 1
Q    % Add 1: gives 2
Q    % Add 1: gives 3

7
उत्तर के लिए TnQ ...: D [हम कभी-कभी tnq का उपयोग धन्यवाद-रूप के लिए संक्षिप्त रूप में करते हैं]
आधिकारिक

8
@officialaimm :)[हम कभी-कभी उपयोग करते हैं कि nसरणी से पहला तत्व प्राप्त करने के लिए ...]
लुइस मेंडू

10

विम, ५

i1<esc>X<C-a>

दोहरीकरण के बिना:

i1<esc>  insert the literal text "1"
X        delete backwards - a no-op, since there's only one character
<C-a>    increment, giving 2

दोहरीकरण के साथ:

ii11<esc>   insert the literal text "i11"
<esc>       escape in normal mode does nothing
XX          since the cursor is on the last character, delete "i1"
<C-a><C-a>  increment twice, giving 3

10

निश्चित नहीं है कि यह उत्तर मान्य है। बस यहाँ पोस्ट के मामले में किसी को यहाँ से विचार मिल सकता है।

Node.js -p फ्लैग, 7 बाइट्स के साथ

एलेक्स वर्गा द्वारा :

3/3*22

33//33**2222

Node.js -p ध्वज के साथ, 11 बाइट्स

पुराना वाला:

3*2*0/1+22

33**22**00//11++2222

आउटपुट 22 और 33।


यह 33 कैसे करना है? TIO ऐसा करने में सक्षम नहीं लगता है। यह 00 पर बंद हो जाता है।
वी। कोर्टोइस

1
कैसे के बारे में:
3/3

@AlexVarga इतनी प्यारी।
tsh

@ V.Courtois आप सख्त मोड का उपयोग कर रहे हैं
tsh

1
@EmundReed -pको आउटपुट अभिव्यक्ति मूल्य के लिए ध्वज की आवश्यकता है
tsh

10

पायथन 2 आरईपीएल, 11 बाइट्स

(3/1)*(2/1)

यह केवल 3 * 2 = 6 का मूल्यांकन करता है। डुप्लिकेट, यह है

((33//11))**((22//11))

जो 3 ** 2 का मूल्यांकन करता है, जो 3 से 2 की शक्ति, या 9 है।


साइट पर आपका स्वागत है। यह अजगर किसी भी उत्पादन का उत्पादन नहीं करता है और इस तरह एक वैध जवाब नहीं है। हालाँकि यदि आप अपने उत्तर को पायथन आरईपीएल के रूप में बदलते हैं , तो यह आउटपुट उत्पन्न करता है और इस प्रकार एक मान्य उत्तर है। आपको या तो इस उत्तर को हटाना होगा या फिर भाषा को अजगर 2 से अजगर 2 उत्तर में बदलना होगा।
गेहूं जादूगर

@WheatWizard धन्यवाद, और मदद करने के लिए धन्यवाद! क्या मैंने यह ठीक से किया?
कार्ल शिल्डक्राट

8

एपीएल, 7 बाइट्स

⊃⍕⌊3×⍟2

प्रिंट करता है 2

⊃⊃⍕⍕⌊⌊33××⍟⍟22

प्रिंट करता है 3

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

Waaat?

एक:

3×⍟2         → 2.079441542  ⍝  3 * ln 2
⌊2.079441542 → 2            ⍝  floor
⊃⍕           → '2'          ⍝  format and take first character

डबल:

⍟⍟22          → 1.128508398  ⍝  ln ln 22
×1.128508398  → 1            ⍝ signum
33×1          → 33           ⍝  33 * 1
⌊⌊33          → 33           ⍝  floor
⊃⊃⍕⍕          → '3'          ⍝  format and take first character

क्या आप कृपया टिप्पणियों को लंबवत संरेखित कर सकते हैं? या क्या हमारे पास अलग-अलग सेटिंग्स हैं या ऐसा कुछ है जो मेरे अंत में इस तरह से लूप करता है ?
केविन क्रूज़सेन

@KevinCruijssen मुझे लगता है कि यह आपका ब्राउज़र फ़ॉन्ट है, लेकिन ब्राउज़र एपीएल को मोनोसेप्ड वैसे भी प्रस्तुत नहीं करता है। कि मेरा prntscr.com/fwp0l0
उरियल

आह ठीक है, यह अभी भी पठनीय है और एक महान जवाब की परवाह किए बिना। :)
केविन क्रूज़सेन

यह मेरे लिए मोनोस्पेस के रूप में प्रस्तुत करता है। संभवतः बस फ़ॉन्ट ( prnt.sc/fwrnz1 ) पर निर्भर करता है । टिप्पणियों को निश्चित रूप से संरेखित नहीं किया गया है: P
therealfarfetchd

@therealfarfetchd धन्यवाद, मैंने पिछली 3 पंक्तियों को अपडेट किया है
Uriel


5

CJam , 4 बाइट्स

],))

यह सामान्य रूप से कोशिश करो!

इसे दोगुना करने की कोशिश करो!

व्याख्या

सामान्य:

]     e# Wrap the stack in an array: []
 ,    e# Get its length: 0
  ))  e# Increment twice: 2

डबल:

]         e# Wrap the stack in an array: []
 ]        e# Wrap the stack in an array: [[]]
  ,       e# Get its length: 1
   ,      e# Get the range from 0 to n-1: [0]
    )     e# Pull out its last element: 0
     )))  e# Increment 3 times: 3

अधिभार मुश्किल है ...;)
एरिक आउटगोल्फर

AB],भी काम करता है।
जियोकॉवेल


4

नीम , 2 बाइट्स

𝐓>

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

स्पष्टीकरण:

𝐓> Implicit 0
𝐓  Factorial
 > Increment

दोगुना संस्करण:

𝐓𝐓>>

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

𝐓𝐓>> Implicit 0
𝐓    Factorial
 𝐓   Factorial
  >  Increment
   > Increment

5 में से 4 जवाब ... आप वास्तव में इसके लिए जा रहे हैं!
द लीथेलकोडर

5
@ TheLethalCoder कम से कम यह अभी तक 15 नहीं है। ;)
एरिक आउटगॉल्फ जूल


3

आर , 11 बाइट्स

8*(!0)+1*!1

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

!नकार है, और **घातांक है (के लिए एक उपनाम ^)। न्यूमेरिकल्स बुलियन में परिवर्तित हो जाते हैं: 0टू FALSE, अन्य सभी को TRUE। बूलियन्स पूर्णांकों परिवर्तित हो: FALSEकरने के लिए 0, TRUEकरने के लिए 1है, इसलिए !0==1, !1==0, !!00==0और !!11==1

8×1+1×0=8880+1 11=12


1
मैं तो बस एक समाधान पर निर्भर साथ आने के लिए कोशिश कर रहा था *और **है, लेकिन तुम मुझे यह करने के लिए पार कर लिया!
ग्यूसेप

@Giuseppe मुझे विश्वास नहीं है कि मेरा समाधान इष्टतम है (चारों ओर कोष्ठक की आवश्यकता !0कष्टप्रद है)। कुछ कम हो सकता है -और *, लेकिन मुझे अभी तक ऐसा कोई समाधान नहीं मिला है ...
रॉबिन राइडर

2

क्यूबिक्स , 6 बाइट्स

O.1)W@

प्रिंट करता है 2

  O
. 1 ) W
  @

धक्का 1, )वृद्धि, Wकूदता है Oजो आउटपुट के लिए छोड़ दिया जाता है 2, और @कार्यक्रम को पूरा करता है।

संदेह है, यह स्पष्ट है OO..11))WW@@, जो एक घन पर है:

    O O
    . .
1 1 ) ) W W @ @
. . . . . . . .
    . .
    . .

यह 1दो बार धक्का देता है , दो बार )वेतन वृद्धि करता है, Wफिर से छोड़ दिया जाता है, जो इसे दाएं हाथ Oसे उत्तर की ओर रखता है , जो आउटपुट करता है 3, और फिर अगला कमांड होता है @जो प्रोग्राम को समाप्त करता है।

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

ऑनलाइन संदेह!


2

क्लेन , 8 6 बाइट्स

/3+@4\

सिंगल , डबल

व्याख्या

एकल के लिए कार्यक्रम एक बहुत ही सरल मार्ग का अनुसरण करता है। पहला दर्पण इसे दूसरे में विक्षेपित करता है जो इसे 4कार्यक्रम के अंत तक विक्षेपित करता है ।

डबल थोड़ा अधिक जटिल है। यह रहा:

//33++@@44\\

पहले दो दर्पण एक ही काम करते हैं, हालांकि दोहरीकरण के कारण एक नया दर्पण होता है जो आईपी को शुरुआत में पीछे हटा देता है, यह पहले दर्पण के डुप्लिकेट द्वारा पकड़ा जाता है और अंत की ओर झुकता है। सभी को चलाया जाता है 33++जो 6 का मूल्यांकन करता है।


2

टीआई-बेसिक, 3 बाइट्स

एक:

int(√(8

अंतिम अभिव्यक्ति स्पष्ट रूप से टीआई-बेसिक में मुद्रित / मुद्रित है, इसलिए यह प्रिंट करता है 2

दोगुनी:

int(int(√(√(88

रिटर्न / प्रिंट 3

टीआई-बेसिक एक टोकन भाषा है ; int(, √(और 8स्मृति में हर एक बाइट हैं।


जब प्रत्येक चरित्र को दोगुना किया जाता है, तो तकनीकी रूप से चुनौती की कल्पना स्पष्ट रूप से बताती है, लेकिन मैं इसे अनुमति देता हूं और कल्पना को अद्यतन करता
हूं

2

रूबी REPL, 8 बाइट्स

";3#";22

REPL केवल मूल्यांकन किए गए अंतिम मान को प्रिंट करता है 22:।

दोगुनी:

"";;33##"";;22

इस बार 33मूल्यांकन किया गया अंतिम मूल्य है। स्ट्रिंग को एक बार फिर से छोड़ दिया गया है, और #एक टिप्पणी शुरू करता है।


2

> <>, 19 8 बाइट्स

32b*!{n;

प्रिंट 22
ऑनलाइन यह कोशिश करो!

स्पष्टीकरण:

32b   push literals onto the stack: [3,2,11]
*     multiply the top two values: [3,22]
!     skip the next instruction
{     (skipped)
n     pop and print the top value from the stack (22)
;     end execution

दोगुनी:

3322bb**!!{{nn;;

प्रिंट 33
ऑनलाइन यह कोशिश करो!

स्पष्टीकरण:

3322bb push literals onto the stack: [3,3,2,2,11,11]
**     multiply top values (twice): [3,3,2,242]
!      skip next instruction
!      (skipped)
{{     rotate the stack to the left (twice): [2,242,3,3]
nn     pop and print the top two values from the stack (33)
;      end execution

पुराना संस्करण:
सामान्य:

11+!vn;
    n
    ;

प्रिंट 2
ऑनलाइन यह कोशिश करो!

स्पष्टीकरण:

1    push 1 on the stack: [1]
 1    push 1 on the stack: [1,1]
  +    add top two values of the stack: [2]
   !    skip the next instruction
    v    (skipped)
     n    print the top value of the stack (2)
      ;    end execution

दोगुनी:

1111++!!vvnn;;
        nn
        ;;

प्रिंट 3
ऑनलाइन यह कोशिश करो!

स्पष्टीकरण:

1111    push four 1's on the stack: [1,1,1,1]
    +    add top two values of the stack: [1,1,2]
     +    add top two values of the stack: [1,3]
      !    skip the next instruction
       !    (skipped)
        v    change direction of execution (down)
         n    print the top value of the stack (3)
          ;    end execution


5
मुझे लगता है कि आप नए डुप्लिकेट को भी डुप्लिकेट करने वाले हैं।
निकोलस जूल

@EriktheOutgolfer अब कोई नया समाचार नहीं है।
18

1

Zsh , 14 बाइट्स

<:|echo 22
3
:

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

स्रोत कोड के साथ कुछ भी प्रिंट करने के लिए गैर-गोल्फिंग भाषा में एक पूर्ण कार्यक्रम प्राप्त करना इस तरह से एक चुनौती है। Zsh इसके लिए बहुत उपयोगी है, क्योंकि फ़ाइलों और heredocs implicitly पारित कर रहे हैं cat। आइए दोनों मामलों में पहली पंक्ति पर एक नज़र डालते हैं:

<:|echo 22            # Give the file : on stdin to cat. cat pipes to 'echo 22', which ignores stdin
<<::||eecchhoo  2222  # Start heredoc on following lines with EOF string '::', pass to cat.
                      # Since cat exits 0, 'eecchhoo 2222' is not executed

जब तक 3एक कार्यक्रम नहीं है, तब तक पहला कार्यक्रम केवल प्रिंट होगा 22। दूसरा कार्यक्रम 33अतिरिक्त न्यूलाइन्स (दोहराव के कारण) से घिरा हुआ होगा ।


यदि 3कोई फ़ंक्शन / प्रोग्राम / उपनाम है, तो यह 18 बाइट समाधान अभी भी काम करेगा!

<:|echo 22\\c\
3
:

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

अंतिम \पंक्ति निरंतरता है, इसलिए प्रभावी ढंग से इको स्टेटमेंट बनाते हुए नईलाइन को छोड़ दिया जाता है echo '22\c3'\cका कारण बनता है के बाद मुद्रण को रोकने के लिए गूंज 22(जो भी नई पंक्ति को दबाने के लिए होता है)।


1

पर्ल 6 , 14 बाइट्स

'|d 3#';say 22

इसे ऑनलाइन आज़माएं! इसे दोगुना करने की कोशिश करो!

यह ddSTDERR के लिए दोगुने प्रोग्राम को आउटपुट करने के लिए सुविधाजनक रूप से नामित डीबग फ़ंक्शन का उपयोग करता है । तर्क को अलग करने के लिए हम उद्धरणों में दोगुने प्रोग्राम को एनकैश करते हैं, जो तब दोगुना होने पर एक दूसरे को रद्द करते हैं, साथ ही कमेंट कैरेक्टर के साथ #अब अमान्य सामान्य प्रोग्राम पर टिप्पणी करते हैं।



0

मठगोल्फ , 2 बाइट्स

▬)

इसे ऑनलाइन आज़माएं! इसे दोगुना करके देखें

इसमें अन्य उत्तरों की तरह ही पहला निर्देश 1भी दोगुना होने पर उत्पादन करता है और दूसरा इसे बढ़ाता है। इस मामले में, मैंने रिवर्स एक्सपेंसेशन ( 0**0 = 0**0**0 = 1) का उपयोग किया है, लेकिन यह भी किसी भी !£≤°निर्देश का हो सकता है और शायद इससे भी ज्यादा कि मैं चूक गया।


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