Generatore di codice con caratteri unici


35

Sfida

Il tuo compito è quello di scrivere un pezzo di codice che produca un altro pezzo di codice. Tale codice deve a sua volta generare un altro codice fino a quando il codice finale non genera l'intero 1 . La catena termina la prima volta che viene emesso 1 .

Nessuno dei tuoi programmi può condividere caratteri (c'è un'eccezione nella sezione Regole).

La presentazione vincente sarà la presentazione con la catena più lunga. Il tie-breaker avrà la lunghezza del codice totale più breve.


Regole:

  • È possibile utilizzare entrambe le funzioni, i programmi e i frammenti. È possibile presupporre un ambiente REPL.
  • Tutte le funzioni devono essere scritte nella stessa lingua
  • Le lingue indipendenti dai simboli non sono consentite. Ciò include lingue indipendenti parzialmente da simboli come Headsecks.
  • La formattazione di output predefinita può facoltativamente essere ignorata nell'output di una funzione. Ciò include le nuove righe finali, ans =ecc.
  • È possibile riutilizzare il carattere spazio (punto di codice ASCII 32), ma tenere presente quanto segue:
    • È possibile utilizzare tutti i caratteri spazio desiderati in una delle funzioni, ma limitarlo a un massimo di 5 in tutte le altre funzioni
    • Non è possibile riutilizzare alcun carattere se il punto di codice 32 non è spazio nella propria lingua.
  • Nessuno dei programmi può ricevere input

  • La catena deve essere lunga almeno due programmi.


Esempio:

Il tuo codice iniziale è abc+cab+bac. Questo produce:, foofoo*123che a sua volta genera disp(~0), che produce 1. Questa è una catena di 3 programmi, con una lunghezza combinata di 29 (tie breaker).




Per essere sicuro di aver capito: i programmi possono usare commenti, giusto? Voglio dire, parti di codice che sono "inutili"
Luis Mendo

2
Sono consentite espressioni semplici? Ad esempio, potrebbe essere il collegamento finale di un programma Python 2^3, che valuterà 1o dovrebbe essere lambda:2^3, ad esempio print(2^3), ecc.?
nneonneo,

3
Nelle lingue in cui i letterali possono essere programmi (come in molte lingue del golf), può 1essere sia un programma che l'output di quel programma o la catena termina quando 1è l'output?
Emigna,

Risposte:


18

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

10101100011010001101100010110110001111000111001110101001000000000010111100100110011011010110011000100110101001001101100001110001111010100100000100010010001010011101011001110001000001011010101111001110011110001010111100001110110C₁<Au¦н.V

Provalo online!

che stampa il programma

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

Provalo online!

che stampa il programma

522472 2-255B

Provalo online!

che stampa il programma

88ç

Provalo online!

che stampa il programma

X

Provalo online!

quale stampa 1


8784>žxBe probabilmente sono KO. La mancanza di numeri per la conversione di base è un tiro a segno totale a meno che non lo si calcoli. L'obiettivo, se vuoi battere emigna, è usare il minor numero di numeri univoci per iterazione. La sua risposta regna sovrana a causa dell'88 nella penultima iterazione. Davvero un'ottima risposta.
Magic Octopus Urn

@MagicOctopusUrn: potremmo facilmente liberare 10e creare qualcosa in binario. Ma non so se possiamo generare il primo programma da binario senza B.
Emigna,

2
@MagicOctopusUrn: il tuo compito potrebbe essere un po 'più difficile in quanto credo di avere una catena a 5;)
Emigna,

2
@MagicOctopusUrn: Sarò felice di :) Questa è stata una sfida molto divertente!
Emigna,

1
Complimenti per aver ottenuto la 5a catena!
Chromium,

12

Java 8, catena di 2 funzioni, 90 + 10 37 + 4 28 + 4 = 32 byte

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

Che equivale a:

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

-57 byte grazie a @ OlivierGrégoire .

Provalo online.

Che restituisce la stringa:

$->1

Provalo online.

Che restituisce il numero intero:

1

\u0076\u002D\u003E\u0022\u0076\u002D\u003E\u0022+(3\u002D2)(59 byte + 4 byte). Le regole dicono "Nessuno dei tuoi programmi può condividere caratteri", quindi v->1è valido perché la finale 1non è un programma.
Olivier Grégoire,


@ OlivierGrégoire Sapevo che la v->1restituzione di 1 è valida, ma nella mia risposta originale \u0031conterrebbe un 1 e v->1conterrà anche un 1. Bella combinazione di Java unicode e Java normale, però. E ne ho giocate altre 2 giocando (2/2)a 2/2. (PS: esiste già una risposta Java a catena 3 di Jakob .)
Kevin Cruijssen,

@ Correzione OlivierGrégoire, sono stato in grado di giocare a golf a 28 + 4 usando "\44\55\76"invece di"\u0076\u002D\u003E"
Kevin Cruijssen

Bello giocare a golf sopra il mio;) Non ho ancora verificato la risposta a 3 catene. Lo farò adesso.
Olivier Grégoire,

10

R , 3 catene 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"

Provalo online!

Ritorna :

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

Provalo online!

Ritorna :

F^F

Provalo online!

ritorna 1

Spiegazione :

Il primo programma è quasi totalmente scritto nella rappresentazione ottale, dove ogni carattere è scritto come \xxxdov'è xxxil codice ASCII in modalità ottale. In forma leggibile dall'uomo sarebbe:

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

Qui, per evitare l'uso di parentesi tonde, ridefiniamo l'operatore prefisso +uguale a catfunzione, quindi usiamo quello per stampare la stringa successiva. Anche dopo averlo assegnato cata +, quest'ultimo mantiene lo "stato" dell'operatore prefisso e prenderà qualsiasi cosa lo segua come primo parametro.

Il secondo programma stampa semplicemente i caratteri F^Fottenendoli da ASCII decimale:70,94,70

Dato che nel primo programma abbiamo usato la rappresentazione ottale, solo numeri 8e 9sono liberi di essere usati; quindi, otteniamo 70e 94con alcune differenze tra i numeri con solo 8'se 9's.

Infine, l'ultimo programma, F^Fsfrutta la ^funzione (potenza di) che converte FALSEverso 0e calcola 0^0il ritorno1

Crediti a:

  • @ngm per la prima idea a 2 catene
  • @Giuseppe per il suggerimento di usare ottali nelle funzioni
  • @BLT e @JayCe per l'idea di scavalcare +per evitare parentesi

Versione precedente :

R , 2 catene 27 + 3 24 + 2 byte

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

Provalo online!

Ritorna:

1L

Provalo online!

Ritorni 1.


Ben fatto! È catobbligatorio?
JayCe

2
Bene potenzialmente potresti avere un output come stringa con "wri\164e"(function args)per evitare una to altre codifiche simili
Giuseppe,

1
@Giuseppe @digEmAll Secondo gli ultimi commenti alla domanda cat(intToUtf8(c(49,76)))avrebbe funzionato ed è un po 'più breve. Tuttavia non espande la catena.
JayCe

2
@digEmAll Vedi il commento di BLT alla mia risposta a un'altra sfida ... Penso che potrebbe esserci qualcosa qui.
JayCe,

2
Ho reso questa risposta un Wiki della community. Sentiti libero di aggiungere questo con una piccola spiegazione.
ngm,

8

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

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

e

print 1

Provalo online!

Il codice base 16 si traduce in print 1, che viene restituito dalla funzione anonima.


7

Perl 5, 3 catene, 151 139 caratteri (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")

La bruttezza all'interno della &{ }valuta CORE::syswrite, quindi la stringa con escape esadecimale viene stampata sull'output standard come:

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

Si noti che ^ C e ^ R in alto rappresentano caratteri di controllo letterali. (E da non confondere con il ^cursore letterale che si verifica tra le due stringhe.)

Questo programma a sua volta produce:

say 1


6

Cjam, 4 catene, 28 + 20 + 3 + 1 = 52 byte

Snippet 1:

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

Snippet 2:

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

Snippet 3:

'Y(

Snippet 4:

X

Che quindi stampa 1.

Provalo online!

Nota:

  1. Poiché Cjam non ha un'interpretazione per i caratteri di escape, quelli nel frammento 1 sono lì solo per una migliore visualizzazione web. È necessario utilizzare i caratteri effettivi corrispondenti per eseguire lo snippet.

  2. Se non riesco a radere più caratteri, allora buon lavoro a @Emigna per la 05AB1Erisposta!


Nello snippet 2 hai riutilizzato il personaggio 1utilizzato nello snippet 1
digEmAll

Vedi la mia nota per favore. I personaggi di escape sono per comodità del lettore, in Cjam non ci sono personaggi di escape, o non si tradurrebbero in personaggi che pensi sarebbero in lingue come C o Python. Durante il test, devi letteralmente inserire i caratteri manualmente invece di usare i caratteri di escape.
Chromium,

ah vedo, grazie
digEmAll

5

Excel, Catena 2, 27 + 3 byte

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

Non sono sicuro che sia OK ...


2
Non dovrebbe esserci anche un CHAR(61)&inizio perché ci sia una catena di 2?
Emigna,

5
Dovresti usare il francese anziché l'inglese ( CHARdiventare CAR, 3 byte salvati), non sono sicuro che un'altra lingua lo riduca di più
Sefa,

1
@Emigna Ma sembra digitare --1una cella e premere invio , sarebbe solo mostrato 1sullo schermo ...
tsh

@tsh: Hmm, sì, sembra che Excel aggiunga =implicitamente se digiti --1.
Emigna,

1
@Neil Excel non inserisce un =segno per +1(ma lo fa per --1), quindi non lo considero un'espressione. E non sono sicuro se scrivere semplicemente un 1nella cella e chiamarlo "output 1" sia valido. Ecco perché --1viene utilizzato.
TSH

5

bytecode x86, Catena 2, 10 + 4 byte

(Assemblato con FASM, formato PE)

ÇA.Ï?¿<÷Y.produce 1À@Ãl'indirizzo accanto e lo esegue, che ritorna 1in eax (come da fastcall). In entrambi i casi .rappresenta effettivamente Ao LF.

In esadecimale: C7 41 0A CF 3F BF 3C F7 59 0Ae 31 C0 40 C3.

Disassembled:

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

produce

xor eax,eax                      
inc eax                          
ret                              

Questo (ab?) Usa il fatto che il punto di accesso del programma è memorizzato in ecx, quindi scrive l'inverso del codice da eseguire sull'indirizzo 10 byte e lo nega.

Può rompersi o meno se assemblato con altro che fasmo, a tutto tranne che a un PE o con un punto di entrata diverso.


5

REPL JavaScript, molti 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

Troppo pigro per ottimizzare il codice JSFUCK

REPL JavaScript, 164 byte, 3 iterati

potrebbe essere in grado di espandersi

[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

Provalo online!


@JoKing Non ho usato 1altri professionisti, quindi il primo 1è il programma e il secondo è il risultato
l4m2

Non stai riutilizzando la {}s?
Neil,

@Neil Risolto e ottimizzato
l4m2

"La catena termina la prima volta che 1 viene emesso."
Mee

5

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

Questo programma da 92365 byte viene stampato

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+

quale stampa

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

quale stampa

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

quale stampa

9(9(S(99|

quale stampa

88c

quale stampa

X

quale stampa 1.


5

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

Arrivare a 4 programmi è stato difficile. 5 programmi sono stati molto difficili!

'/'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

Provalo online!

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

Provalo online!

Questo potrebbe essere il mio programma preferito che ho scritto su PPCG:

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

Provalo online!

84
c

Provalo online!

T

Provalo online!

Spiegazione:

Avendo usato ore su questo programma, non scriverò ora l'intera spiegazione! Lo scriverò più tardi!

Breve riassunto:

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

Per convertirlo in una stringa anziché in codici di caratteri, dobbiamo concatenarlo con una stringa usando h. Per ottenere una stringa, senza usare le virgolette o i modificatori XY, eseguiamo la conversione di base e convertiamo un numero intero in spazi bianchi.


'/'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 programmi, 5.751.122.990 byte

Ero troppo pigro per giocare a golf ... Ma a quanto pare non ho bisogno di giocare a golf per essere competitivo. Ma senza giocare a golf è un po 'difficile pubblicare la soluzione in una risposta.

Dovrebbe funzionare nell'interprete JavaScript in teoria, ma il programma è troppo lungo per essere testato in un browser. Dovrebbe produrre lo stesso nell'interprete Java ad eccezione dell'ultimo programma. Ma potrebbe anche esaurire la memoria nell'interprete Java per i primi programmi.

statistica

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

Primi byte

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 è newline nel secondo programma.

Generatore

"'#('@('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 funzioni, 31 + 4 = 35 byte

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

ritorna _=>1, che ritorna1


L'invocazione di funzioni non dovrebbe far parte di ciascun programma?
TehShrike,

Le funzioni di @TehShrike erano esplicitamente consentite nelle regole. (Una funzione + il suo codice di invocazione sarebbe un programma completo. Quindi, non credo che avrebbe molto senso.)
Arnauld

Oh bella chiamata, mi sono perso 👍
TehShrike,

3

Gelatina ,  38 37 36  35 byte, catena di 4

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

Provalo online! ( 18 byte)

8220,163,187Ọ

Provalo online! ( 13 byte)

“£»

Provalo online! ( 3 byte)

!

Provalo online! ( 1 byte)

18 + 13 + 3 + 1 = 35 byte

Come?

Ø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 frammenti, 68 + 12 + 3 = 83 byte

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

che produce la serie di letterali ottali:

"\70\136\71"

che produce:

8^9

Che alla fine produce 1.

Provalo online!


3

Java 8, 3 programmi, 431 byte

Programma 1, 332 byte

Un lambda da un parametro (vuoto) di qualsiasi tipo a 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"

Questo è solo un lambda con i caratteri freccia con escape Unicode che restituiscono il testo del secondo programma codificato con sequenze di escape ottali.

Provalo online

Programma 2, 93 byte

Frammento che produce a String.

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

Provalo online (con ritorno aggiunto)

Programma 3, 6 byte

Un lambda da un parametro (vuoto) di qualsiasi tipo a int.

z->9/9

Provalo online


2
Bella risposta! Puoi giocare \166a golf \44per -1 byte, poiché $è anche un nome di variabile valido. Provalo online , risultando $->9-8( Provalo online. )
Kevin Cruijssen,

Dopo diversi tentativi, non è possibile creare una catena a 3 con Java. È necessario il \uXXXXnel primo codice per evitare ->. Poi si bisogno sia return(funzione) o System.out(frammento o una funzione), entrambi contengono una uche già utilizzato nel \uXXXX. Quindi personalmente ritengo che questa voce non sia valida e l'ho ridimensionata di conseguenza.
Olivier Grégoire,

@ OlivierGrégoire Gli snippet sono esplicitamente consentiti in questa sfida (prima regola). Inoltre, System.console().printfpotrebbe essere utilizzato per impedire l'uso di u. Qualcosa di simile viene fatto in questa risposta e l'ho usato anche in queste mie due risposte .
Kevin Cruijssen,

Grazie @KevinCruijssen ma uno snippet deve ancora essere emesso. Ecco una soluzione a tutto: 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) si trasforma in for(char $:new char[]{'y',',','=','8','.','8'})System.out.printf(++$+new String());(89 byte) si trasforma in z->9/9(6 byte). Totale: 404 byte.
Olivier Grégoire,

Intendevo System.console()per il 2 ° programma, che è correttamente 89 byte (mentre lo System.outrende 83 byte).
Olivier Grégoire,

2

SmileBASIC, catena 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

Uscite:

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

Uscite:

?!0

Uscite:

1

2

PHP 7.0, 2 catene, 35 + 8 = 43 byte

Mentre scrivevo la mia risposta iniziale mi sono reso conto che potevo usare solo codifica base64 per la seconda eco. Si è rasato 11 byte, quindi eccolo qui. Di seguito puoi trovare anche la mia idea originale.

Esegui usando php -r:

echo base64_decode('RUNITyAxPz4=');

Questo produce:

ECHO 1?>

Che poi ovviamente stampa:

1

Produzione:

Il codice viene eseguito con l'eco && aggiuntiva per la leggibilità
Il mio codice quando eseguito in un terminale. L' eco && accluso è solo per leggibilità.

Commenti:

Non c'è molto da fare davvero. Molto semplice una volta che conosci "?>" Agendo implicitamente come ";". La parte "difficile" era capire cosa codificare:

  • ECHO 1; è diventato RUNITyAx O w == , quindi abbiamo una collisione di O maiuscole. Non buono.
  • echo 1; divenne ZWN o byAxOw == , quindi ora ce ne sono due in basso caso o di. Sfortunato!
  • ECHO 1?> È diventato RUNITyAxPz4 = . È della stessa lunghezza e nessuno dei personaggi si scontra. Quindi è tutto!

In alternativa possiamo usare anche "echO" e "ECHo" (36 + 7 = 43 byte).

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

Possiamo anche cambiare il; e?> in giro ad usarlo. Funziona ugualmente bene e ha tutti lo stesso punteggio in lunghezza.



La mia soluzione iniziale:

PHP 7.0, 2 catene, 44 + 10 = 54 byte

Questo è il migliore che potrei inventare all'inizio. Ho capito che "personaggi unici" significava "eco" non è uguale a "ECHO". Spero di aver capito bene!

Esegui usando php -r:

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

Questo produce:

ECHO TRUE;

Che a sua volta ci dà il nostro numero:

1

Produzione:

Il codice viene eseguito con l'eco && aggiuntiva per la leggibilità
Il mio codice quando eseguito in un terminale. L' eco && accluso è solo per leggibilità.

Alcuni commenti:

  • Penso che tu possa fare solo una catena a 2 in PHP poiché richiede il ";" separatore di istruzioni.
    • Puoi aggirare questo problema una volta usando "?>", Che implica un punto e virgola, ma ovviamente non puoi riutilizzarlo una seconda volta
    • Questa è stata la parte più difficile per me da capire. Non sapevo che funzionasse in precedenza, né che "?>" Fosse nemmeno consentito quando si eseguiva tramite php -r
  • Usando strtoupper () sono stato in grado di scrivere il codice per la catena n. 2 in minuscolo, mentre l'output è ovviamente in maiuscolo. Modalità facile proprio lì!
  • urldecode () mi permette di codificare ";" come "% 3b"
  • Questo è tutto ciò che c'è davvero, niente di troppo eccitante

Grazie per la sfida, ho imparato qualcosa oggi!


2

Lua, 2 catene, 83 + 8 = 91 byte

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

Uscite

print"1"

Quali uscite

1



1

Röda , 2 catene, 31 + 3 = 34 byte

Snippet 1:

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

Provalo online!

Snippet 2:

[1]

Provalo online!

Sono frammenti, perché ogni programma Röda valido deve includere main{...}bloat. Sono anche validi programmi REPL di Röda.


1

dc , 3 programmi, 48 byte

Primo:

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

Rende il secondo:

75
P
90
P
110
P

Rende il terzo:

KZn

Resa 1.

Provalo online!(ha un po 'di codice di cancellazione dello stack e di stampa newline inserito per far funzionare tutti e tre i bit in una volta sola).

Forse meglio cominciare a programma di tre, KZn. Ci sono solo alcuni modi per stampare le cose dc, e mi sono reso conto in questa fase che sarei probabilmente bloccato con uno po n, entrambi i quali sono nei 100 in ASCII decimale. Ciò significa che avrei quasi sicuramente dovuto generare 1 invece di usare semplicemente il programma 1n. Kspinge l'attuale precisione (default: 0) nello stack e Zspinge il numero di cifre della parte superiore dello stack, che ci dà l'1 per stampare.

Il secondo programma è piuttosto semplice. Pstampa il carattere con il valore ASCII specificato, quindi stampiamo 75( K) 90( Z) e infine 110( n), che funziona meravigliosamente. Significa anche che, a parte il summenzionato 1, non posso usare le cifre 5, 7, 9 o 0 altrove. Ho anche bisogno di un metodo diverso daP per trasformare i numeri in personaggi.

Il primo programma, quindi, deve creare quattro numeri senza usare le cifre 1, 5, 7, 9 o 0. Deve fare 80(valore ASCII di P) 82 2-:; 75: AA(110) I-(sottrai la radice di input predefinita, 10) I2/(so, 5) 2^(so, 5 ^ 2, 25) -(75); 90: AA(110) I2*(il doppio della radix di input predefinita di 10, quindi 20) -(90); e 110: bene, è solo AA. Dopo aver creato 80, usiamo aper convertire un numero in una stringa. Ci sono alcuni comandi reverse e duplicate lì dentro per mettere la Ps nei punti giusti, e infine stampiamo l'intero stack conf .

Sono abbastanza sicuro di non aver rovinato tutto, ma ho fatto girare la testa un po '...


1

05AB1E , 5 + 3 = 8 byte

ght<n

Provalo online!

quale a destra ritorna la mazza

Sto prendendo l'output 1.0 come non uguale a 1, quindi eseguo quel codice:

1.0

Provalo online!

che ritorna

1

E il gioco è fatto!

Numero di programmi = 2


Benvenuti in PPCG.
Muhammad Salman,

Ho appena provato a scrivere cose casuali e vedere cosa ottengo. Inoltre, si potrebbe usare un programma di turing machine.
Caleb Evans,

È possibile rimuovere il h(converti in esadecimale). Il valore g(get length, 0 predefinito) con t(radice quadrata) fornisce già un decimale 0.0. Con <(diminuisce di 1) diventa -1.0e quindi n(quadrata) lo trasforma in 1.0. È inoltre possibile sostituire il <ncon >(aumentare di 1). ;) Quindi in totale sono 3 byte ( gt>). In alternativa puoi usare Xt( 1e radice quadrata). PS: Non sono sicuro che 1.0to 1sia una parte valida della catena. Ho chiesto a OP di verificare. Benvenuti in PPCG e godetevi il vostro soggiorno.
Kevin Cruijssen,

bene, i computer elaborano la stringa '1.0' in modo diverso da '1'.
Caleb Evans,

0

Rubino, 2 catene, 24 + 3 = 27 byte

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

L'output è

p 1
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.