In giải Oscar Phim hay nhất


49

Thử thách này là để tưởng nhớ người chiến thắng Phim hay nhất tại Oscar 2017, La La Land Moonlight!


Thử thách của bạn là in văn bản

La La Land
tạm dừng một giây, sau đó thay đổi văn bản để hiển thị

Ánh trăng La La Land
Văn bản gốc (La La Land) phải có gạch ngang . Điều này có thể đạt được bằng cách xóa màn hình, vẽ lên trên văn bản gốc hoặc bằng bất kỳ giải pháp thông minh nào khác.

Đây là một để các byte thấp nhất sẽ thắng. Luật golf tiêu chuẩn được áp dụng.


Tuyệt vời! Thử thách của tôi đã được đón nhận rất tốt, nó đã được đăng trên Twitter
vikarjramun

Tôi tự hỏi nếu bất kỳ ngôn ngữ có thể sử dụng thực tế, La La La(nd)mô hình
12Me21

Câu trả lời:


13

Thạch , 31 byte

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

Đã thử nghiệm với xterm và LANG=en_US. Không hoạt động trên TIO vì một số lý do.

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..

xác minh

chụp màn hình

Lý lịch

Câu trả lời này sử dụng các ký tự điều khiểncác chuỗi thoát ANSI .

  • 0d( <CR>) được sử dụng để trở về đầu của lớp lót sau khi in La La Land .

  • 9b 39 6d( <CSI> 9 m) được sử dụng để kích hoạt văn bản đình công trước khi in La La Land lần thứ hai.

  • 9b 6d( <CSI> m) được sử dụng để đặt lại tiền cảnh và hậu cảnh về chế độ mặc định, do đó hủy kích hoạt tấn công trước khi in Moonlight .

Làm thế nào nó hoạt động

“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

Vim, 37 byte

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

Một giải pháp khá đơn giản.

Đây là một hình ảnh động của nó đang chạy:

nhập mô tả hình ảnh ở đây


Nhưng không có giấc ngủ :(
Cruncher

1
@Cruncher Có đấy! gsNgủ một giây.
DJMcMayhem

Thật thú vị, làm thế nào để bạn thường chạy này? Bởi vì tôi đã nhập cái này vào vim và nó hoạt động, nhưng nó mất đi độ trễ của lần trễ thứ hai (trong khi gõ chậm, tôi thậm chí không nhận thấy sự chậm trễ khi tôi sao chép từ đây)
Cruncher

Nevermind, tôi đã tìm ra nó với macro. Rất tuyệt!
Cruncher

25

HTML, 153 148 byte

Sử dụng hoạt hình CSS. Chỉ được thử nghiệm trên Firefox và Chrome.

<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> La La Land </ s> <b> Ánh trăng </ b>


Bạn có thể đặt một trong các @keyframeskhai báo cuối cùng và loại bỏ hai dấu ngoặc nhọn đóng.
darrylyeo

@darrylyeo: Firefox từ chối áp dụng quy tắc nếu thiếu bất kỳ lỗi nào }, vì vậy thật không may, điều này không thể thực hiện được.
kennytm

19

HTML + JavaScript, 18 + 59 = 77 byte

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

Đáng buồn thay, dường như không có một cách hiệu quả để tái sử dụng O.innerHTML...


Sẽ setTimeout('a=O.innerHTML;a=a.strike()+" Moonlight"',1e3)làm việc?
Kritixi Lithos

1
@KritixiLithos Tôi không nghĩ vậy; sửa đổi asẽ không thay đổi O.innerHTML.
Sản phẩm ETH

18

Octave, 81 66 byte

15 byte được lưu nhờ @Stewie

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

Demo trực tuyến tại đây .

Mặc dù bản demo hiển thị hai ô riêng biệt, nhưng khi chạy trong phiên bản MATLAB trên máy tính để bàn, nó hiển thị âm mưu đầu tiên, đợi 1 giây và sau đó thêm chuỗi thứ hai vào cùng một âm mưu.

Vì Octave không hỗ trợ tấn công qua văn bản, thay vào đó tôi đã chọn hiển thị văn bản trong một axesđối tượng trong hình và hiển thị "gạch ngang" bằng cách hiển thị '--------'trên đầu văn bản ban đầu (ý tưởng ban đầu của @Stewie). Trước đây, tôi đã thực sự âm mưu một lineđối tượng để tấn công thông qua'La La Land'

nhập mô tả hình ảnh ở đây


1
Cách tiếp cận tuyệt vời ... :) Bạn có thể lưu 15 byte như thế này : text(0,.5,'La La Land');pause(1);text(0,.5,'---------- Moonlight').
Stewie Griffin

@StewieGriffin Cảm ơn! Cập nhật
Suever

Octave không cho phép bạn làm '-'*8+thay cho dấu gạch ngang?
Nic Hartley

@QPaysTaxes Thật không may.
Suever

1
Chết tiệt. Thêm một câu hỏi: Tại sao không vẽ nó tại (0, 0) hoặc (1, 0)? Có vẻ như một trong hai sẽ tiết kiệm cho bạn một byte (không .)
Nic Hartley

10

Bash, 70, 69 66 byte

-4 điểm nhờ Riley

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

Tín dụng cho câu trả lời của Sylvain Pineau trên AskUbfox cho cuộc tấn công


1
Tôi nghĩ rằng bạn có thể tiết kiệm một vài byte bằng cách sử dụng \rtrong lần thứ hai echothay vì clear. Ngoài ra, bạn không cần không gian trước lần thứ hai echo.
Riley

Điều này không in không gian sau khi văn bản nổi bật.
Loovjo

Ngoài ra, tôi nghĩ clear;nên đi đầu tiên. Và bạn có một không gian không cần thiết trong ; echo.
Erik các Outgolfer

2
Giải pháp ngắn hơn có thêm khoảng trắng sau văn bản nổi bật và thực hiện sửa đổi nội tuyến của văn bản in bằng mã ANSI \e[A, do đó không clearcần thiết. Để biết thêm thông tin về điều đó nhìn thấy tôi . s="La La Land";echo $s;sleep 1;echo -e "\e[A\e[9m$s\e[0m Moonlight"
seshoumara

1
Hoặcecho -n La La Land;sleep 1;echo -e "\r\e[9mLa La Land\e[0mMoonlight"
Chấn thương kỹ thuật số

9

QBasic, 61 byte

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

Sử dụng chế độ đồ họa, vẽ một đường thực tế thông qua văn bản. Đây là những gì nó trông giống như trong QB64 :

Ánh trăng

Mã này sẽ khá tự giải thích, nhưng đây là một phiên bản không được chỉnh sửa:

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 byte

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

Vì MATL không hỗ trợ mã điều khiển hoặc định dạng văn bản, giải pháp này chỉ đơn giản là xen kẽ giữa 'La La Land''-----------'nhanh nhất có thể để mô phỏng văn bản gạch ngang.

nhập mô tả hình ảnh ở đây

Giải trình

'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
Sáng tạo! Tôi thích nó
vikarjramun

3
+1 cho sự sáng tạo, nhưng không chắc chắn nếu nó đáp ứng các quy tắc.
DBX12

5

Bash + pv , 50 byte

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

Điều này được xây dựng dựa trên câu trả lời Bash của @ DigitalTrauma .

đại diện cho lợi nhuận vận chuyển ( 0x0d ), byte CSI ( 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

xác minh

chụp màn hình

Làm thế nào nó hoạt động

printf lặp lại chuỗi định dạng của nó nhiều lần nếu cần để làm cạn kiệt các đối số khác của nó. Vì có một lần xuất hiện %bvà hai đối số ( 9m\\0m\ Moonlight), nó sẽ tạo ra luồng byte sau.

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

Điều này không như sau.

  • \r đưa con trỏ đến đầu dòng.

  • La La Land được in nguyên văn.

  • \x9b9m kích hoạt văn bản đình công.

  • \0đặt điểm đánh dấu cuối dòng cho pv -0.

  • \rLa La Land làm giống như trước đây.

  • \x9bm đặt lại nền trước và nền về chế độ mặc định, hủy kích hoạt tấn công.

  • Moonlight được in nguyên văn.

Cuối cùng, pv -0L1in một dòng kết thúc null mỗi giây, đưa ra độ trễ mong muốn.


3
Có phải là một sự trùng hợp ngẫu nhiên đã giúp bạn chơi golf hay bạn đặc biệt muốn sử dụng nó với La La Land? Tôi thích nó!
BruceWayne

Một chuyến xe trở về là con đường ngắn nhất để quay trở lại điểm bắt đầu của dòng. Thực tế là nó được cách điệu như đôi khi chỉ là một sự trùng hợp hạnh phúc.
Dennis

Việc sử dụng pvthay vì sleepnhư mọi người là đẹp.
IQAndreas

1
@IQAndreas Ý tưởng sử dụng pvlà những gì tôi đã lấy từ câu trả lời Bash được liên kết, vì vậy tôi thực sự không thể tin vào điều đó.
Dennis

3

HTML + JavaScript, 10 + 63 = 73 byte

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


Trong trình duyệt nào hoạt động này?
Tít

2
@Titus Tôi nghĩ tất cả trong số họ, nhưng tôi đã xác nhận rằng nó hoạt động trong Chrome + Firefox cho đến nay
nderscore

3

PHP ( 86 75 69 byte)

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

Sử dụng ký tự UTF-8 U + 0336 cho lần tấn công.

Chỉnh sửa: Đã lưu 17 byte với các đề xuất @Titus đã nhận xét


1
sleepluôn trả về 0; vì vậy bạn chỉ có thể làm sleep(1)?:" ̶L̶a̶ ̶L̶a̶ ̶L̶a̶n̶d̶ Moonlight"(-3 byte). \rthay vì \033[10Dlưu 6 byte và bao gồm nó trong chuỗi cuối cùng sẽ lưu thêm 4.
Tít

Ồ, wow, mỗi người tôi có thể nhìn thấy, tôi đoán nó đi kèm với thực hành. Cảm ơn rất nhiều! nếu bạn muốn đưa ra câu trả lời của riêng mình để nhận được đại diện, vì 11 byte cải tiến của nó, tôi có thể xóa câu trả lời của mình và nâng cấp câu trả lời của bạn :)
madshvero

Không cần phải xóa một câu trả lời hợp lệ. Tôi không đưa ra câu trả lời của riêng mình khi đánh golf người khác câu trả lời - trừ khi OP không phản ứng. Dưới đây là ba byte nữa: Khoảng trống hàng đầu là không bắt buộc, cũng không phải là gạch ngang trên khoảng trống cuối cùng. Sử dụng UTF-8 như bộ ký tự không phải là gian lận; nhưng bạn có thể đề cập đến "sử dụng ký tự UTF-8 U+0336cho cuộc tấn công".
Tít

Oh và La La Land<?=thay vì <?="La La Land",tiết kiệm thêm 3 byte.
Tít

3

Pyth - 47 byte

Liệu điều nổi bật bây giờ.

K "La La Land" .d_1 "\ 033c" + j "\ u0336" K "Ánh trăng

Nó không hoạt động; bạn cần "ở phía trước cho +1.
Erik the Outgolfer

@EriktheOutgolfer> _ <không biết điều đó đã xảy ra như thế nào.
Maltysen

Một là gì <exmpty line>? Tôi sẽ đề nghị <pre>các thẻ.
Máy

3

C 87 86 byte

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

Phiên bản bị đánh cắp:

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

}

2
Bạn không cần khoảng trống giữa char*.
kennytm

Bạn cũng cần phải gọi f()trong phiên bản không có tiếng, không?
Rodrigo Hahn

@kennytm Thnaks để lưu 1 byte.Được cập nhật.
Abel Tom

1
@RodrigoHahn Theo mặc định, câu trả lời golf-code có thể là một chức năng hoặc chương trình , vì vậy chúng tôi không cần phải gọi f().
kennytm

3

HTML + JavaScript, 100 byte

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


Làm thế nào đến document.write ghi đè lên văn bản hiện có?
vikarjramun

nếu tài liệu của bạn được tải đầy đủ thì bạn đang sử dụng document.write (như đính kèm với một sự kiện hoặc hết thời gian) sẽ xóa tất cả HTML hiện có. tham khảo = w3schools.com/jsref/met_doc_write.asp
Sourav

3

GNU sed + ngủ, 63 58 byte

Chỉnh sửa: đã lưu 5 byte, dựa trên nhận xét của Digital Trauma

Chờ đợi giữa hai câu lệnh in không thể được thực hiện bằng cách sử dụng sed một mình và như vậy tôi gọi sleep 1. Có thể thực hiện một cuộc gọi hệ thống từ sed, sử dụng elệnh, đó là một phần mở rộng GNU.

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

Để tạo văn bản thông qua (dòng 3), "lớp phủ kết hợp nét dài", U + 0336 , được thêm vào mỗi ký tự. Sau đó, tôi di chuyển con trỏ lên 1 dòng, thay thế hiệu quả văn bản cũ khi in một cái gì đó mới, sử dụng cái gọi là Chuỗi thoát ANSI . Chúng được hiểu bởi thiết bị đầu cuối như các lệnh định dạng đặc biệt. Bạn có thể tìm thêm thông tin về họ ở đây .

hình ảnh gif

Giải trình:

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 Hoàn toàn quên mất \c, tìm thấy tốt đẹp! Đối với unicode đặc biệt đó, đây là lần đầu tiên tôi nghe về nó, nhưng nó thực sự hoạt động. Khi nó được in bởi trang này, nó được kết hợp với sdấu phân cách lệnh :, vì vậy hơi lạ khi thấy điều đó lúc đầu.
seshoumara

3

Java 7, 207 206 171 139 byte

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");}

Tôi hơi gian lận với câu trả lời đầu tiên này, vì tôi sử dụng unicode đình công .

Giải trình:

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

Java 7 (với AWT), 444 429 341 byte

Crossed out 444 vẫn là thường xuyên 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();}

Vì bảng điều khiển Java không có bất kỳ đánh dấu nào như tấn công, bạn sẽ phải sử dụng Java AWT. Và tốt, nếu bạn nghĩ Bảng điều khiển Java đã dài dòng, thì điều này thậm chí còn tồi tệ hơn (tôi biết, tôi biết, hầu hết các bạn thậm chí không thể tưởng tượng Java 7 còn tệ hơn nữa ..)

Giải trình:

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 đầu ra:

nhập mô tả hình ảnh ở đây


Tôi nghĩ bạn có thể xóa không gian trong String[] avà sử dụng 1e3thay vì1000
Kritixi Lithos

@KritixiLithos Không gian đó thực sự đã biến mất .. có lẽ bị trượt trong khi chơi golf. Đối với 1e3, đó là một gấp đôi, và Thread.sleepmong đợi một thời gian dài. 1000ngắn hơn (long)1e3. :)
Kevin Cruijssen

2
Ý bạn là Swingkhông Springphải không? Tôi suýt lên cơn đau tim! Spring in a codegolf ... Ngoài ra, để lưu byte, bạn có thể sử dụng AWT thay vì Swing.
Olivier Grégoire

@ OlivierGrégoire Ah, typo, tôi thực sự có nghĩa là Swing .. Và cảm ơn, AWT ngắn hơn, không cần Swing (hoặc Spring: P) cả.
Kevin Cruijssen

1
Tôi đã biến phiên bản AWT thành hàm (Java 7) với lớp bên trong ẩn danh. Tôi đã loại bỏ AttributionString vô nghĩa đầu tiên và đánh gôn nhiều hơn với tổng số 306 byte. Nếu bạn đi Java 8, nó vẫn là 302 byte. 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();}
Olivier Grégoire

2

Python 3, 90 byte

Sử dụng Unicode (U + 0336) để vượt qua, vì thiết bị đầu cuối macOS không hỗ trợ \e[9mlệnh đó .

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

L̶a̶ L̶a̶ L̶a̶n̶d̶ Ánh trăng


2

Arduino, 332 331 byte

Không cạnh tranh, chỉ để cho vui.

#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);}}

Hóa đơn nguyên vật liệu:

  • 1 x Arduino
  • 1 x LCD 16 x 2
  • 1 x 10K chiết áp
  • Điện trở 1 x 180 ohm

L̶a̶ L̶a̶ L̶a̶n̶d̶ Ánh trăng


1
Chào mừng đến với trang web. Tôi không biết Arduino tương tự như thế nào với C nhưng tôi khá chắc chắn rằng bạn có thể xóa khoảng trống trong#include
Thuật sĩ lúa mì

Theo tính toán của tôi, phần cứng có giá 30 byte (2 cho điện trở, 3 cho chiết áp, 1 cho cài đặt của nó, 10 (thay đổi) cho LCD và 14 cho dây (1 byte cho mỗi dây)). Tuy nhiên, đây chỉ là một gợi ý. Ngoài ra, TIO cho biết mã chỉ có 331 byte. Có một dòng mới?
Máy

@WheatWizard đúng vậy. Đã sửa nó!
fluxa

1
Điểm tốt @CalculatorFeline, nhưng trong trường hợp đó, chúng ta cũng nên tính chi phí phần cứng của tất cả các câu trả lời khác. Có thể thiết lập của tôi là rẻ nhất. : D
fluxa ngày

... D8 Tất cả đã qua D8
Máy

2

Python3, 99 byte

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

Nếu bạn l = 'La La Land không thể tránh các +ský tự cho -2? .
walpen

@walpen Tôi phải sử dụng hai lần, đó là lý do tại sao tôi lưu trữ nó trong s
Miguel


1

SmileBASIC, 45 byte

Một byte ít hơn nhờ thủ thuật kỳ diệu của 12Me21.

Theo như tôi biết thì SB không có các ký tự gạch ngang, nên tôi đã sử dụng GLINEthay thế. Rõ ràng giả định một màn hình rõ ràng, sử dụng ACLSnếu bạn cần.

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

1

AHK, 102 byte

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

Tôi đã gian lận một chút để có được văn bản gạch ngang bằng cách sử dụng ký tự unicode lớp phủ dài kết hợp . Điều này có thể tạo ra một sự xuất hiện kỳ ​​lạ tùy thuộc vào thiết lập của bạn. Notepad cho một diện mạo tốt.

Mã đang hoạt động


AutoHotkey rõ ràng không phải là ngôn ngữ hiệu quả nhất cho việc này nhưng nó là một thử thách thú vị. Hãy cẩn thận nơi bạn chạy nó bởi vì nó không tạo ra màn hình của riêng nó và xóa sạch tất cả văn bản của bất kỳ cửa sổ nào đang hoạt động.


1

Swift, 392 byte

Swift + UIKit thực sự không lý tưởng để chơi golf! Chạy cái này trong sân chơi XCode và kết quả sẽ được hiển thị trong khung xem trước.

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

xem trước


l.textColor=UIColor.redcần thiết?
Albert Renshaw

dường như mặc định là văn bản màu đen trên nền đen
Matt

0

Thạch , 41 byte

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

Không hoạt động trên trình thông dịch trực tuyến.


Tại sao không? Khả năng tương thích có thể được thêm vào với giá rẻ?
Máy

@CalculatorFeline Không, Dennis phải triển khai mã kiểm soát để nó hoạt động và hiện tại nó không phải là ưu tiên của anh ấy.
Erik the Outgolfer

Bạn có thể đưa ra một ảnh chụp màn hình / ảnh động của đầu ra không?
ʰᵈˑ

@ Tôi có thể làm, mặc dù không có gì bảo đảm. Trong thời gian chờ đợi, bạn có thể tải xuống trình thông dịch và tự kiểm tra nó :)
Erik the Outgolfer

0

Python (137 byte)

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

2
Bạn không cần không gian sau import. Tôi cũng đề nghị lưu "La La Land" như một biến số.
Thuật sĩ lúa mì

0

TI-BASIC, 57 53 byte

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

Lưu ý rằng điều này sử dụng khả năng TI-84 + CE với HĐH mới nhất để tạm dừng trong 1 giây. Điều này sẽ trả về lỗi synthax trên TI-84 +. Để kiểm tra, bạn có thể bỏ qua tạm dừng 1 giây bằng cách xóa dòng đó. Ngoài ra, hãy nhớ nhấn Zoom, 6 trước để bạn ở cài đặt cửa sổ mặc định, nếu không lệnh dòng sẽ không hoạt động.


0

SpecBAS - 58 byte

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

Mỗi ký tự là 8 x 8 pixel, do đó, vẽ một dòng từ 0,4 đến vị trí tương đối 80,4 (80 được thêm vào tọa độ đầu tiên và 0 đến thứ hai để nó nằm trên cùng một dòng).

nhập mô tả hình ảnh ở đây


0

DẦU , 76 byte

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

Thay thế bằng một nhân vật thoát hiểm và ↩︎bằng một chiếc xe ngựa trở về. DẦU thiếu bất kỳ loại lệnh ngủ nào, vì vậy tôi mô phỏng nó bằng cách sử dụng vòng lặp đếm ngược từ 89999 đến 1. Mất khoảng một giây trên máy tính của tôi, nhưng nó có thể không phải trên máy tính của bạn.

3 dòng đầu tiên bị người phiên dịch bỏ qua, sau đó in ( 4) dòng thứ hai (dòng 1; "La La Land"). Cấu trúc sau đây là vòng lặp giảm số lượng lớn ở cuối cho đến khi nó bằng 1. Cuối cùng, tôi chỉ in 3 dòng đầu tiên.


0

PHP, không cạnh tranh (64 byte)

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

sử dụng UTF-8: --là viết tắt của U+0336- nhưng tôi khá chắc chắn rằng nó không hoạt động độc lập.

Nếu không, hãy thử ~"1I"hoặc ~I1thay vì --(+3 hoặc +1 byte).

Không có thời gian để lưu trữ nó vào một tệp hoặc tìm ra cách đặt bàn điều khiển của tôi thành UTF-8; vì vậy tôi không thể kiểm tra một trong hai thứ này; nhưng bất cứ ai có thể: xin vui lòng cho tôi biết thời tiết này có hoàn thành BS hay không.


0

Powershell, 63 byte

Chỉ hoạt động trong PowerShell ISE. Không cạnh tranh, vì tấn công được thay đổi bởi một char và tôi không thể sửa nó.

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

L̶a̶ L̶a̶ L̶a̶n̶d̶ Ánh trăng

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.