ऑस्कर बेस्ट पिक्चर विनर प्रिंट करें


49

यह चुनौती ऑस्कर 2017, ला ला लैंड मूनलाइट में सर्वश्रेष्ठ चित्र के विजेता को श्रद्धांजलि है !


आपकी चुनौती पाठ को प्रिंट करना है

ला ला भूमि
एक सेकंड रोकें, फिर टेक्स्ट को दिखाने के लिए बदलें

ला ला भूमि मूनलाइट
मूल पाठ (ला ला लैंड) में एक स्ट्राइकथ्रू होना चाहिए । यह स्क्रीन को साफ़ करके, मूल पाठ के शीर्ष पर ड्राइंग या किसी अन्य चतुर समाधान द्वारा प्राप्त किया जा सकता है।

यह एक इसलिए सबसे कम बाइट्स जीतता है। मानक कोड-गोल्फ नियम लागू होते हैं।


अरे वाह! मेरी चुनौती इतनी अच्छी थी कि इसे ट्विटर पर पोस्ट किया गया
vikarjramun

मुझे आश्चर्य है कि अगर किसी भी भाषा तथ्य का उपयोग कर सकते La La La(nd)पैटर्न
12Me21

जवाबों:


13

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

“XSøjĠḌ⁻Ça»Œts⁵µṀȮ⁸œS“Æɓ9m“ɓm”ż

Xterm और के साथ परीक्षण किया गया LANG=en_US। कई कारणों से TIO पर काम नहीं करता है।

Hexdump

00000000: 58 53 1d 6a c4 ad 8b 0e 61 fb 13 74 73 85 09 c8  XS.j....a..ts...
00000010: ca 88 1e 53 fe 0d 9b 39 6d fe 9b 6d ff f9        ...S...9m..m..

सत्यापन

स्क्रीन कैप्चर

पृष्ठभूमि

यह उत्तर नियंत्रण वर्णों और ANSI एस्केप अनुक्रमों का उपयोग करता है ।

  • 0d( <CR>) का उपयोग ला ला लैंड को प्रिंट करने के बाद लाइनर की शुरुआत में लौटने के लिए किया जाता है ।

  • 9b 39 6d( <CSI> 9 m) ला ला लैंड को दूसरी बार छापने से पहले स्ट्राइक-थ्रू टेक्स्ट को सक्रिय करने के लिए उपयोग किया जाता है ।

  • 9b 6d( <CSI> m) का उपयोग फ्रंटग्राउंड और बैकग्राउंड को डिफॉल्ट मोड में रीसेट करने के लिए किया जाता है, इस प्रकार मूनलाइट को प्रिंट करने से पहले स्ट्राइक-थ्रू डीएक्टिवेट किया जाता है

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

“XSøjĠḌ⁻Ça»Œts⁵µṀȮ⁸œS“Æɓ9m“ɓm”ż Main link. No arguments.

“XSøjĠḌ⁻Ça»                     Index into Jelly's inbuilt dictionary to yield
                                "LA LA Land moonlight".
           Œt                   Convert to title case, yielding the string
                                "La La Land Moonlight".
             s⁵                 Split into chunks of length 10, yielding
                                A =: ["La La Land", " Moonlight"].
               µ                Begin a new chain with argument A.
                Ṁ               Take the maximum, yielding "La La Land".
                 Ȯ              Output; print "La La Land".
                  ⁸œS           Sleep for bool("La La Land") seconds and yield A.
                     “Æɓ9m“ɓm”ż Zip ["\r\x9b9m", "\x9bm"] with A, yielding
                                [["\r\x9b9m","La La Land"],["\x9bm"," Moonlight"]].
                                (implicit) Flatten and print.

26

विम, 37 बाइट्स

3iLa <esc>snd<esc>gs:s/./&<C-v>u336/g
A Moonlight

एक बिल्कुल सीधा समाधान।

यहाँ इसका एक एनीमेशन चल रहा है:

यहाँ छवि विवरण दर्ज करें


लेकिन वहाँ कोई नींद नहीं है :(
क्रंचर

1
@ क्रंचर हाँ वहाँ है! gsएक सेकंड के लिए सो जाता है।
DJMcMayhem

दिलचस्प है, आप इसे आम तौर पर कैसे चलाते हैं? क्योंकि मैं vim में इस टाइप किया और यह काम करता है, लेकिन यह सेकंड की देरी की चमक खो देता है (मेरी धीमी गति से टाइपिंग में मैं भी देरी नोटिस नहीं किया था के रूप में मैं यहाँ से कॉपी किया गया था)
क्रंचर

कोई बात नहीं, मैंने इसे मैक्रोज़ के साथ जोड़ दिया। बहुत ही शांत!
क्रंचर

25

एचटीएमएल, 153 148 बाइट्स

CSS एनीमेशन का उपयोग करना। केवल फ़ायरफ़ॉक्स और क्रोम पर परीक्षण किया गया।

<s>La La Land</s> <b>Moonlight<style>@keyframes l{0%{text-decoration:none}}@keyframes m{0%{opacity:0}}b,s{animation:m 0s 1s both}s{animation-name:l}

<s> ला ला लैंड </ s> <b> मूनलाइट </ b>


आप @keyframesघोषणाओं में से एक को अंतिम रूप दे सकते हैं और दो समापन घुंघराले ब्रेस को हटा सकते हैं।
डेरीलीओ

@darrylyeo: फ़ायरफ़ॉक्स एक नियम लागू करने से इंकार करता है यदि कोई भी }गायब है, तो दुर्भाग्य से ऐसा नहीं किया जा सकता है।
kennytm

19

HTML + जावास्क्रिप्ट, 18 + 59 = 77 बाइट्स

setTimeout('O.innerHTML="<s>La La Land</s> Moonlight"',1e3)
<p id=O>La La Land

अफसोस की बात है कि पुन: उपयोग करने के लिए एक कुशल तरीका नहीं लगता O.innerHTML...


चाहेंगे setTimeout('a=O.innerHTML;a=a.strike()+" Moonlight"',1e3)काम करते हैं?
क्रिकटी लिथोस

1
@KritiiLithos मुझे ऐसा नहीं लगता; aवहां संशोधन नहीं होगा O.innerHTML
ETHproductions

18

ऑक्टेव, 81 66 बाइट्स

15 बाइट्स @Stewie की बदौलत बच गए

text(0,.5,'La La Land');pause(1);text(0,.5,'---------- Moonlight')

ऑनलाइन डेमो यहाँ

जबकि डेमो दो अलग-अलग प्लॉट दिखाता है, जब MATLAB के डेस्कटॉप संस्करण में चलाया जाता है, यह पहला प्लॉट दिखाता है, 1 सेकंड इंतजार करता है, और फिर उसी प्लॉट में दूसरा स्ट्रिंग जोड़ता है।

चूंकि ऑक्टेव के पास पाठ के माध्यम से हड़ताल का समर्थन नहीं है, इसलिए मैंने इसके बजाय axesएक आकृति में एक वस्तु के भीतर पाठ को प्रदर्शित करने और '--------'प्रारंभिक पाठ (@Stewie द्वारा प्रारंभिक विचार) के शीर्ष पर प्रदर्शित करके "स्ट्राइकथ्रू" का विकल्प चुना है । इससे पहले, मैं वास्तव में एक lineवस्तु के माध्यम से हड़ताल करने की साजिश रची थी'La La Land'

यहाँ छवि विवरण दर्ज करें


1
अच्छा तरीका ... :) आप इस तरह से 15 बाइट्स बचा सकते हैं text(0,.5,'La La Land');pause(1);text(0,.5,'---------- Moonlight'):।
स्टिव ग्रिफ़िन

@StewieGriffin धन्यवाद! अपडेट किया गया
सूवर

क्या ओक्टेव आपको '-'*8+डैश की जगह नहीं देता है ?
निक हार्टले

@QPaysTaxes दुर्भाग्य से यह नहीं है।
मुकदमा

1
अरे। एक और प्रश्न: इसे (0, 0) या (1, 0) पर क्यों नहीं खींचना है? उन दोनों की तरह लगता है कि आप एक बाइट (नहीं .) बचा लेंगे
निक हार्टले

10

बैश, 70, 69 66 बाइट्स

-4 रिले के लिए धन्यवाद

echo La La Land;sleep 1;echo -e "\r\e[9mLa La Land\e[0m Moonlight"

स्ट्राइकथ्रू के लिए AskUbuntu पर सिल्वेन पिनेउ के जवाब का श्रेय


1
मुझे लगता है कि आप इसके बजाय \rदूसरे में उपयोग करके कुछ बाइट्स बचा सकते echoहैं clear। इसके अलावा, आपको दूसरे से पहले स्थान की आवश्यकता नहीं है echo
रिले

यह स्ट्राइक आउट टेक्स्ट के बाद स्पेस को प्रिंट नहीं करता है।
लवजो

इसके अलावा, मुझे लगता है कि clear;पहले जाना चाहिए। और आपके पास एक अनावश्यक स्थान है ; echo
आउटगॉल्फ

2
छोटा समाधान जो धारीदार पाठ के बाद स्थान जोड़ता है और एएनएसआई कोड का उपयोग करके मुद्रित पाठ के इन-लाइन संशोधन करता है \e[A, इसलिए कोई clearज़रूरत नहीं है। उस पर अधिक जानकारी के लिए मुझे देखें । s="La La Land";echo $s;sleep 1;echo -e "\e[A\e[9m$s\e[0m Moonlight"
शीशमारा

1
याecho -n La La Land;sleep 1;echo -e "\r\e[9mLa La Land\e[0mMoonlight"
डिजिटल ट्रामा

9

QBasic, 61 बाइट्स

SCREEN 9
?"La La Land";
SLEEP 1
LINE(0,7)-(80,7)
?" Moonlight

ग्राफिक्स मोड का उपयोग करना, पाठ के माध्यम से एक वास्तविक रेखा खींचना। यहाँ यह QB64 में कैसा दिखता है :

चांदनी

कोड बहुत ही आत्म-व्याख्यात्मक होना चाहिए, लेकिन यहां एक असम्बद्ध संस्करण है:

SCREEN 9             ' One of several graphics modes
PRINT "La La Land";  ' The semicolon suppresses the trailing newline
SLEEP 1
LINE (0,7)-(80,7)
PRINT " Moonlight"

8

MATL, 46 बाइट्स

'La La Land'tDlY.ttv45HY(`t@Y)' Moonlight'hXxDT

चूंकि MATL में नियंत्रण कोड या पाठ स्वरूपण के लिए समर्थन नहीं है, इसलिए यह समाधान स्ट्राइकॉन्ग टेक्स्ट को अनुकरण करने के लिए बस 'La La Land'और '-----------'जितनी जल्दी हो सके , वैकल्पिक रूप से वैकल्पिक होता है ।

यहाँ छवि विवरण दर्ज करें

व्याख्या

'La La Land'   % Push the string literal to the stack
tD             % Duplicate this string and display
tv             % Stack a version of this string on top of another
45HY(          % Replace the second one with '----------'
`              % Do...while loop
  t            % Duplicate the 2D character array
  @Y)          % Grab the row corresponding to the loop index (modular indexing)
  ' Moonlight' % Push the string literal to the stack
  h            % Horizontally concatenate the two
  Xx           % Clear the display
  D            % Display the string
  T            % Push a literal TRUE to the stack to make it an infinite loop

1
रचनात्मक! मुझे यह पसंद है
vikarjramun

3
रचनात्मकता के लिए +1, लेकिन यह सुनिश्चित नहीं है कि यह नियमों से मिलता है।
DBX12

5

बैश + पीवी , 50 बाइट्स

printf ♪La\ La\ Land›%b 9m\\0 m\ Moonlight|pv -0L1

यह @ DigitalTrauma के बैश उत्तर पर बनाता है ।

एक गाड़ी वापसी ( 0x0d ), एक सीएसआई बाइट ( 0x9b ) का प्रतिनिधित्व करता है ।

Hexdump

0000000: 70 72 69 6e 74 66 20 0d 4c 61 5c 20 4c 61 5c 20  printf .La\ La\
0000010: 4c 61 6e 64 9b 25 62 20 39 6d 5c 5c 30 20 6d 5c  Land.%b 9m\\0 m\
0000020: 20 4d 6f 6f 6e 6c 69 67 68 74 7c 70 76 20 2d 30   Moonlight|pv -0
0000030: 4c 31                                            L1

सत्यापन

स्क्रीन कैप्चर

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

printf के रूप में अपनी अन्य तर्कों निकास करने की जरूरत कई बार के रूप में अपनी प्रारूप स्ट्रिंग को दोहराता है। चूँकि इसमें एक %bऔर दो तर्क ( 9m\\0और m\ Moonlight) की घटना है , यह निम्नलिखित बाइट स्ट्रीम का उत्पादन करेगा।

\rLa La Land\x9b9m\0\rLa La Land\x9bm Moonlight

यह निम्नलिखित करता है।

  • \r कर्सर को लाइन की शुरुआत में लाता है।

  • La La Land मुद्रित शब्दशः है।

  • \x9b9m पाठ के माध्यम से हड़ताल को सक्रिय करता है।

  • \0के लिए एक अंत लाइन लाइन सेट करता है pv -0

  • \rLa La Land पहले जैसा करता है।

  • \x9bm डिफ़ॉल्ट मोड में अग्रभूमि और पृष्ठभूमि रीसेट करें, स्ट्राइक थ्रू निष्क्रिय करें।

  • Moonlight मुद्रित शब्दशः है।

अंत में, pv -0L1वांछित देरी का परिचय देते हुए, प्रति सेकंड एक शून्य-समाप्त रेखा प्रिंट करता है।


3
क्या यह एक संयोग है जिसने आपकी गोल्फ में मदद की है, या आप विशेष रूप से ला ला लैंड के साथ इसका उपयोग करना चाहते हैं? मुझें यह पसंद है!
ब्रूसवेने

एक गाड़ी वापसी लाइन की शुरुआत में वापस जाने का सबसे छोटा रास्ता है। तथ्य यह है कि यह कभी कभी एक खुश संयोग के रूप में शैलीबद्ध है।
डेनिस

हर किसी pvकी sleepतरह इसके बजाय का उपयोग सुंदर है।
IQAndreas

1
@IQAndreas का उपयोग करने का विचार pvहै जो मैंने जुड़े बैश उत्तर से लिया है, इसलिए मैं वास्तव में इसका श्रेय नहीं ले सकता।
डेनिस

3

HTML + जावास्क्रिप्ट, 10 + 63 = 73 बाइट्स

setTimeout("document.write('<s>La La Land</s> Moonlight')",1e3)
La La Land


यह किस ब्राउज़र में काम करता है?
टाइटस

2
@ मुझे लगता है कि उनमें से सभी, लेकिन मैंने इसकी पुष्टि की है कि यह क्रोम + फ़ायरफ़ॉक्स में अब तक काम कर रहा है
nadcore

3

PHP ( 86 75 69 बाइट्स)

La La Land<?=sleep(1)?:"\rL̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight";

स्ट्राइकथ्रू के लिए UTF-8 वर्ण U + 0336 का उपयोग करता है।

संपादित करें: @ टिप्पणी के सुझावों के साथ सहेजे गए 17 बाइट्स


1
sleepहमेशा 0 देता है; तो आप बस sleep(1)?:" ̶L̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight"(-3 बाइट्स) कर सकते हैं । \rइसके बजाय \033[10D6 बाइट्स बचाता है और अंतिम स्ट्रिंग में इसे शामिल करता है एक और 4 बचाता है
टाइटस

ओह, वाह, उनमें से प्रत्येक को मुझे देखने में सक्षम होना चाहिए, मुझे लगता है कि यह अभ्यास के साथ आता है। आपका बहुत बहुत धन्यवाद! यदि आप सुधार के 11 बाइट्स के रूप में प्रतिनिधि पाने के लिए अपना खुद का जवाब देना चाहते हैं, तो मैं अपना उत्तर हटा सकता हूं और आपका
उत्कर्ष

कोई मान्य उत्तर हटाने की आवश्यकता नहीं है। मैं अपना खुद का पोस्ट नहीं करता जब दूसरों को जवाब देना - जब तक कि ओपी प्रतिक्रिया नहीं करता। यहां तीन और बाइट्स हैं: प्रमुख खाली की आवश्यकता नहीं है, न ही पिछले खाली पर स्ट्राइकथ्रू है। UTF-8 का उपयोग चारसेट के रूप में करना धोखा नहीं है; लेकिन आप " U+0336स्ट्राइकथ्रू के लिए UTF-8 चरित्र का उपयोग करता है" का उल्लेख कर सकते हैं ।
टाइटस

ओह और La La Land<?=इसके बजाय <?="La La Land",एक और 3 बाइट्स बचाता है।
टाइटस

3

पायथ - 47 बाइट्स

क्या अब स्ट्राइकथ्रू बात करता है।

के "ला ला लैंड" .d_1 "\ 033c" + j "\ u0336" K "मूनलाइट

यह काम नहीं करता है; आपको "+1 के लिए सामने की आवश्यकता है ।
आउटगॉल्फ

@EriktheOutgolfer> _ <पता नहीं कैसे हुआ।
माल्टीसेन

क्या है <exmpty line>? मैं <pre>टैग्स का सुझाव दूंगा।
कैलक्यूलेटर

3

सी 87 86 बाइट्स

f(){char*s="La La Land";puts(s);printf("\e[9m%s\e[0m",s);sleep(1);puts(" Moonlight");}

Ungolfed संस्करण:

void f()
{
  char *s="La La Land";
  puts(s);
  printf("\e[9m%s\e[0m",s);
  sleep(1);
  puts(" Moonlight");

}

2
आप के बीच की जगह की जरूरत नहीं है charऔर *
kennytm

तुम भी f()ungolfed संस्करण में फोन करने की जरूरत है , नहीं?
रोड्रिगो हैन

1 बाइट बचाने के लिए @kennytm थनक।
हाबिल टॉम

1
@RodrigoHahn डिफ़ॉल्ट रूप से एक कोड-गोल्फ उत्तर एक फ़ंक्शन या प्रोग्राम हो सकता है , इसलिए हमें कॉल करने की आवश्यकता नहीं है f()
kennytm

3

HTML + जावास्क्रिप्ट, 100 बाइट्स

La La Land<script>setTimeout(function(){document.write("<s>La La Land</s> Moonlight")},1e3)</script>

setTimeout(function(){document.write("<s>La La Land</s> Moonlight")},1e3);
La La Land


डॉक्युमेंट कैसे आते हैं। मौजूदा टेक्स्ट को ओवरराइट करता है?
vikarjramun

यदि आपका दस्तावेज़ पूरी तरह से भरा हुआ है तो आप document.write का उपयोग कर रहे हैं (जैसे किसी घटना के साथ या टाइमआउट के साथ संलग्न करना) सभी मौजूदा HTML को हटा देगा। संदर्भ = w3schools.com/jsref/met_doc_write.asp
सौरव

3

GNU sed + नींद, 63 58 बाइट्स

संपादित करें: डिजिटल ट्रॉमा की टिप्पणियों के आधार पर 5 बाइट्स सहेजे गए

दो प्रिंट स्टेटमेंट के बीच प्रतीक्षा अकेले sed का उपयोग करके नहीं किया जा सकता है, और जैसे मैं फोन करता हूँ sleep 1eकमांड का उपयोग करके, sed से एक सिस्टम कॉल करना संभव है , जो कि एक GNU एक्सटेंशन है।

s:$:La La Land:p
esleep 1
s:.:&̶:g
s:.*:\c[[A& Moonlight:

स्ट्राइक-थ्रू टेक्स्ट (पंक्ति 3) बनाने के लिए, "लॉन्ग स्ट्रोक ओवरले का संयोजन", U + 0336 , प्रत्येक वर्ण के साथ जोड़ा जाता है। उसके बाद, मैं कर्सर को 1 पंक्ति ऊपर ले जाता हूं, प्रभावी रूप से पुराने पाठ की जगह जब कुछ नया प्रिंट करता है, तो तथाकथित एएनएसआई एस्केप सीक्वेंस का उपयोग करते हुए । इनकी व्याख्या टर्मिनल द्वारा विशेष प्रारूपण आदेशों के रूप में की जाती है। आप उनके बारे में अधिक जानकारी यहाँ पा सकते हैं ।

gif छवि

स्पष्टीकरण:

s:$:La La Land:p         # add "La La Land" to pattern space and print it
esleep 1                 # run system command 'sleep 1'
s:.:&̶:g                  # append U+0336 after each character (strike-through)
s:.*:\c[[A& Moonlight:   # '\c[[A' is '(escape)[A', ANSI code to move the cursor
                         #up 1 line. Then append ' Moonlight' and print on exit.

1
@DigitalTrauma पूरी तरह से \c, अच्छी खोज के बारे में भूल गया ! उस विशेष यूनिकोड के रूप में, यह पहली बार है जब मैंने इसके बारे में सुना, लेकिन यह वास्तव में काम करता है। जब इसे इस पृष्ठ द्वारा मुद्रित किया जाता है, तो इसे कमांड sविभाजक के साथ जोड़ दिया जाता है :, इसलिए यह देखने में थोड़ा अजीब है।
शेषमारा

3

जावा 7, 207 206 171 139 बाइट्स

void c()throws Exception{System.out.print("La La Land");Thread.sleep(1000);System.out.print("\rL̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight");}

मैं इस पहले जवाब के साथ थोड़े धोखा दे रहा हूं, क्योंकि मैं हड़ताल के माध्यम से यूनिकोड का उपयोग करता हूं ।

स्पष्टीकरण:

void c() throws Exception{         // Method (throws is necessary due to Thread.sleep)
  System.out.print("La La Land");  //  Show initial text
  Thread.sleep(1000);              //  Wait 1 second
  System.out.print("\r             //  Move 'cursor' to the start of the line so we can overwrite the current text
    L̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight");        //  and print new text
}                                  // End of method

जावा 7 (AWT के साथ), 444 429 341 बाइट्स

444 को पार कर लिया गया अभी भी नियमित 444 है ;;

import java.awt.*;import java.text.*;void m(){new Frame(){public void paint(Graphics g){g.drawString("La La Land",9,50);try{Thread.sleep(1000);}catch(Exception e){}AttributedString s=new AttributedString("La La Land Moonlight");s.addAttribute(java.awt.font.TextAttribute.STRIKETHROUGH,1>0,0,10);g.drawString(s.getIterator(),9,50);}}.show();}

चूंकि Java कंसोल में स्ट्राइक-थ्रू जैसा कोई मार्कअप नहीं है, इसलिए आपको Java AWT का उपयोग करना होगा। और ठीक है, अगर आपको लगता है कि जावा कंसोल पहले से ही क्रियाशील था, तो यह और भी बुरा है (मुझे पता है, मुझे पता है, आप में से अधिकांश ने जावा 7 की किसी भी बदतर होने की कल्पना भी नहीं की थी ..)

स्पष्टीकरण:

import java.awt.*;                                         // import used for Frame and Graphics
import java.text.*;                                        // Import used for all AttributedStrings
void m(){                                                  // method
  new Frame(){                                             //  Frame
    public void paint(Graphics g){                         //   Overridden paint method
      g.drawString("La La Land", 9, 50);                   //    Show the initial text
      try{
        Thread.sleep(1000);                                //    Wait 1 second
      }catch(Exception e){}                                //    Thread.sleep requires a try-catch..
      AttributedString s
          = new AttributedString("La La Land Moonlight");  //    Object to add markup to text
      s.addAttribute(
        java.awt.font.TextAttribute.STRIKETHROUGH,         //    Strike-through attribute
        1>0,//true                                         //    Mandatory parameter before we can specify the length
        0, 10);                                            //    From length 0 to 10 (length of "La La Land")
      g.drawString(s.getIterator(), 9, 50);                //    Show this new text with strike-through part
    }                                                      //   End of paint method
  }.show();                                                //  Show Frame
}                                                          // End of method

आउटपुट gif:

यहाँ छवि विवरण दर्ज करें


मुझे लगता है कि आप String[] a1e31000
Kritii Lithos

@KritiiLithos वह स्थान वास्तव में चला जाना चाहिए था .. शायद गोल्फ के दौरान फिसल गया था। के रूप में 1e3, कि एक डबल है, और Thread.sleepएक लंबी उम्मीद है। 1000से छोटा है (long)1e3। :)
केविन क्रूज़सेन

2
तुम्हारा मतलब है Swing, नहीं Spring, तुम नहीं? मुझे लगभग दिल का दौरा पड़ा था! एक कोडगॉल्फ में स्प्रिंग ... इसके अलावा, बाइट्स को बचाने के लिए, आप स्विंग के बजाय AWT का उपयोग कर सकते हैं।
ओलिवियर ग्रेजायर

@ OlivierGrégoire आह, टाइपो, मैं वास्तव में स्विंग का मतलब था .. और धन्यवाद, AWT कम है, स्विंग (या स्प्रिंग: पी) के लिए कोई ज़रूरत नहीं है।
केविन क्रूज़सेन

1
मैंने अनाम आंतरिक वर्ग के साथ AWT संस्करण (जावा 7) फ़ंक्शन बनाया। मैंने पहले AttributedString बकवास को हटा दिया और कुल 306 बाइट्स के लिए अधिक गोल्फिंग की। यदि आप जावा 8 पर जाते हैं, तो यह अभी भी 302 बाइट्स है। void m(){new Frame(){public void paint(Graphics g){g.drawString("La La Land",99,99);try{Thread.sleep(1000);}catch(Exception e){}AttributedString s=new AttributedString("La La Land Moonlight");s.addAttribute(java.awt.font.TextAttribute.STRIKETHROUGH,1>0,0,10);g.drawString(s.getIterator(),99,99);}}.show();}
ओलिवियर ग्रेगोइरे

2

पायथन 3, 90 बाइट्स

स्ट्राइक-थ्रू यूनिकोड (U + 0336) का उपयोग करें, क्योंकि macOS टर्मिनल उस \e[9mकमांड का समर्थन नहीं करता है ।

import time
s='La La Land '
print(s,end='\r')
time.sleep(1)
print('̶'.join(s),'Moonlight')

La̶ ̶L̶a̶ ̶L̶a̶n̶dlight चाँदनी


2

Arduino, 332 331 बाइट्स

प्रतिस्पर्धा नहीं, सिर्फ मनोरंजन के लिए।

#include<LiquidCrystal.h>
LiquidCrystal lcd(7,8,9,10,11,12);String a="La La Land";String b="-- -- ----";void setup(){lcd.begin(16,2);}void loop(){lcd.home();lcd.print(a);delay(1000);lcd.clear();lcd.print(b);lcd.setCursor(0,2);lcd.print("Moonlight");while(1){delay(150);lcd.home();lcd.print(a);delay(150);lcd.home();lcd.print(b);}}

सामग्री के बिल:

  • 1 एक्स अरडिनो अनो
  • 1 एक्स एलसीडी 16 एक्स 2
  • 1 x 10K पोटेंशियोमीटर
  • 1 x 180 ओम रेसिस्टर

La̶ ̶L̶a̶ ̶L̶a̶n̶dlight चाँदनी


1
साइट पर आपका स्वागत है। मुझे नहीं पता कि Arduino C के समान कैसे है, लेकिन मुझे पूरा यकीन है कि आप अपने स्थान को हटा सकते हैं#include
Wheat Wizard

मेरी गणना से, हार्डवेयर की लागत 30 बाइट्स (प्रतिरोधक के लिए 2, पोटेंशियोमीटर के लिए 3, इसकी सेटिंग के लिए 1, एलसीडी के लिए 10 (बदलाव के लिए) और तारों के लिए 14) (1 बाइट प्रति तार) है। हालाँकि, यह केवल एक सुझाव है। इसके अलावा, TIO का कहना है कि कोड केवल 331 बाइट्स है। वहाँ एक अनुगामी newline है?
कैलक्यूलेटरफलाइन

@HeatWizard सही है। ठीक कर दिया!
फ्लक्सा

1
अच्छी बात @CalculatorFeline, लेकिन उस स्थिति में, हमें अन्य सभी उत्तरों की हार्डवेयर लागतों को भी गिनना चाहिए। संभवतः मेरा सेटअप सबसे सस्ता है। : D
fluxa


2

पायथन 3, 99 बाइट्स

import time
l='La La Land'
s='\u0336'
print(l,end="\r")
time.sleep(1)
print(s.join(l)+' Moonlight')

यदि आप सेट करते हैं तो क्या l = 'La La Land आप +s-2 वर्णों से बच नहीं सकते हैं ? ।
6

@ मैं इसे दो बार उपयोग करना होगा, इसीलिए मैंने इसे s
मिगुएल


1

स्माइलबासिक, 45 बाइट्स

एक कम बाइट 12Me21 के जादू की अवधि चाल के लिए धन्यवाद।

जहां तक ​​मुझे पता है एसबी में स्ट्राइकथ्रू वर्ण नहीं है, इसलिए मैंने GLINEइसके बजाय उपयोग किया। स्पष्ट रूप से एक स्पष्ट प्रदर्शन मानता है, ACLSयदि आपको आवश्यकता हो तो उपयोग करें।

?"La La Land
WAIT 60GLINE.,4,79,4?" Moonlight

1

एएचके, 102 बाइट्स

s=La La Land
Send,%s%
Sleep,1000
Send,^a{Del}
Loop,Parse,s
Send,%A_LoopField%{U+0336}
Send,` Moonlight

मैंने लंबे स्ट्रोक ओवरले यूनिकोड चरित्र के संयोजन का उपयोग करके स्ट्राइकथ्रू पाठ प्राप्त करने के लिए थोड़ा धोखा दिया । यह आपके सेटअप के आधार पर एक विषम उपस्थिति बना सकता है। नोटपैड एक अच्छी उपस्थिति देता है।

कार्रवाई में कोड


AutoHotkey स्पष्ट रूप से इसके लिए सबसे कुशल भाषा नहीं है, लेकिन यह एक मजेदार चुनौती थी। सावधान रहें कि आप इसे कहां चलाते हैं क्योंकि यह स्वयं का प्रदर्शन नहीं बनाता है और जो भी खिड़की सक्रिय है उसके सभी पाठ मिटा देता है।


1

स्विफ्ट, 392 बाइट्स

स्विफ्ट + यूकीट वास्तव में गोल्फ के लिए आदर्श नहीं है! इसे एक XCode खेल के मैदान में चलाएं और परिणाम पूर्वावलोकन फलक में दिखाया जाएगा।

import UIKit
import PlaygroundSupport
let l=UILabel(frame:CGRect(x:0,y:0,width:200,height:20))
l.textColor=UIColor.red
let m="La La Land"
let n=" Moonlight"
l.text=m
DispatchQueue.main.asyncAfter(deadline:.now()+1){
let a=NSMutableAttributedString(string:m+n)
a.addAttribute("NSStrikethrough",value:1,range:NSRange(location:0,length:10))
l.attributedText=a
}
PlaygroundPage.current.liveView=l

पूर्वावलोकन


है l.textColor=UIColor.redआवश्यक?
अल्बर्ट रेनशॉ

काली पृष्ठभूमि पर काले पाठ के लिए डिफ़ॉल्ट रूप से अन्यथा लगता है
मैट

0

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

“ñ[“m‘Ọj
“¡ṭḊßȥṡoẋ»¹13Ọ;9Ǥ;;0Ǥ;“"dE»œS1

ऑनलाइन दुभाषिया पर काम नहीं करता है।


क्यों नहीं? क्या संगतता को सस्ते में जोड़ा जा सकता है?
कैलक्यूलेटर

@CalculatorFeline नहीं, डेनिस को काम करने के लिए नियंत्रण कोड लागू करना चाहिए, और वर्तमान में यह उनकी प्राथमिकता नहीं है।
एरिक आउटोलॉफ़र

क्या आप आउटपुट का स्क्रीनशॉट / एनिमेटेड gif दे सकते हैं?

@ @ मैं कर सकता हूं, हालांकि इसकी कोई गारंटी नहीं है। इस बीच, आप दुभाषिया को डाउनलोड कर सकते हैं और इसका परीक्षण खुद कर सकते हैं :)
एग्री द आउटग्राफर

0

पायथन (137 बाइट्स)

from turtle import *;import time;write("La La Land");time.sleep(1);clearscreen();write("\u0336".join("La La Land ")+" Moonlight");done()

2
आप के बाद अंतरिक्ष की जरूरत नहीं है import। मैं "ला ला लैंड" को एक चर के रूप में सहेजने का सुझाव भी दूंगा।
गेहूं जादूगर

0

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

:" LA
:Text(3,4,Ans+Ans+Ans+"ND
:Pause "",1
:Line(-9,8,-2,8
:Text(3,41,"MOONLIGHT

ध्यान दें कि यह TI-84 + CE क्षमता का उपयोग करता है, जिसमें नवीनतम OS 1 सेकंड के लिए रुकता है। यह TI-84 + पर एक सिंटैक्स त्रुटि लौटाएगा। परीक्षण के लिए, आप उस पंक्ति को हटाकर 1 सेकंड के ठहराव को छोड़ सकते हैं। इसके अलावा ज़ूम, 6 को पहले दबाकर याद रखें ताकि आप डिफ़ॉल्ट विंडो सेटिंग्स पर हों, अन्यथा लाइन कमांड काम नहीं करेगा।


0

SpecBAS - 58 बाइट्स

1  ?"La La Land ";
2 WAIT 1e3
3 DRAW 0,4;80,0
4  ?"Moonlight"

प्रत्येक वर्ण 8x8 पिक्सेल का है, इसलिए 0,4 से सापेक्ष स्थिति 80,4 (80 को पहले समन्वय और 0 से दूसरे में जोड़ा जाता है ताकि यह एक ही रेखा पर रहता है) से एक रेखा खींचता है।

यहाँ छवि विवरण दर्ज करें


0

ओआईएल , 76 बाइट्स

↩︎⎋[9m
La La Land
⎋[0m Moonlight
4
1
10
20
4
14
10
9
20
6
5
4
0
4
1
4
2
89999

एक भागने चरित्र के ↩︎साथ और एक गाड़ी वापसी के साथ बदलें । ओआईएल में किसी भी प्रकार के स्लीप कमांड का अभाव होता है, इसलिए मैं एक लूप का उपयोग करके इसका अनुकरण करता हूं जो 89999 से लेकर 1. 1 तक गिना जाता है। यह मेरे कंप्यूटर पर लगभग एक सेकंड लेता है, लेकिन यह आपके ऊपर नहीं हो सकता है।

पहले 3 पंक्तियों को दुभाषिया द्वारा अनदेखा किया जाता है, फिर यह प्रिंट ( 4) दूसरी पंक्ति (पंक्ति 1; "ला ला लैंड")। निम्न संरचना वह लूप है जो अंत में बड़ी संख्या को घटाता है जब तक कि यह 1 के बराबर न हो। अंत में, मैं पहले 3 पंक्तियों को प्रिंट करता हूं।


0

PHP, प्रतिस्पर्धा नहीं (64 बाइट्स)

<?=$s="\rLa La Land",sleep(1)?:wordwrap($s,1,--,1)," Moonlight";

का उपयोग करता है UTF-8: --के लिए खड़ा हैU+0336 - लेकिन मुझे पूरा यकीन है कि यह अकेले खड़े होकर काम नहीं करता है।

यदि ऐसा नहीं है, तो प्रयास करें ~"1I"या~I1-- (+3 या +1 बाइट्स) के बजाय ।

किसी फ़ाइल को संग्रहीत करने का समय नहीं है या यह जानने के लिए कि कंसोल को UTF-8 में कैसे सेट करें; इसलिए मैं इनमें से किसी का भी परीक्षण नहीं कर सका; लेकिन जो कोई भी हो सकता है: कृपया मुझे बताएं कि यह पूरी तरह से बीएस है या नहीं।


0

पॉवरशेल, 63 बाइट्स

केवल PowerShell ISE में काम करता है। गैर-प्रतिस्पर्धात्मक, चूंकि स्ट्राइकथ्रू को एक चार द्वारा स्थानांतरित किया जाता है और मैं इसे ठीक नहीं कर सकता।

'La La Land',('̶'*10+' Moonlight')|%{sleep 1;Write-Host $_ -N}

La̶ ̶L̶a̶ ̶L̶a̶n̶dlight चाँदनी

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