Pembuat kode dengan karakter unik


35

Tantangan

Tugas Anda adalah menulis sepotong kode yang menghasilkan sepotong kode lain. Kode itu pada gilirannya harus mengeluarkan lagi kode lain sampai kode akhir mengeluarkan bilangan bulat 1 . Rantai berakhir saat pertama kali 1 dihasilkan.

Tidak ada program Anda yang dapat membagikan karakter apa pun (ada satu pengecualian di bagian Aturan).

Pengajuan yang menang akan menjadi pengajuan dengan rantai terpanjang. Tie-breaker akan menjadi total panjang kode terpendek.


Aturan:

  • Anda dapat menggunakan kedua fungsi, program, dan cuplikan. Anda dapat mengasumsikan lingkungan REPL.
  • Semua fungsi harus ditulis dalam bahasa yang sama
  • Simbol bahasa independen tidak diizinkan. Ini termasuk sebagian bahasa bebas simbol seperti Headecks.
  • Pemformatan output default secara opsional dapat diabaikan dalam output fungsi. Ini termasuk mengikuti baris baru,ans = dll.
  • Anda dapat menggunakan kembali karakter spasi (ASCII code point 32), tetapi perhatikan hal berikut:
    • Anda dapat menggunakan karakter spasi sebanyak yang Anda suka di salah satu fungsi, tetapi batasi hingga 5 di semua fungsi lainnya
    • Anda tidak boleh menggunakan kembali karakter apa pun jika titik kode 32 bukan spasi dalam bahasa Anda.
  • Tidak ada program yang dapat mengambil input

  • Panjang rantai minimal harus dua program.


Contoh:

Kode awal Anda adalah abc+cab+bac. Output ini:, foofoo*123yang pada gilirannya menghasilkan disp(~0), yang menghasilkan 1. Ini adalah rangkaian 3 program, dengan panjang gabungan 29 (tie breaker).




Untuk memastikan saya mengerti: program dapat menggunakan komentar, bukan? Maksudku, bagian dari kode yang "tidak berguna"
Luis Mendo

2
Apakah ekspresi sederhana diperbolehkan? Misalnya, bisa link akhir dari program Python menjadi 2^3, yang hanya akan mengevaluasi 1, atau apakah itu harus misalnya lambda:2^3, print(2^3), dll?
nneonneo

3
Dalam bahasa-bahasa di mana literal dapat menjadi program (seperti dalam banyak permainan golf), dapat 1berupa program dan output dari program itu atau apakah rantai berakhir kapan 1outputnya?
Emigna

Jawaban:


18

05AB1E , 5-rantai: 236 + 29 + 13 + 3 + 1 = 282 byte

10101100011010001101100010110110001111000111001110101001000000000010111100100110011011010110011000100110101001001101100001110001111010100100000100010010001010011101011001110001000001011010101111001110011110001010111100001110110C₁<Au¦н.V

Cobalah online!

yang mencetak program

633693S<J6bαð3<žQTÌ>è9663тαhJ

Cobalah online!

yang mencetak program

522472 2-255B

Cobalah online!

yang mencetak program

88ç

Cobalah online!

yang mencetak program

X

Cobalah online!

yang mencetak 1


8784>žxBdan aku mungkin KO. Kurangnya angka untuk konversi basis adalah omong kosong total kecuali Anda menghitungnya. Tujuannya, jika Anda ingin mengalahkan emigna, adalah menggunakan jumlah angka unik paling sedikit per iterasi. Jawabannya memerintah tertinggi karena angka 88 dalam iterasi kedua hingga terakhir. Benar-benar jawaban yang bagus.
Magic Octopus Urn

@MagicOctopusUrn: Kita bisa dengan mudah membebaskan 10dan membuat sesuatu dalam bentuk biner. Tapi saya tidak tahu apakah kita bisa menghasilkan program pertama dari biner tanpa B.
Emigna

2
@MagicOctopusUrn: Tugas Anda mungkin sedikit lebih sulit karena saya yakin saya memiliki 5 rantai;)
Emigna

2
@MagicOctopusUrn: Saya akan senang :) :) Ini adalah tantangan yang sangat menyenangkan!
Emigna

1
Selamat untuk mendapatkan rantai ke-5!
Chromium

12

Java 8, rantai 2 fungsi, 90 + 10 37 + 4 28 + 4 = 32 byte

o\u002D\u003E"\44\55\76"+2/2

Yang setara dengan:

o->"$->"+2/2

-57 byte terima kasih kepada @ OlivierGrégoire .

Cobalah online.

Yang mengembalikan String:

$->1

Cobalah online.

Yang mengembalikan integer:

1

\u0076\u002D\u003E\u0022\u0076\u002D\u003E\u0022+(3\u002D2)(59 byte + 4 byte). Aturan mengatakan "Tak satu pun dari program Anda dapat berbagi karakter", jadi v->1valid karena final 1bukan program.
Olivier Grégoire


@ OlivierGrégoire Saya tahu v->1mengembalikan 1 adalah valid, tetapi dalam jawaban asli saya \u0031akan berisi 1, dan v->1kemudian akan berisi 1 juga. Kombinasi yang bagus dari Java unicode dan Java biasa. Dan saya bermain golf 2 lebih banyak dengan mengganti (2/2)ke 2/2. (PS: Sudah ada jawaban Java rantai-3 oleh Jakob .)
Kevin Cruijssen

@ OlivierGrégoire Correction, saya bisa mengubahnya menjadi 28 + 4 dengan menggunakan "\44\55\76"bukan"\u0076\u002D\u003E"
Kevin Cruijssen

Golf bagus di atas milikku;) Saya belum memeriksa jawaban 3-rantai. Saya akan melakukannya sekarang.
Olivier Grégoire

10

R , 3-rantai 198 + 44 + 3 byte

`+`=`\143\141\164`;+"\143\141\164\050\151\156\164\124\157\125\164\146\070\050\143\050\070\070\055\071\055\071\054\071\071\071\055\070\070\071\055\070\055\070\054\070\070\055\071\055\071\051\051\051"

Cobalah online!

Pengembalian:

cat(intToUtf8(c(88-9-9,999-889-8-8,88-9-9)))

Cobalah online!

Pengembalian:

F^F

Cobalah online!

Kembali 1

Penjelasan:

Program pertama hampir sepenuhnya ditulis dalam representasi oktal, di mana setiap karakter ditulis sebagai di \xxxmana xxxkode ASCII dalam mode oktal. Dalam bentuk yang dapat dibaca manusia adalah:

`+`=`cat`;+"cat(intToUtf8(c(88-9-9,999-889-8-8,88-9-9)))"

Di sini, untuk menghindari penggunaan kurung bulat kami mendefinisikan ulang operator awalan +sama dengan catfungsi, maka kami menggunakannya untuk mencetak string berikutnya. Bahkan setelah menugaskan catuntuk +, yang terakhir masih menyimpan awalan operator "Status" dan hanya akan mengambil apa pun yang berikut sebagai parameter pertama.

Program kedua, cukup cetak karakter F^F mendapatkannya dari desimal ASCII:70,94,70

Karena dalam program pertama kami menggunakan representasi oktal, hanya angka 8dan 9bebas untuk digunakan; karenanya, kami memperoleh 70dan 94dengan beberapa perbedaan antara angka hanya dengan 8'sdan 9's.

Akhirnya, program terakhir, F^F, memanfaatkan ^fungsi (kekuatan) yang memaksa FALSEuntuk 0dan hitungan 0^0kembali1

Kredit untuk:

  • @ ngm untuk ide 2-rantai pertama
  • @ Giuseppe untuk petunjuk untuk menggunakan oktal dalam fungsi
  • @BLT dan @JayCe untuk menimpa gagasan +untuk menghindari tanda kurung

Versi sebelumnya :

R , 2-rantai 27 + 3 24 + 2 byte

cat(intToUtf8(c(49,76)))

Cobalah online!

Pengembalian:

1L

Cobalah online!

Pengembalian 1.


Yang bagus! Apakah catwajib?
JayCe

2
Yah berpotensi Anda dapat memiliki output sebagai string dengan "wri\164e"(function args)untuk menghindari tatau pengkodean serupa lainnya
Giuseppe

1
@Giuseppe @digEmAll Menurut komentar terakhir untuk pertanyaan itu cat(intToUtf8(c(49,76)))akan berfungsi dan sedikit lebih pendek. Tidak memperluas rantai.
JayCe

2
@digEmAll Lihat komentar BLT untuk jawaban saya untuk tantangan lain ... Saya pikir mungkin ada sesuatu di sini.
JayCe

2
Saya membuat jawaban ini sebagai Wiki Komunitas. Silahkan menambahkan ini dengan sedikit penjelasan.
ngm

8

Python 2 , 2-Chain, 7 + 44 = 51 byte

lambda:("7072696e74203"+`3-2`).decode("hex")

dan

print 1

Cobalah online!

Kode 16 basis diterjemahkan menjadi print 1, yang dikembalikan oleh fungsi anonim.


7

Perl 5, 3-rantai, 151 139 karakter (114 + 20 + 5)

&{"CORE::SYSWRITe"|"CORE::39372!4"}(STDOUT,"\x70\x72\x69\x6E\x74\47\x50\x42\x5A\3\22\47\x5E\47\43\43\43\43\43\47")

Keburukan di dalam &{ }evaluasi ke CORE::syswrite, dan sehingga string hex-escaped dicetak ke output standar sebagai:

print'PBZ^C^R'^'#####'

Harap dicatat bahwa ^ C dan ^ R di atas mewakili karakter kontrol literal. (Dan jangan bingung dengan literal^ tanda yang terjadi di antara dua string.)

Program ini pada gilirannya menghasilkan:

say 1


6

Cjam, 4-chain, 28 + 20 + 3 + 1 = 52 byte

Cuplikan 1:

"tugshrm\x18$\x18vj\x1b\x07um~l$\x1b"{71^}%

Cuplikan 2:

32 4/5*_c_1-\@2*9+c\

Cuplikan 3:

'Y(

Cuplikan 4:

X

Yang kemudian dicetak 1.

Cobalah online!

catatan:

  1. Karena Cjam tidak memiliki interpretasi untuk karakter melarikan diri, yang ada di cuplikan 1 hanya ada untuk tampilan web yang lebih baik. Anda harus menggunakan karakter aktual yang sesuai untuk menjalankan cuplikan.

  2. Jika saya tidak dapat mengurangi lebih banyak karakter, maka pekerjaan yang baik untuk @Emigna untuk 05AB1Ejawabannya!


Dalam cuplikan 2 Anda telah menggunakan kembali karakter yang 1digunakan dalam cuplikan 1
digEmAll

Tolong lihat catatan saya. Karakter melarikan diri adalah untuk kenyamanan pembaca, di Cjam tidak ada karakter melarikan diri, atau mereka tidak akan menerjemahkan ke dalam karakter yang Anda pikir akan dalam bahasa seperti C atau python. Saat menguji, Anda benar-benar harus memasukkan karakter secara manual alih-alih menggunakan karakter pelarian.
Chromium

ah saya mengerti, terima kasih
digEmAll

5

Excel, Rantai 2, 27 + 3 byte

=CHAR(45)&CHAR(45)&CHAR(49)

Tidak yakin apakah ini OK ...


2
Bukankah seharusnya CHAR(61)&di awal juga ada rantai 2?
Emigna

5
Anda harus menggunakan bahasa perancis alih-alih bahasa Inggris ( CHARmenjadi CAR, 3 byte disimpan), tidak yakin apakah bahasa lain mengurangi lebih banyak
Sefa

1
@Emigna Tapi sepertinya mengetikkan --1sel dan tekan enter, itu hanya akan ditampilkan 1di layar ...
tsh

@ tsh: Hmm, ya sepertinya Excel menambahkan =secara implisit jika Anda mengetik --1.
Emigna

1
@Neil Excel tidak menyisipkan =tanda untuk +1(tetapi memang untuk --1), jadi saya tidak akan menganggapnya sebagai ekspresi. Dan saya tidak yakin apakah hanya menulis 1dalam sel dan menyebutnya "output 1" valid. Itu sebabnya --1digunakan.
tsh

5

bytecode x86, Rantai 2, 10 + 4 byte

(Dirakit dengan FASM, format PE)

ÇA.Ï?¿<÷Y.menghasilkan 1À@Ãalamat di sebelahnya dan menjalankannya, yang mengembalikan 1dalam eax (sesuai panggilan cepat). Dalam kedua kasus yang .sebenarnya mewakiliA atau LF.

Dalam hex: C7 41 0A CF 3F BF 3C F7 59 0Adan 31 C0 40 C3.

Dibongkar:

mov dword ptr ds:[ecx+A],3CBF3FCF
neg dword ptr ds:[ecx+A]         

menghasilkan

xor eax,eax                      
inc eax                          
ret                              

Ini (ab?) Menggunakan fakta bahwa titik masuk program disimpan dalam ecx, dan kemudian menulis kebalikan dari kode yang akan dieksekusi ke alamat 10 byte lebih dan meniadakannya.

Mungkin atau mungkin tidak pecah jika dirakit dengan apa pun kecuali fasme, untuk apa pun kecuali PE atau dengan titik masuk yang berbeda.


5

JavaScript REPL, banyak byte, 4 iterate

(+!![]+[!![]+!![]+!![]+!![]]+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(+!![])+(+!![])+![]+![]+(!![]+!![]+!![])+![]+(!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![]+!![])+![]+![]+(+!![])+(!![]+!![])+![]+(+!![])+(!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(+!![])+(!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(+!![])+(!![]+!![]+!![])+![]+![]+(!![]+!![]+!![])+![]+(!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![]+!![])+![]+![]+(+!![])+(!![]+!![])+![]+(+!![])+(!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(+!![])+(!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(+!![])+(!![]+!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(+!![])+(+!![])+![]+![]+(+!![])+(!![]+!![])+![]+(+!![])+(+[])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(+!![])+(+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(+!![])+(!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(+!![])+(+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(+!![])+(+!![])+![]+![]+(+!![])+(!![]+!![])+![]+(+!![])+(+[])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(!![]+!![])+![]+(!![]+!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![])+![]+![]+(+!![])+![]+(!![]+!![])+![]+(!![]+!![]+!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(+!![])+(!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(!![]+!![]+!![]+!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(!![]+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(+!![])+(+!![])+![]+![]+(+!![])+![]+(+!![])+(+[])+![]+(+!![])+(+!![])+![]+(+!![])+(!![]+!![]+!![]+!![]))[(![]+[])[!![]+!![]+!![]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]][([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+[]]+([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(!![]+[])[+!![]]]((!![]+[])[+!![]]+(!![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+!![]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]]+[])[!![]+!![]+[+[]]]+([][(!![]+[])[!![]+!![]+!![]]+([][[]]+[])[+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([![]]+[][[]])[+!![]+[+[]]]+(!![]+[])[!![]+!![]+!![]]+(![]+[])[!![]+!![]+!![]]]()+[])[!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(![]+[])[+!![]])()([][[]]))[+!![]+[+[]]]+(![]+[])[!![]+!![]]+([![]]+[][[]])[+!![]+[+[]]]+(!![]+[])[+[]]](![])[(+(!![]+!![]+[+[]]+(+!![])+(!![]+!![])+(!![]+!![]+!![]+!![]+!![])))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([]+[])[([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+[]]+([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(!![]+[])[+!![]]][([][[]]+[])[+!![]]+(![]+[])[+!![]]+([]+(+[])[([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+[]]+([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(!![]+[])[+!![]]])[+!![]+[+!![]]]+(!![]+[])[!![]+!![]+!![]]]](!![]+!![]+!![]+[+[]])](([]+[])[([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]][([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+[]]+([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(!![]+[])[+!![]]]((!![]+[])[+!![]]+(!![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+!![]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]]+[])[!![]+!![]+[+[]]]+([][(!![]+[])[!![]+!![]+!![]]+([][[]]+[])[+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([![]]+[][[]])[+!![]+[+[]]]+(!![]+[])[!![]+!![]+!![]]+(![]+[])[!![]+!![]+!![]]]()+[])[!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(![]+[])[+!![]])()(+[]+[![]])[!![]+!![]+!![]]+(![]+[])[+!![]]+(!![]+[])[+!![]]+(+[![]]+[][(!![]+[])[!![]+!![]+!![]]+([][[]]+[])[+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([![]]+[][[]])[+!![]+[+[]]]+(!![]+[])[!![]+!![]+!![]]+(![]+[])[!![]+!![]+!![]]]())[+!![]+[+!![]]]+(!![]+[])[+[]]][([][(!![]+[])[!![]+!![]+!![]]+([][[]]+[])[+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([![]]+[][[]])[+!![]+[+[]]]+(!![]+[])[!![]+!![]+!![]]+(![]+[])[!![]+!![]+!![]]]()+[])[!![]+!![]]+([![]]+[][[]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+([][[]]+[])[!![]+!![]]]([][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]][([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+[]]+([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(!![]+[])[+!![]]]((!![]+[])[+!![]]+(!![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+!![]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]]+[])[!![]+!![]+[+[]]]+([][[]]+[])[+[]]+([][[]]+[])[+!![]]+(!![]+[])[!![]+!![]+!![]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]+[+[]]]+(![]+[])[+!![]]+(![]+[])[!![]+!![]])()(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+[+!![]]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]][([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+[]]+([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(!![]+[])[+!![]]]((!![]+[])[+!![]]+(!![]+[])[!![]+!![]+!![]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!![]]+([][[]]+[])[+!![]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]]+[])[!![]+!![]+[+[]]]+([][(!![]+[])[!![]+!![]+!![]]+([][[]]+[])[+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([![]]+[][[]])[+!![]+[+[]]]+(!![]+[])[!![]+!![]+!![]]+(![]+[])[!![]+!![]+!![]]]()+[])[!![]+!![]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(![]+[])[+!![]])()(![]+[![]])[+!![]+[+[]]]+(!![]+!![]+!![]+!![]+!![]+!![]+!![])+(!![]+!![]+!![]+!![])+([][(!![]+[])[!![]+!![]+!![]]+([][[]]+[])[+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([![]]+[][[]])[+!![]+[+[]]]+(!![]+[])[!![]+!![]+!![]]+(![]+[])[!![]+!![]+!![]]]()+[])[!![]+!![]]+(!![]+[])[!![]+!![]+!![]]+(!![]+!![]+!![])+(!![]+!![])+([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(![]+[])[+[]]+(!![]+!![]+!![]+!![]+!![]+!![])+(+[])+(!![]+!![]+!![]+!![]+!![])+([][[]]+[])[!![]+!![]]+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([][[]]+[])[+!![]]+(!![]+[])[+[]]+([]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+(!![]+[])[+!![]]]()[+!![]+[!![]+!![]]]+(!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![])))[([][(!![]+[])[!![]+!![]+!![]]+([][[]]+[])[+!![]]+(!![]+[])[+[]]+(!![]+[])[+!![]]+([![]]+[][[]])[+!![]+[+[]]]+(!![]+[])[!![]+!![]+!![]]+(![]+[])[!![]+!![]+!![]]]()+[])[!![]+!![]+!![]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!![]+[+[]]]+(![]+[])[!![]+!![]]+(![]+[])[!![]+!![]]])[+!![]+[+[]]]+([![]]+[][[]])[+!![]+[+[]]]+([][[]]+[])[+!![]]]([])
"\x60\44\x7b\55\x7e\x7b\x7d\x7d\44\x7b\55\x7e\x7b\x7d\x7d\x60\56\x73\x70\x6c\x69\x74\x60\x60\56\x74\x6f\x53\x74\x72\x69\x6e\x67\x60\x60"
`${-~{}}${-~{}}`.split``.toString``
1,1
1

Terlalu malas untuk mengoptimalkan kode JSFUCK

JavaScript REPL, 164 bytes, 3 iterate

mungkin bisa berkembang

[g=222222222222222222,e=2e40,f=2e23,f,2e40,n=2222e49,r=2e24,2e30,e,n,r,8e28,2e40,n,r,9e29,g].map(S=>String.fromCharCode(Math.log(S))).join([])
'\55\x7E\x7B\x7D'
-~{}
1

Cobalah online!


@JoKing saya tidak menggunakan 1pro lain, jadi yang pertama 1adalah program dan yang ke 2 hasilnya
l4m2

Apakah Anda tidak menggunakan kembali {}s?
Neil

@Neil Diperbaiki dan dioptimalkan
l4m2

"Rantai berakhir saat pertama kali aku keluar."
12Me21

5

CJam, 7-rantai, 92365 + 1819 + 79 + 14 + 9 + 3 + 1 byte

Program 92365-byte ini dicetak

YaY+`$1<mR1+1+1+1+1+1+11+1+1+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+1+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR1+1+1+1+1+11+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+1+YaY+`$1<mR1+1+1+1+1+11+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+1+1+1+11+YaY+`$1<mR1+11+11+YaY+`$1<mRYaY+`$1<mR1+1+1+1+1+1+11+1+1+1+1+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR1+11+11+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+11+11+11+11+11+1+1+1+1+YaY+`$1<mR11+11+11+11+11+11+11+1+1+1+1+1+1+1+1+1+1+1+1+1+1+YaY+`$1<mR1+1+11+11+11+11+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+1+1+1+11+11+1+1+YaY+`$1<mR11+11+YaY+`$1<mR1+1+1+1+1+1+11+1+1+1+YaY+`$1<mR1+11+11+YaY+`$1<mR1+11+11+YaY+`$1<mR1+11+11+YaY+`$1<mR1+1+11+YaY+`$1<mR1+11+YaY+`$1<mR1+1+1+1+1+11+11+1+1+YaY+`$1<mR11+11+11+11+11+11+11+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+YaY+`$1<mR1+1+1+1+1+

yang mencetak

34 4673 4656 4673 4656 5464 4656 4673 4673 4740 34 50 34707 5477]{N7=64777-,=}%

yang mencetak

";*;*Q*;;~"2f^

yang mencetak

9(9(S(99|

yang mencetak

88c

yang mencetak

X

yang mencetak 1.


5

MATL , 5 program, 404 + 159 + 35 + 4 + 1 = 603 byte

Mendapatkan ke 4 program itu sulit. 5 program sangat sulit!

'/'37 13+3+3+'3`/'37 13+3+3+77 13+37 13+3+3+'3`/'37 13+3+3+'3tttttttt`/'37 13+3+3+'3#'37 13+3+3+'3ttttt`'37 13+3+3+'3ttttt'37 13+3+3+77 13+'/'37 13+3+3+'3`<<tttttttttt'37 13+3+3+'3#'37 13+3+3+77 13+37 13+3+3+'3///<3////t````ttttt```<</////t`````t<3tttttttttt<3tt/'37 13+3+3+'3ttttttttt'37 13+3+3+'3`{'37 13+3+3+77 13+'y$'37 13+3+3+'3/////t`````ttI#I'77 13+3+'dk'hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh3_+''h

Cobalah online!

,50],5W50],50qqqqqqqq],50 50qqqqq]50qqqqq5W,50]99qqqqqqqqqq50 5W50,,,90,,,,q]]]]qqqqq]]]99,,,,,q]]]]]q90qqqqqqqqqq90qq,50qqqqqqqqq50]x5Wv!50,,,,,q]]]]]qqF FZah

Cobalah online!

Ini mungkin program favorit saya yang saya tulis di PPCG:

22 2 2**2-2-- 22Y2 2EEEEEEEEBPX)2) 

Cobalah online!

84
c

Cobalah online!

T

Cobalah online!

Penjelasan:

Setelah menghabiskan berjam-jam di program ini, saya tidak akan menulis seluruh penjelasan sekarang! Saya akan menulisnya nanti!

Ringkasan singkat:

T            -> Literal true = 1

84c          -> Convert 84 to its ASCII-character T

22 2 2**...  -> Calculate 84 using only 2, * and -
 22Y2        -> 22Y2 is a cell array with the name of all the months
 2EE..B      -> Is 512 in binary [1 0 0 ...]
 P           -> Flips is, [0 0 ... 1]
 X)          -> Uses the binary vector as index and gets the 10th element
             -> 'October'
2)           -> The second character, 'c'
             -> Resulting in the stack: 84, 'c' that's implicitly printed

,50]...      -> A string with ASCII character codes of '22 2...
             -> There's a lot of ,xyz], which means "do twice" and q which is decrement

Untuk mengonversinya menjadi string alih-alih kode karakter, kita perlu menyatukannya dengan menggunakan string h. Untuk mendapatkan string, tanpa menggunakan tanda kutip, atau pengubah XY, kami melakukan konversi basis dan mengonversi bilangan bulat menjadi spasi.


'/'37 13 ...  -> Concatenation of strings and character codes using only available numbers
3_+           -> Subtract 3 from all character codes to get the correct ones
''h           -> And concatenate with the empty string.

4

CJam, 10 program, 5.751.122.990 byte

Saya terlalu malas untuk golf itu ... Tapi ternyata saya tidak perlu golf itu untuk menjadi kompetitif. Tetapi tanpa bermain golf agak sulit untuk memposting solusi dalam sebuah jawaban.

Ini seharusnya bekerja dalam penerjemah JavaScript dalam teori, tetapi program ini terlalu lama untuk diuji di browser. Seharusnya output yang sama di Java interpreter kecuali untuk program terakhir. Tetapi mungkin juga kehabisan memori dalam Java interpreter untuk beberapa program pertama.

Statistik

5683631402 bytes, used )\_l
  65027874 bytes, used %&<>WXehrstu{|} and newline
   2247044 bytes, used +DEFHIS~
    199997 bytes, used ,38=[]`
     15352 bytes, used -25:N and space
      1181 bytes, used 67c
        84 bytes, used #'(@CKMTgkp
        21 bytes, used !"$?BJLQR^fijo
        16 bytes, used */4AGYZabdy
        19 bytes, used .09
         1 byte,  used 1

Byte pertama

l)__)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))...
\n{s}sX>X<eu{h}sX>X<eu{\n}sX>X<{{XXXXXXX}seeseeseeW>{X<{|}%}%}%{|}sX>X<{{X}se...
SH+~+E+E+E+SH+~+H+E~+SH+~+H+E~+SI+~+H+D+D+SI+~+I+E+E+SH+~+H+E~+SF+~+E+SD+~+D+...
[33]`3=,3333=[33]`3=,388333=[8]`88=,8333=[8]`88=,8333=[8]`88=,8338=[8]`88=,33...
N:--25--22- 2-N:--25--22- 2-N:--22--22-N:--25--22- 2-N:--25--22- 2-N:--22--22...
776776777767c677676676677667c66677666676776c776776777767c7667776c666776666767...
'#('@('T(('k(('T((('k(('K('p(''((('@('T(('k(('T((('k(('k('M('#(('#('C('g('g((...
"?RiQiJo$?RiQijL!"Bf^
4YbZbAd/4YbZbaG*
0.99999999999999999
1

\n adalah baris baru dalam program kedua.

Generator

"'#('@('T(('k(('T((('k(('K('p(''((('@('T(('k(('T((('k(('k('M('#(('#('C('g('g((((((((("

{_[i1:X;{_1&6+ \1$X*X5*:X;- 2/}16*;]__,,:)\f<Wf%10fb:c@#)<W%'c}%s

"67c"
"N:--22--22-
N:--25--22- 2-
N:--55--25--5--2--2-"N/ers

"N:-25 "
"[33]`3=,3333=
[33]`3=,388333=
[8]`88=,8333=
[8]`88=,8338=
[8]`88=,333=
[8]`88=,88="N/ers

"[]`38=,"
"SH+~+E+E+E+
SI+~+H+D+D+
SI+~+I+E+E+
SH+~+H+E~+
SI+~+I+D~+H+E~+
SF+~+E+
SD+~+D+D~+"N/ers

"SDEFHI+~"
"{s}sX>X<eu
{t}sX>X<{{XXXXXXXX}s{X}s{XXXXXX}erseeW>{X<{&}%}%}%
{ee}sX>X<eu
{&}sX>X<{{XXXXXXs}s{X}s{XXXXXX}erseeW>{X<{|}%eu}%}%
{h}sX>X<eu
{h}sX>X<eu{X|}%
{N}sX>X<{{XXXXXXX}seeseeseeW>{X<{|}%}%}%
{|}sX>X<{{X}seeW>{X<{|}%}%}%"N/'Nf/Nf*erN\+s

1>"l)_"o)\{'_oi10-')*o'\o}/i10-')*o


3

JavaScript (ES6), 2 fungsi, 31 + 4 = 35 byte

function(){return atob`Xz0+MQ`}

mengembalikan _=>1, yang mengembalikan1


Tidakkah pemanggilan fungsi harus menjadi bagian dari setiap program?
TehShrike

@TehShrike Fungsi secara eksplisit diizinkan dalam aturan. (Fungsi + kode doa akan menjadi program lengkap. Jadi, saya pikir itu tidak masuk akal.)
Arnauld

Oh, panggilan yang bagus, saya melewatkan itu 👍
TehShrike

3

Jelly ,  38 37 36  35 byte, Chain of 4

ØJiⱮ⁾ɱṾ⁽÷ṃ;ṾØJ⁽¡Ṡị

Cobalah online! ( 18 byte)

8220,163,187Ọ

Cobalah online! ( 13 byte)

“£»

Cobalah online! ( 3 byte)

!

Cobalah online! ( 1 byte)

18 + 13 + 3 + 1 = 35 byte

Bagaimana?

ØJiⱮ⁾ɱṾ⁽÷ṃ;ṾØJ⁽¡Ṡị - Main Link: no arguments
    ⁾ɱṾ            - list of charcters -> ['ɱ','Ṿ']
ØJ                 - yield the characters of Jelly's code-page
   Ɱ               - Ɱap across the two characters applying:
  i                -   first index of? -> [163, 187]
       ⁽÷ṃ         - 8220 (a base 250 compressed number)
          ;        - concatenate -> [8220, 163 187]
           Ṿ       - un-eval (get Jelly code) -> "8220,163,187"
                   - (Note: here a full program prints 8220,163,187 as it is the end
                   - of a leading constant chain due to the following constant)
            ØJ     - yield the characters of Jelly's code-page
              ⁽¡Ṡ  - 1206 (a base 250 compressed number)
                 ị - index into (1-indexed & modular, so gets the 182nd item, 'Ọ')
                   - implicit print (making the final output 8220,163,187Ọ)

8220,163,187Ọ - Main link: no arguments
8220,162,187  - list of numbers -> [8220, 162, 187]
            Ọ - cast ordinals to characters -> ['“','£','»']
              - implicit print (flat Jelly lists print as if strings so outputs “£»)

“£» - Main link: no arguments
“   - open string-literal
 £  - the content of the string-literal
  » - close it interpreting as a compressed string
    - this yields ['!']
    - implicit print (outputs !)

! - Main link: no arguments
! - factorial (of implicit input 0 - 0! = 1 as it is the empty product)
  - implicit print (outputs 1)

3

Python 2 , 3 snippet, 68 + 12 + 3 = 83 byte

chr(44*2+4).join([chr(42&54),`45+25`,`42*2+52`,`4*4+55`+chr(42&54)])

yang menghasilkan string literal literal:

"\70\136\71"

yang menghasilkan:

8^9

Yang akhirnya menghasilkan 1.

Cobalah online!


3

Java 8, 3 program, 431 byte

Program 1, 332 byte

Sebuah lambda dari satu (kosong) parameter jenis apa pun ke String.

x\u002D\u003E"\151\156\164\40\157\75\70\46\70\52\70\54\156\75\53\53\157\53\70\73\156\145\167\40\123\164\162\151\156\147\50\51\53\50\143\150\141\162\51\50\47\171\47\53\157\51\53\50\143\150\141\162\51\50\47\54\47\53\157\51\53\50\143\150\141\162\51\50\47\75\47\53\157\51\53\156\53\50\143\150\141\162\51\50\47\56\47\53\157\51\53\156\73"

Ini hanya lambda dengan karakter panah Unicode-escaped mengembalikan teks dari program kedua yang dikodekan dengan urutan escape oktal.

Cobalah secara Online

Program 2, 93 byte

Cuplikan yang menghasilkan a String.

int o=8&8*8,n=++o+8;new String()+(char)('y'+o)+(char)(','+o)+(char)('='+o)+n+(char)('.'+o)+n;

Cobalah Online (dengan pengembalian ditambahkan)

Program 3, 6 byte

Sebuah lambda dari satu (kosong) parameter jenis apa pun ke int.

z->9/9

Cobalah secara Online


2
Jawaban bagus! Anda dapat golf \166untuk \44untuk -1 byte, karena $juga merupakan nama variabel yang valid. Cobalah online , menghasilkan $->9-8( Coba online. )
Kevin Cruijssen

Setelah beberapa kali mencoba, tidak mungkin membuat rantai 3 dengan Java. Anda perlu yang \uXXXXdi kode pertama untuk menghindari ->. Kemudian Anda perlu baik return(fungsi) atau System.out(potongan atau fungsi), keduanya mengandung uyang sudah Anda digunakan dalam \uXXXX. Jadi saya pribadi berpikir entri ini tidak valid dan saya menurunkannya sesuai.
Olivier Grégoire

@ OlivierGrégoire Cuplikan secara eksplisit diizinkan dalam tantangan ini (aturan pertama). Selain itu, System.console().printfbisa digunakan untuk mencegah penggunaan u. Hal serupa dilakukan dalam jawaban ini dan saya juga menggunakannya dalam dua jawaban saya ini .
Kevin Cruijssen

Terima kasih @KevinCruijssen tetapi cuplikan masih harus ditampilkan. Inilah perbaikan di sekitar semua: x->"\146\157\162\50\143\150\141\162\40\44\72\156\145\167\40\143\150\141\162\133\135\173\47\171\47\54\47\54\47\54\47\75\47\54\47\70\47\54\47\56\47\54\47\70\47\175\51\123\171\163\164\145\155\56\143\157\156\163\157\154\145\50\51\56\160\162\151\156\164\146\50\53\53\44\53\156\145\167\40\123\164\162\151\156\147\50\51\51\73"(319 byte) berubah menjadi for(char $:new char[]{'y',',','=','8','.','8'})System.out.printf(++$+new String());(89 byte) berubah menjadi z->9/9(6 byte). Total: 404 byte.
Olivier Grégoire

Saya bermaksud System.console()untuk program ke-2, yang benar 89 byte (sedangkan yang System.outmembuatnya 83 byte).
Olivier Grégoire

2

SmileBASIC, rantai 3, 375 byte

k=59599-44444print c("sbanm",k,4,"")+c("sbwav",44-5,2,"")+c("sbwav",594-222,4,"")+c("game5vs",4528-442,2,"")+c("sbanm",k,4,"")+c("sbanm",72,5-4,"")*2+c("sbwav",594-222,4,"")+c(sbwav,854-44,2,"")+c("staffroll",259+2,9,"")+c("ex8techdemo",24455,5-2,"")+key(4)[.]def c(f,s,l,q)for i=.to-5+l+4q=q+load("txt:sys/"+f,.)[s+i]next:return q:end

Output:

CHR$63OUT A$CHR$33OUT B$PRINT A$;B$;L

Output:

?!0

Output:

1

2

PHP 7.0, 2-chain, 35 + 8 = 43 byte

Saat menulis jawaban awal saya, saya menyadari saya hanya bisa menggunakan base64 encode gema kedua. Ini mencukur 11 byte, jadi ini dia. Anda dapat menemukan ide asli saya di bawah ini juga.

Jalankan menggunakan php -r:

echo base64_decode('RUNITyAxPz4=');

Output ini:

ECHO 1?>

Yang kemudian jelas mencetak:

1

Keluaran:

Kode dijalankan dengan tambahan && gema agar mudah dibaca
Kode saya saat dijalankan di terminal. && echo yang ditambahkan hanya untuk keterbacaan.

Komentar:

Tidak banyak yang benar-benar terjadi. Sangat sederhana setelah Anda tahu tentang "?>" Secara implisit bertindak sebagai ";". Bagian "rumit" adalah untuk mencari tahu apa yang harus dikodekan:

  • ECHO 1; menjadi RUNITyAx O w == , jadi kami memiliki tabrakan huruf O besar. Tidak baik.
  • gema 1; menjadi ZWN o byAxOw == , jadi sekarang ada dua yang lebih rendah kecil. Malang!
  • ECHO 1?> Menjadi RUNITyAxPz4 = . Panjangnya sama dan tidak ada karakter yang bertabrakan. Jadi begitu!

Atau kita juga bisa menggunakan "echo" dan "ECHo" (36 + 7 = 43 byte).

echO base64_decOde('RUNIbyAxOw==')?>
ECHo 1;
1

Kami juga dapat mengganti; dan?> sekitar menggunakan itu. Ini bekerja sama baiknya dan semuanya memiliki skor yang sama.



Solusi awal saya:

PHP 7.0, 2-chain, 44 + 10 = 54 byte

Ini adalah yang terbaik yang bisa saya lakukan pada awalnya. Saya mengerti bahwa "karakter unik" berarti "gema" tidak sama dengan "ECHO". Semoga saya benar!

Jalankan menggunakan php -r:

echo strtoupper(urldecode('echo true%3b'))?>

Output ini:

ECHO TRUE;

Yang pada gilirannya memberi kita nomor kita:

1

Keluaran:

Kode dijalankan dengan tambahan && gema agar mudah dibaca
Kode saya saat dijalankan di terminal. && echo yang ditambahkan hanya untuk keterbacaan.

Beberapa komentar:

  • Saya pikir Anda hanya dapat melakukan 2-rantai dalam PHP karena memerlukan ";" pemisah instruksi.
    • Anda bisa menyiasati ini sekali dengan menggunakan "?>", Yang menyiratkan titik koma, tetapi jelas tidak dapat menggunakannya kembali untuk kedua kalinya
    • Ini adalah bagian tersulit bagi saya untuk mencari tahu. Saya tidak tahu ini bekerja sebelumnya, atau bahwa "?>" Bahkan tidak diizinkan ketika dijalankan melalui php -r
  • Dengan menggunakan strtoupper () saya bisa menulis kode untuk rantai # 2 dalam huruf kecil, sedangkan outputnya jelas huruf besar. Mode mudah di sana!
  • urldecode () memungkinkan saya untuk menyandikan ";" sebagai "% 3b"
  • Itu semua benar-benar ada, tidak ada yang terlalu menarik

Terima kasih atas tantangannya, saya belajar sesuatu hari ini!


2

Lua, 2 rantai, 83 + 8 = 91 byte

load(('').char(0x70,0x72,0x69,0x6E,0x74,39,0x70,0x72,0x69,0x6E,0x74,34,49,34,39))()

Keluaran

print"1"

Output yang mana

1



1

Raeda , 2 rantai, 31 + 3 = 34 byte

Cuplikan 1:

(`X.Z`/"")|ord _|push _+3|chr _

Cobalah online!

Cuplikan 2:

[1]

Cobalah online!

Itu adalah cuplikan, karena setiap program Rda yang valid harus menyertakan main{...}mengasapi. Mereka juga program Reda REPL yang valid.


1

dc , 3 program, 48 byte

Pertama:

82 2-adAArdAAI2*-rAAI-I2/2^-f

Menghasilkan yang kedua:

75
P
90
P
110
P

Menghasilkan yang ketiga:

KZn

Hasil 1.

Cobalah online!(memiliki beberapa kode stack-clearing dan newline-printing dilemparkan untuk membuat ketiga bit berjalan dalam sekali jalan).

Mungkin yang terbaik untuk memulai pada program tiga KZn,. Hanya ada beberapa cara untuk mencetak sesuatu dc, dan saya menyadari pada tahap ini saya mungkin akan terjebak dengan salah satu patau nkeduanya, keduanya berada di 100-an dalam ASCII desimal. Ini berarti bahwa saya hampir pasti harus menghasilkan 1 alih-alih hanya menggunakan program 1n. Kmendorong presisi saat ini (default: 0) ke stack, danZ mendorong jumlah digit top-of-stack, yang memberi kita angka 1 untuk dicetak.

Program kedua cukup mudah. Pmencetak karakter dengan nilai ASCII yang diberikan, jadi kami mencetak 75( K)90 (Z ) dan akhirnya110 ( n), yang bekerja sangat baik. Ini juga berarti bahwa, selain dari 1 yang disebutkan di atas, saya tidak dapat menggunakan angka 5, 7, 9, atau 0 di tempat lain. Saya juga membutuhkan metode selain Puntuk mengubah angka menjadi karakter.

Program pertama, kemudian, harus membuat empat angka tanpa menggunakan angka 1, 5, 7, 9, atau 0. Perlu membuat 80(nilai ASCII P) 82 2-:; 75: AA(110) I-(kurangi input radix default, 10) I2/(jadi, 5) 2^(jadi, 5 ^ 2, 25) -(75); 90: AA(110) I2*(dua kali radix input standar 10, jadi 20) -(90); dan 110: yah, hanya saja AA. Setelah membuat 80, kita gunakana untuk mengonversi angka menjadi string. Ada beberapa perintah everse rdan duplicate di sana untuk meletakkan Ps di tempat yang tepat, dan akhirnya kita mencetak seluruh tumpukan denganf .

Aku cukup yakin aku tidak mengacaukan ini, tapi kepalaku memang berputar sedikit ...


1

05AB1E , 5 + 3 = 8 byte

ght<n

Cobalah online!

yang langsung kembali kelelawar

Saya mengambil output 1.0 tidak sama dengan 1, jadi saya menjalankan kode itu:

1.0

Cobalah online!

yang kembali

1

Dan begitulah!

Jumlah program = 2


Selamat datang di PPCG.
Muhammad Salman

Saya hanya mencoba menulis hal-hal acak dan melihat apa yang saya dapatkan. Juga, orang mungkin menggunakan program mesin turing.
Caleb Evans

Anda dapat menghapus h(konversi ke heksadesimal). The g(dapatkan panjang, default 0) dengan t(kuadrat-akar) sudah memberikan desimal 0.0. Dengan< (berkurang 1) menjadi -1.0dan kemudian n(kuadrat) mengubahnya menjadi 1.0. Anda juga bisa mengganti <ndengan >(naik 1). ;) Jadi totalnya adalah 3 byte ( gt>). Atau Anda dapat menggunakan Xt( 1dan root-square). PS: Saya tidak yakin apakah 1.0untuk 1adalah bagian yang sah dari rantai. Saya sudah meminta OP untuk memverifikasi. Selamat datang di PPCG dan nikmati masa tinggal Anda.
Kevin Cruijssen

nah, komputer memproses string '1.0' berbeda dari '1'.
Caleb Evans

0

Ruby, 2-chain, 24 + 3 = 27 byte

$><<(''<<56+56<<' '<<49)

Output adalah

p 1
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.