Conduce o segue?


48

In questa sfida devi scrivere un programma o una funzione, che accetta una stringa come input e genera uno dei due valori possibili. Chiameremo uno di questi valori verità e una falsa . Non devono necessariamente essere sinceri o falsi . Perché una risposta sia valida, deve soddisfare quattro criteri aggiuntivi

  • Quando passi il programma a se stesso, viene emesso il valore di verità .

  • Se si passa il programma come input a una risposta precedente, dovrebbe essere generato l' output vero (del programma a cui si sta passando).

  • Se si passa una risposta più vecchia alla risposta come input, dovrebbe essere generato l' output errato (del programma).

  • Ci deve essere un numero infinito di stringhe che valutano l' output vero in tutte le risposte alla sfida (inclusa la tua nuova risposta).

Ciò che farà è che costruirà lentamente una catena di risposte ciascuna delle quali può determinare se altri programmi nella catena vengono prima o dopo di essa.

L'obiettivo di questa sfida è quello di costruire un elenco di restrizioni alla fonte che vengono applicate alle risposte successive rendendo ciascuna più impegnativa della precedente.

Esempio

Una catena (scritta in Haskell) potrebbe iniziare:

f _ = True

Dal momento che non esistono programmi precedenti, i criteri non si applicano a questa risposta, è necessario solo l'output di uno dei due valori possibili, in questo caso restituisce sempre True.

Di seguito potrebbe essere la risposta:

f x=or$zipWith(==)x$tail x

Provalo online!

Il che afferma che c'è un carattere due volte di seguito da qualche parte nella stringa. La prima risposta non ha questa proprietà mentre la seconda fa ( ==). Quindi questa è una prossima risposta valida.

Regole speciali

  • Puoi usare qualsiasi lingua tu voglia (che ha un'implementazione disponibile gratuitamente) tutte le volte che vuoi.

  • Se sei stata l'ultima persona a rispondere, devi attendere almeno 7 giorni prima di pubblicare una nuova risposta.

  • Il tuo programma potrebbe non leggere la propria fonte.

  • Poiché la 4a regola è estremamente difficile da verificare se sono coinvolte funzioni crittografiche, tali funzioni non sono consentite.

Criterio di punteggio

Ogni volta che aggiungi una risposta otterrai tanti punti quanti sono i suoi posti nella catena. Ad esempio la quinta risposta otterrebbe il suo scrittore 5 punti. L'obiettivo è ottenere il maggior numero di punti possibile. L'ultima risposta segnerà il suo risponditore -∞ punti. Questo sarà probabilmente più divertente se provi a massimizzare il tuo punteggio invece di "vincere" la sfida. Non accetterò una risposta.

Dal momento che questo è il potresti voler ordinare per più vecchio


Forse dovrebbe esserci un post wiki della comunità che elenca tutti i nuovi requisiti aggiunti dalle risposte. Potrebbe anche avere un collegamento TIO al codice che verifica che un programma soddisfi tutti i requisiti.
Steadybox

1
@totallyhuman Il risponditore potrebbe aggiornarlo
Conor O'Brien,


1
@ msh210 Non dovresti avere bisogno di sapere molto sulle lingue degli altri. Finché sono stati abbastanza cortesi da fornire un modo semplice per eseguire il loro programma, tutto ciò che devi fare è incollare il programma nell'input del programma ed eseguirlo. Il loro programma eseguito sul tuo programma dovrebbe generare la stessa cosa del loro programma eseguito su se stesso.
0 '

1
@ user56656 Puoi per favore affrontare il problema di quali funzioni crittografiche sono consentite? Vedi # 31.
mbomb007,

Risposte:


10

14. X86 Assembly (gcc 6.3), 324 byte

.TITLE "a"#"a" ELTIT.
.data
i:.fill 25,1,0
s:.string "%25[^\n]"
t:.string "->Hi, Retina!"
f:.string "Bye Retina!"
.global main
main:           
pushl $i
pushl $s
call scanf
addl $8, %esp
pushl $i
call strlen
addl $4, %esp
sub $21, %eax
jz y
pushl $f
call printf
addl $4, %esp
jmp en
y:
pushl $t
call printf
addl $4, %esp
en:
ret

Provalo su ideone!

Nota: questo sarà restituito un errore di runtime perché il codice di uscita non è zero. L'esecuzione nell'editor ideone visualizzerà tutto l'output stdout indipendentemente da come si conclude il programma.

  • Uscita vera :"->Hi, Retina!"
  • Uscita falsa :"Bye Retina!"

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).

Per risposte future:

  • Il primo personaggio è a ..
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4.
  • Il decimo personaggio è a ".
  • L'ultima riga non vuota non ha caratteri duplicati.
  • La prima riga è un palindromo di lunghezza = 21

2
Lo spazio negli "s può essere sostituito con un a?
Limone distruttibile

@DestructibleLemon Yup! Fisso.
Bitconfuso il

1
@ user56656 non puoi aspettarti che questo risponditore conosca Pyth. Piuttosto, deve necessariamente seguire la descrizione del criterio del risponditore Pyth, ovvero che il programma contiene un a. Questo programma contiene un a.
msh210

Sembra che la tua risposta non faccia esattamente ciò che afferma. La mia risposta qui passa nonostante abbia 22 caratteri (escluso il carattere di ritorno) sulla prima riga.
Wheat Wizard

@ user56656 L'ho appena eseguito nell'editor, stampa il valore di falso di "Ciao Retina!" nel feed della console live.
Confuso bit

7

9. Retina , 16 byte

.->0`Hi, Retina!

Provalo online!

Se si desidera provare il proprio programma, è sufficiente aggiungerlo al campo di input, separato da due avanzamenti di riga. (Se il tuo programma contiene due avanzamenti di riga, dovrai cambiare il separatore tra tutti i programmi e nell'intestazione TIO.)

soddisfa:

  1. Il primo personaggio è a .
  2. Contiene un e
  3. La sua lunghezza è pari
  4. La sua lunghezza è un quadrato perfetto
  5. Contiene un a
  6. Contiene un >personaggio
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.

Scusa, ma mi hai obbligato ad andare fino alla lunghezza di 16 ...

Senza requisiti ridondanti:

  • Il primo personaggio è a .
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.

Spiegazione

Iniziare .va bene, significa solo che sopprimiamo l'output implicito di Retina (purché la prima riga abbia una configurazione, ma non volevo un programma a due righe). Ciò significa che abbiamo bisogno di un output esplicito, ma l'opzione è >, quindi siamo fortunati. L' -può andare di fronte ad essa, perché non fa nulla.

Ora possiamo accedere al programma stesso. La cosa più semplice da fare è abbinare una stringa letterale. Questo è garantito per essere mostrato nel nostro programma, possiamo facilmente assicurarci che non faccia parte di alcun programma esistente e ci dia un numero come risultato. Tuttavia, potrebbe potenzialmente restituire un numero maggiore di 1 (quindi più di due valori diversi). Evitiamo questo con il 0-limito che guarda solo alla prima corrispondenza e conta che se esiste. Quindi 0garantisce che l'output sia sempre 0o solo 1(a seconda che l'input contenga la stringa letterale).

Per quanto riguarda la stringa letterale ... beh, dobbiamo ancora includere un ee un a... e abbiamo bisogno che la stringa contenga almeno 11 caratteri, in modo da soddisfare i requisiti di lunghezza (arrivare a un quadrato uniforme). Hi, Retina!soddisfa tali requisiti.


7

13. Perl 5 , 64 byte

.1;";1.
\"Hi, Retina!->";$_=<>;chop;print y///c>5&&reverse
eq$_;

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.

Riepilogo per risposte future:

  • Il primo personaggio è a ..
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4.
  • Il decimo personaggio è a ".
  • L'ultima riga non vuota non ha caratteri duplicati.
  • La prima riga è un palindromo di lunghezza> 5 (in caratteri ).

Script di verifica Ruby


Sto per pubblicare la mia risposta, e ora è impossibile ahhhhhh
confuso il

Oops, lo sto eliminando fino a quando la risposta V non viene risolta.
Lynn

1
@bitconfused L'ho cambiato, solo per te ...!
Lynn

1
Sei troppo buono per questo mondo!
Bitconfuso

1
@ user56656 non puoi aspettarti che questo risponditore conosca Pyth. Deve, piuttosto, necessariamente seguire la descrizione del criterio del risponditore Pyth, ovvero che il programma contiene un a. Questo programma contiene un a.
msh210

6

25, Ottava , 196 byte

Nuovo requisito: per evitare la discussione tra tab contro spazi, le tab non possono più essere utilizzate per il rientro. Ogni riga ha ancora bisogno di una scheda, ma non può essere il primo carattere della riga.

.6;%+->?|"	"|?>-+%;6.
f=@(x)1&&cellfun(@(C)any(C=='	')&1&&find(C=='	')>1,strsplit(x,char(10)));
%	
%	
%	
%	
%	
%	
%Henry Jams?Hi, Retina!	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	
%	~

Verifica tutti i programmi online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C
  22. Ogni riga contiene un carattere di tabulazione.
  23. La nona riga contiene almeno 22 caratteri, esclusa la nuova riga.
  24. Il carattere di tabulazione non può essere il primo carattere di una riga

Per risposte future:

  • Il primo personaggio è un ., così come il 21 ° personaggio (regola palindromica).
  • Il decimo carattere è un ", così come il dodicesimo carattere (regola palindromica).
  • La prima linea è un palindromo di lunghezza 21.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4 e il suo punto di codice è inferiore a 60 (le pagine stampabili sono ',1;6e la scheda).
  • L'ultimo personaggio è ~.
  • La sua lunghezza è persino un quadrato perfetto.
  • È lungo almeno 28 righe.
  • La nona riga deve contenere almeno 22 caratteri, esclusa la nuova riga.
  • L'ultima riga non vuota non ha caratteri duplicati.
  • Contiene le stringhe esatte ->, Hi, Retina!e Henry Jams?.
  • Contiene |, +e C.
  • Ogni riga contiene almeno un carattere di tabulazione, ma non può essere il primo carattere di una riga.
  • A ciascun programma ora sono consentiti solo i 2 .e 2 "nella prima riga e !in Hi, Retina!. Quei personaggi non possono essere usati altrove, oltre a non usarli #$[\].

Spiegazione:

In realtà è stato un po 'difficile mantenerlo a 196 byte, poiché ci sono molti byte che sono ora obbligatori su ogni riga.

La prima riga è semplicemente uno scalare che non viene emesso, seguito da un commento. La seconda riga è una funzione anonima che accetta una stringa xcome input e effettua le seguenti operazioni:

strsplit(x,char(10))   % Split at newlines. Can't use a literal newline, or [10,''] due to previous rules
cellfun(@(C) ...     ) % Perform the following operation on each line:
  any(C==' ')          % Make sure there is at least one tab character
  1&&find(C==' ')>1    % Make sure the index is higher than 1
1&&cellfun( ... )     % Check that this is true for all lines.

È fortunato che l'operazione di corto circuito abbia la &&precedenza &e che 1&&findnon richieda parentesi. Altrimenti non riuscirei a giocare a golf fino a 196 byte.


Nota che questo non è un codice golf.
ericw31415

1
Lo so, ma è più divertente giocare a golf che riempirlo con 50 byte. :)
Stewie Griffin,

5

5. Python 3 , 64 byte

.012
import sys
print(len(sys . stdin . read()) ** 0.5 % 1 == 0)

Provalo online! Verifica se la lunghezza dell'input è un quadrato perfetto.

Questo era stato aggiornato quando erano presenti 18 risposte a supporto dell'input multilinea.

L'aggiornamento non danneggia la catena.


soddisfa:

  1. inizia con a .
  2. contiene un e
  3. ha una lunghezza pari
  4. ha una lunghezza quadrata perfetta

Non ho provato questo, ma in realtà restituisce false per es. 99999999 ^ 2 + 1 e true per es. 99999999 ^ 2?
msh210

1
Questo attualmente legge solo la prima riga dell'input, quindi le risposte su più righe restituiranno (erroneamente) False. È possibile per te correggere questo quando ne hai la possibilità?
caird coinheringaahing

@cairdcoinheringaahing riparato, grazie!
Uriel,

5

11. JavaScript (ES6), 36 byte

.11&&(s=>"Hi, Retina!->"&&s[9]=='"')

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".

Per risposte future:

  • Il primo personaggio è a ..
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4.
  • Il decimo personaggio è a ".

5

23, Literate Haskell , 196 byte

Nuovo requisito: il rientro è ottimo, quindi ogni riga deve contenere almeno un carattere di tabulazione.

.1+C->|  "	"  |>-C+1.
		
>	main = interact test
>	test s = show (check (lines s))
>	check = all (elem tab)
>	tab = toEnum 9
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Henry Jams?
	Hi, Retina!
	~

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C
  22. Ogni riga contiene un carattere di tabulazione.

Per risposte future:

  • La prima linea è un palindromo di lunghezza 21.
  • Il primo personaggio è un ., così come il 21 ° personaggio (regola palindromica).
  • Il decimo carattere è un ", così come il dodicesimo carattere (regola palindromica).
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4 e il suo punto di codice è inferiore a 60 (le pagine stampabili sono ',1;6e la scheda).
  • L'ultimo personaggio è ~.
  • La sua lunghezza è persino un quadrato perfetto.
  • È lungo almeno 28 righe.
  • L'ultima riga non vuota non ha caratteri duplicati.
  • Contiene la sequenza esatta ->.
  • Contiene le stringhe esatte Hi, Retina!e Henry Jams?.
  • Contiene |, +e C.
  • Ogni riga contiene un carattere di tabulazione.
  • A ciascun programma ora sono consentiti solo i 2 .e 2 "nella prima riga e !in Hi, Retina!. Quei personaggi non possono essere usati altrove, oltre a non usarli #$[\].

Ecco la mia occasione per pubblicare un'altra risposta agli spazi bianchi lungo la strada. ; p
Kevin Cruijssen,

5

27. GolfScript , 144 byte

.		;'>-C+"1"+C->';		.
'	
z	
y	
x	
w	
v	
u	
Hi, Retina!	Henry Jams?';;
t	
s	
r	
q	
o	
m	
l	
k	
j	
i	
h	
g	
f	
e	
d	
c	
b	
n	/:^,27>^^^|=lynn
*	n~

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C
  22. Ogni riga contiene un carattere di tabulazione.
  23. La nona riga contiene almeno 22 caratteri, esclusa la nuova riga.
  24. Il carattere di tabulazione non può essere il primo carattere di una riga
  25. Il penultimo carattere è una scheda.
  26. Ci sono almeno 28 righe e sono tutte distinte.

Per risposte future:

  • La prima riga è una corrispondenza palindromo .␣␣␣␣␣␣␣␣"␣"␣␣␣␣␣␣␣␣.(sei libero di compilare i campi).
  • Il secondo carattere è uno di ',16;, o una scheda o uno di \x04\x0e\x13\x18\x1d.
  • La sua lunghezza è persino un quadrato perfetto.
  • Ci sono almeno 28 linee e tutte le linee sono distinte .
  • La nona riga deve contenere almeno 22 caratteri (esclusa la nuova riga).
  • L'ultima riga non ha caratteri duplicati.
  • Contiene le stringhe esatte ->, Hi, Retina!e Henry Jams?.
  • Contiene |, +e C.
  • Ogni riga contiene almeno un carattere di tabulazione, ma non può essere il primo carattere di una riga.
  • !".#$[\] sono vietati salvo ove necessario:
    • Sono ammessi solo !in Hi, Retina!e i due .e due "nella prima riga.
  • Le estremità di programma con: tab, (qualunque sia) , ~.

4
26 è qui (non ovvio quando si ordina per più vecchio.)
Lynn

4

12. V , 36 byte

.1lllGYVH""pØHi, Retina!->üˆ.*±
Ø^0$

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.

Per risposte future:

  • Il primo personaggio è a ..
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4.
  • Il decimo personaggio è a ".
  • L'ultima riga non vuota non ha caratteri duplicati.

4

21. Alphuck , 676 byte

Sorprendentemente, la maggior parte del codice non è il riempimento.

.11111111"1"11111111.
?|+->Hi, Retina!opaos
iipiiciasceaecppisaic
sapiceasccpisipiiiiia
ecsaiiijaeepiiiiiiaec
saeeejeepiiiaeecsajee
eeeepiaeecsaejipiiiii
iaecsaijeeeeeeeeeejii
iiiijiipiiiaecsaijiii
piaeeeecsaijeejiiijii
iiiiiiiiiiijiipiiiaec
saijiipiaeeeecsaejiii
iiiiiiijeeeeeejiiijpi
iaeeeeecsaeeejpiiaeee
eeeecsajeejiiijiiiiii
iijeeeeeeeeeeejeeepia
eeecsaeejeeeeeeeeeeee
jpiaeeeeecsaijepiaeee
csaeejeeeeeeeeejiiiii
iiiiijiipiiiaecsaiiij
epiiiiaecsaeeejiipiae
eeecsaijepiaeeecsaeje
eeeeeeeeeejiiiiiiiiii
iijiipiiiaecsaiijpiae
eecsaejipiaeeecsajiii
piaeeeecsajiiiiiiiiii
ijeeejiiiiiiiijejiipi
iiaecsajpHenry Jams?a
bcefghiwklmnopqrstuvw
xyzabcdefghwuklmnopqr
stuvwxyzabcdefg~

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.

Per risposte future:

  • Il primo personaggio è un ., così come il 21 ° personaggio (regola palindromica).
  • Il decimo carattere è un ", così come il dodicesimo carattere (regola palindromica).
  • La prima linea è un palindromo di lunghezza 21.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4 e il suo punto di codice è inferiore a 60 (le pagine stampabili sono ',1;6e la scheda).
  • L'ultimo personaggio è ~.

  • La sua lunghezza è persino un quadrato perfetto.
  • È lungo almeno 28 righe.
  • L'ultima riga non vuota non ha caratteri duplicati.

  • Contiene la sequenza esatta ->.
  • Contiene le stringhe esatte Hi, Retina!e Henry Jams?.
  • Contiene |e +.

  • A ciascun programma ora sono consentiti solo i 2 .e 2 "nella prima riga e !in Hi, Retina!. Quei personaggi non possono essere usati altrove, oltre a non usarli #$[\].

4

26. Brainfuck automodificante (SMBF), 256 byte

Il penultimo carattere deve essere una scheda.

.1111111	"1"	1111111.
x	
x	
x	
x	
x	
x	
x	
x	Hi, Retina!Henry Jams?C|xxxxxxxxxxxxxxxxxxxx
x	
x	
x	
x	
x	
x	
x	
x	
x	
x	
x	
x	
x	
x	
x	
x	
x	<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
x	+>>>->>+>>->>+>>->>>>>>>>>>>+>>>>>->>->>>>
x	>,Z>,^<Z-^<Z-^<---------Z>+.>^
^	x~

Stampa \x00per verità e output \x00\x01per falsità. Termina sempre con un errore a causa di una parentesi senza pari. Ciò impedisce che qualsiasi input venga eseguito in modo dinamico.

Questo programma funziona solo nell'interprete Python . NON FUNZIONA SU TIO. Questo perché l'interprete Python EOF è NUL.

Per usare l'interprete Python, incolla questo codice nella riga in cui dataè impostato. Questo doveva essere fatto, perché TIO non ha un modo semplice per digitare o inserire byte NUL, quindi uso ancora Ideone. Quindi decommenta sys.stdin = MySTDIN("<[.<]")e sostituisci l'input personalizzato con qualsiasi input che stai testando.

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C
  22. Ogni riga contiene un carattere di tabulazione.
  23. La nona riga contiene almeno 22 caratteri, esclusa la nuova riga.
  24. Il carattere di tabulazione non può essere il primo carattere di una riga
  25. Il penultimo carattere è una scheda.

Per risposte future:

  • Il primo personaggio è un ., così come il 21 ° personaggio (regola palindromica).
  • Il decimo carattere è un ", così come il dodicesimo carattere (regola palindromica).
  • La prima linea è un palindromo di lunghezza 21.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4 e il suo punto di codice è inferiore a 60 (le pagine stampabili sono ',1;6e la scheda).
  • L'ultimo personaggio è ~.
  • La sua lunghezza è persino un quadrato perfetto.
  • È lungo almeno 28 righe.
  • La nona riga deve contenere almeno 22 caratteri, esclusa la nuova riga.
  • L'ultima riga non vuota non ha caratteri duplicati.
  • Contiene le stringhe esatte ->, Hi, Retina!e Henry Jams?.
  • Contiene |, +e C.
  • Ogni riga contiene almeno un carattere di tabulazione, ma non può essere il primo carattere di una riga.
  • A ciascun programma ora sono consentiti solo i 2 .e 2 "nella prima riga e !in Hi, Retina!. Quei personaggi non possono essere usati altrove, oltre a non usarli #$[\].
  • Il penultimo carattere è una scheda.

4
225 non è nemmeno?
Limone distruttibile

@DestructibleLemon Ho aggiunto il padding e ho cambiato la mia risposta per renderlo # 26.
mbomb007,

4

28. Literate Haskell , 256 byte

.	|+xx<<<"a"<<<xx+|	.
 		
>	g x=elem '<'x&&e%x==e
>	e=tail(show 0)	
>	('<':a)%('>':b)=a%b
>	a%('<':b)=('<':a)%b
>	a%('>':b)='<':e
>	a%(x:b)=a%b{->Hi, Retina!Henry Jams?-}
>	a@(_:_)%_=a
>	a%b=e
 	
a	
b	
C	
d	
e	
f	
g	
h	
i	
j	
k	
l	
m	
n	
o	
ppppppppp	
q	3~

Provalo online!

Test Driver

soddisfa

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C
  22. Ogni riga contiene un carattere di tabulazione.
  23. La nona riga contiene almeno 22 caratteri, esclusa la nuova riga.
  24. Il carattere di tabulazione non può essere il primo carattere di una riga
  25. Il penultimo carattere è una scheda.
  26. Ci sono almeno 28 righe e sono tutte distinte.
  27. Nel >codice deve essere presente un carattere e le parentesi angolari devono essere bilanciate

Per risposte future:

  • La prima riga è una corrispondenza palindromo .␣␣␣␣␣␣␣␣"␣"␣␣␣␣␣␣␣␣.(sei libero di compilare i campi).
  • Il secondo carattere è uno di ',16;, o una scheda o uno di \x04\x0e\x13\x18\x1d.
  • La sua lunghezza è persino un quadrato perfetto.
  • Ci sono almeno 28 linee e tutte le linee sono distinte.
  • La nona riga deve contenere almeno 22 caratteri (esclusa la nuova riga).
  • L'ultima riga non ha caratteri duplicati.
  • Contiene le stringhe esatte ->, Hi, Retina!e Henry Jams?.
  • Contiene |, +e C.
  • Ogni riga contiene almeno un carattere di tabulazione, ma non può essere il primo carattere di una riga.
  • !". sono vietati salvo ove necessario:
    • Sono ammessi solo !in Hi, Retina!e i due .e due "nella prima riga.
  • #$[\] potrebbe non apparire nel programma.
  • Le estremità di programma con: tab, (qualunque sia) , ~.
  • Le parentesi angolari devono essere bilanciate

Non so cosa intendi con "perl5 attualmente non funziona" nel driver di test, stampa una 1multa quando rimuovo il commento su quella linea (anche se potrebbe usare un ; echodato che non c'è una nuova riga nell'output)
Lynn

@Lynn non lo so. Non ricordo cosa ci fosse di sbagliato. Vado avanti e rimuovo il commento. Grazie.
Wheat Wizard

4

29. PHP con -r, 256 byte

.6|0&"123'  '321"&0|6.
<   
0   
;   
+   
eval(   
~   
preg_replace    
('Hi, Retina!'^'g5X|<J' 
,   
''  
^'Henry Jams?'  
,'×× ×  ×ÝÅÐÐÝÖÓÎÖÖÁÇÇÀ«Å¹ÖÄ'));?>->/45789:@ABCDEFGHIJKLMNOPQ  
*   
a   
b   
c   
d   
e   
f   
g   
h   
i   
j   
k   
m   
n   
o   p~

Non essere in grado di utilizzare ha $reso questo piuttosto complicato, nella mia soluzione originale ho frainteso la regola, ma penso di avere tutto coperto ora. Ho usato caratteri a byte alto ~e evalper ovviare alla mancanza di variabili decenti per PHP. Ho quasi fatto il numero minimo di punti di codice univoci 96, ma ho pensato che potrebbe renderlo un po 'troppo difficile per alcune lingue.

Ecco una discarica esadecimale reversibile anche per la verifica.

00000000: 2e36 7c30 2622 3132 3327 0927 3332 3122  .6|0&"123'.'321"
00000010: 2630 7c36 2e0a 2a09 0a30 090a 3b09 0a2b  &0|6..*..0..;..+
00000020: 090a 6576 616c 2809 0a7e 090a 7072 6567  ..eval(..~..preg
00000030: 5f72 6570 6c61 6365 090a 2827 4869 2c20  _replace..('Hi, 
00000040: 5265 7469 6e61 2127 5e27 6735 587c 3c4a  Retina!'^'g5X|<J
00000050: 2709 0a2c 090a 2727 090a 5e27 4865 6e72  '..,..''..^'Henr
00000060: 7920 4a61 6d73 3f27 090a 2c27 9b96 9ad7  y Jams?'..,'....
00000070: 9c90 8a91 8bd7 9c90 8a91 8ba0 9c97 9e8d  ................
00000080: 8cd7 9996 939a a098 9a8b a09c 9091 8b9a  ................
00000090: 918b 8cd7 dd8f 978f c5d0 d08c 8b9b 9691  ................
000000a0: ddd6 d3ce d6d6 c1c7 c7c0 abc5 b9d6 c427  ...............'
000000b0: 2929 3b3f 3e2d 3e2f 3435 3738 393a 4041  ));?>->/45789:@A
000000c0: 4243 4445 4647 4849 4a4b 4c4d 4e4f 5051  BCDEFGHIJKLMNOPQ
000000d0: 090a 3c09 0a61 090a 6209 0a63 090a 6409  ..<..a..b..c..d.
000000e0: 0a65 090a 6609 0a67 090a 6809 0a69 090a  .e..f..g..h..i..
000000f0: 6a09 0a6b 090a 6d09 0a6e 090a 6f09 707e  j..k..m..n..o.p~

Provalo online!

Autista di prova

soddisfa

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C
  22. Ogni riga contiene un carattere di tabulazione.
  23. La nona riga contiene almeno 22 caratteri, esclusa la nuova riga.
  24. Il carattere di tabulazione non può essere il primo carattere di una riga
  25. Il penultimo carattere è una scheda.
  26. Ci sono almeno 28 righe e sono tutte distinte.
  27. Nel >codice deve essere presente un carattere e le parentesi angolari devono essere bilanciate.
  28. Nel programma devono essere presenti più di 88 punti di codice distinti.

Per risposte future:

  • La prima riga è una corrispondenza palindromo .␣␣␣␣␣␣␣␣"␣"␣␣␣␣␣␣␣␣.(sei libero di compilare i campi).
  • Il secondo carattere è uno di ',16;, o una scheda o uno di \x04\x0e\x13\x18\x1d.
  • La sua lunghezza è persino un quadrato perfetto.
  • Ci sono almeno 28 linee e tutte le linee sono distinte.
  • La nona riga deve contenere almeno 22 caratteri (esclusa la nuova riga).
  • L'ultima riga non ha caratteri duplicati.
  • Contiene le stringhe esatte ->, Hi, Retina!e Henry Jams?.
  • Contiene |, +e C.
  • Ogni riga contiene almeno un carattere di tabulazione, ma non può essere il primo carattere di una riga.
  • !". sono vietati salvo ove necessario:
    • Sono ammessi solo !in Hi, Retina!e i due .e due "nella prima riga.
  • #$[\] potrebbe non apparire nel programma.
  • Le estremità di programma con: tab, (qualunque sia) , ~.
  • Le parentesi angolari devono essere bilanciate.
  • Nel programma devono essere presenti più di 88 punti di codice distinti.

Penso che tu abbia dimenticato di aggiungere il tuo script come argomento al driver di test qui. L'ho corretto nella mia risposta che è attualmente eliminata.
Davis Yoshida,

4

30. > <> con -v 0 -v 0, 324 byte

1 è verità, stringa vuota è falsità

.1|-<<<<	"C"	<<<<-|1.
>i:0(?v'	'~
v     >}@@:'	'=0=?;@
v	
     >:0(?va=?v&1+&>'	'~
>{r0&/    v   >&}0&^	
          >&}rv	
<	
              >l3(?v@:}@@=?;{'	'~
                  ->1n;	
Hi, Retina!	
ABDEFGIKLMNOPQSTUVWXYZ	
b	c
d	
fg	
h	
jk	
o	
p	*      *  *
q	  *  *      *
u	*      *  *
w	
xz	
2	
45	
6	
78	9
Henry Jams?%-	_~

Provalo online!

soddisfa

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C
  22. Ogni riga contiene un carattere di tabulazione.
  23. La nona riga contiene almeno 22 caratteri, esclusa la nuova riga.
  24. Il carattere di tabulazione non può essere il primo carattere di una riga
  25. Il penultimo carattere è una scheda.
  26. Ci sono almeno 28 righe e sono tutte distinte.
  27. Nel >codice deve essere presente un carattere e le parentesi angolari devono essere bilanciate.
  28. Nel programma devono essere presenti più di 88 punti di codice distinti.
  29. Il terzo all'ultimo carattere è una scheda (# 26) E le linee adiacenti devono avere lunghezze diverse

Per risposte future:

  • La prima riga è una corrispondenza palindromo .␣␣␣␣␣␣␣␣"␣"␣␣␣␣␣␣␣␣.(sei libero di compilare i campi).
  • Il secondo carattere è uno di ',16;, o una scheda o uno di \x04\x0e\x13\x18\x1d.
  • La sua lunghezza è persino un quadrato perfetto.
  • Ci sono almeno 28 linee e tutte le linee sono distinte.
  • La nona riga deve contenere almeno 22 caratteri (esclusa la nuova riga).
  • L'ultima riga non ha caratteri duplicati.
  • Contiene le stringhe esatte ->, Hi, Retina!e Henry Jams?.
  • Contiene |, +e C.
  • Ogni riga contiene almeno un carattere di tabulazione, ma non può essere il primo carattere di una riga.
  • !". sono vietati salvo ove necessario:
    • Sono ammessi solo !in Hi, Retina!e i due .e due "nella prima riga.
  • #$[\] potrebbe non apparire nel programma.
  • Le estremità di programma con: tab, (qualunque sia) , ~.
  • Le parentesi angolari devono essere bilanciate.
  • Nel programma devono essere presenti più di 88 punti di codice distinti.
  • Le linee adiacenti devono avere lunghezze diverse

Stavo cercando di aggiungere questo al driver, ma il "pesce" binario non l'ha accettato. Qual è il modo appropriato per eseguirlo?
Davis Yoshida,

@DavisYoshida Il link TIO che ho condiviso funziona. Idk how
mbomb007

Sì, non c'è niente di sbagliato in questo, ma se vuoi eseguirlo da uno script bash devi chiamare un interprete
Davis Yoshida

@DavisYoshida Chiedi a Dennis nella chat room di TIO.
mbomb007,


2

1. Aggiungi ++ , 7 byte

D,f,@,1

Provalo online!

Potrebbe anche aggiungere Add ++ prima che le cose inizino a diventare difficili. Questa è semplicemente una traduzione del primo esempio in Add ++. D,f,@,1definisce una funzione che, indipendentemente dall'argomento dato, ritorna 1.


2

4. Stacked , 10 byte

.3[#'even]

Provalo online!

Verifica se la lunghezza del programma è pari. Funzione anonima che ritorna 1per input "veri" e 0per "falsi".

soddisfa:

  1. inizia con a .
  2. contiene un e
  3. ha una lunghezza pari

Come passo l'input a questo codice? Non mi è chiaro dal link TIO.
Wheat Wizard

@ user56656 provare a sostituire la stringa prima f outcon ciò che si desidera verificare. Avvolto tra virgolette singole, evita una singola citazione raddoppiandola
Conor O'Brien

Oh, vedo, hai cambiato il codice ed è per questo che il codice non appare nel piè di pagina.
Wheat Wizard

@ user56656 oh sì, mi dispiace per quello
Conor O'Brien,

2

24, SNOBOL4 (CSNOBOL4) , 256 byte

.;*->+|a	"x"	a|+>-*;.
	x =input
	x =input
	x =input
	x =input
	x =input
	x =input
	x =input
	x =input;* Henry Jams?
	X =INPUT
	OUTPUT =GT(SIZE(X),21)	1
	
	
	
	
	
	
	
	
	
	
	
	
	
end	
	ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234
	Hi, Retina!
	~

Provalo online!

Stampa 1 per la verità e non produce nulla per la falsità.

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C
  22. Ogni riga contiene un carattere di tabulazione.
  23. La nona riga contiene almeno 22 caratteri, esclusa la nuova riga.

Per risposte future:

  • Il primo personaggio è un ., così come il 21 ° personaggio (regola palindromica).
  • Il decimo carattere è un ", così come il dodicesimo carattere (regola palindromica).
  • La prima linea è un palindromo di lunghezza 21.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4 e il suo punto di codice è inferiore a 60 (le pagine stampabili sono ',1;6e la scheda).
  • L'ultimo personaggio è ~.
  • La sua lunghezza è persino un quadrato perfetto.
  • È lungo almeno 28 righe.
  • La nona riga deve contenere almeno 22 caratteri, esclusa la nuova riga.
  • L'ultima riga non vuota non ha caratteri duplicati.
  • Contiene le stringhe esatte ->, Hi, Retina!e Henry Jams?.
  • Contiene |, +eC.
  • Ogni riga contiene un carattere di tabulazione.
  • A ciascun programma ora sono consentiti solo i 2 .e 2 "nella prima riga e !in Hi, Retina!. Quei personaggi non possono essere usati altrove, oltre a non usarli #$[\].

1

2. Triangolarità , 17 byte

..)..
.)Im.
"."=.

Provalo online!

Verifica se il primo carattere è un punto ( .).


15
Hai già eliminato molte lingue pratiche. :(
totalmente umano il

Ciò non include Python, ma in realtà esclude, ad esempio, Haskell
Mr. Xcoder

2
se la tua lingua supporta i float semplicemente trovandosi in qualsiasi parte del codice, .3o simili funzionerebbero
Conor O'Brien


@ user56656 Ouch, quello sembra essere un bug interno con l'indicizzazione ... Lo risolverò più tardi oggi
Mr. Xcoder

1

8. R , 64 byte

.0->z;x=readLines();y=Vectorize(utf8ToInt)(x);any(grepl("->",x))

Provalo online!

soddisfa:

  1. Il primo personaggio è a .
  2. Contiene un e
  3. La sua lunghezza è pari
  4. La sua lunghezza è un quadrato perfetto
  5. Contiene un a
  6. Contiene a >personaggio
  7. Contiene la sequenza esatta ->in una delle sue linee.

1

10. Somme , 64 byte

.1->Hi, Retina! I like French :D
"RVll;d.h:and random stuff too!

Provalo online!

Verifica online!

soddisfa:

  1. Il primo personaggio è a .
  2. Contiene un e
  3. La sua lunghezza è pari
  4. La sua lunghezza è un quadrato perfetto
  5. Contiene un a
  6. Contiene un >personaggio
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.

Per risposte future:

  • Il primo personaggio è a .
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4.

1

7. Sussurri , 66 byte

.abcdefghijklmnopqrstuvwxyz
> ">"
> InputAll
>> 1∈2
>> Output 3

Provalo online!

Output Trueo False. Nota la nuova riga finale.

soddisfa:

  1. Il primo personaggio è a .
  2. Contiene un e
  3. La sua lunghezza è pari
  4. La sua lunghezza in caratteri è un quadrato perfetto
  5. Contiene un a
  6. Contiene un >personaggio

Cordiali saluti, questo ha 64 byte, non 64 caratteri. non significativo, solo da notare
Conor O'Brien,

La risposta Python 3 (# 5) restituisce false quando viene passata come input. Penso che possa essere risolto rimuovendo 2 caratteri dall'alfabeto in alto.
Potato44

@ Potato44 Sei sicuro di includere la nuova riga finale?
caird coinheringaahing

Sì, ho controllato di nuovo e avevo la nuova riga. è perché si tratta di un carattere a più byte e credo che l'invio di Python stia contando i byte.
Potato44

@ Potato44 No, è perché la presentazione di Python sta solo leggendo la prima riga di input, non il tutto
caird coinheringaahing

1

3. Gelatina , 5 byte

.
”ee

Provalo online!

Verifica se l'input contiene un ecarattere. Modificato da a eperché ciò sembrava ingiusto per le lingue senza quel personaggio. E, per verificare, ecco un hexdump:

00000000: 2e0a ff65 65                             ...ee

soddisfa:

  1. Inizia con a .
  2. Contiene un e

2
5 byte mi dice che questo significa essere nella tabella codici gelatina. Possiamo avere un hexdump?
Potato44

@ Potato44 Hexdump aggiunto
caird coinheringaahing

1

18. Python 3 , 144 byte

.6;"ea->?"#"?>-ae";6.
"Hi, Retina!"
import sys
print(len(sys.stdin.read().split("\n"))>26+1)








































"|||||"
4.2

Provalo online!

Emette Truese l'ingresso è lungo almeno 28 righe, Falsealtrimenti.

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.

Per risposte future:

  • Il primo personaggio è a ..
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4.
  • Il decimo personaggio è a " , così come il dodicesimo personaggio (regola palindromica).
  • L'ultima riga non vuota non ha caratteri duplicati.
  • La prima riga è un palindromo di lunghezza = 21
  • Contiene a ?.
  • Contiene a |.
  • Contiene a +.
  • È lungo almeno 28 righe.

1

16: Quarterstaff , 64

1 è vero,

.1......."a".......1.
   1->a[Hi, Retina!]
  ?[-124(.|>a)?]
49a!

Provalo online!

il rientro non fa nulla, comunque.

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |

Per risposte future:

  • Il primo personaggio è a ..
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4.
  • Il decimo personaggio è un" , così come il dodicesimo personaggio (regola palindromica).
  • L'ultima riga non vuota non ha caratteri duplicati.
  • La prima riga è un palindromo di lunghezza = 21
  • Contiene a ?.
  • Contiene a |

sì, ma se la risposta di Pyth non sta cercando "a", cosa sta controllando ???
Limone distruttibile

La risposta pyth verifica che la prima riga contenga un a, questo è dovuto al modo in cui pyth accetta l'input. Sembra che l'OP abbia commesso un errore scrivendo o analizzando il proprio codice. Anche due risposte precedenti hanno questo problema.
Wheat Wizard

@ user56656 è stata una soluzione semplice
Destructible Lemon

@ uset56656 Ho corretto il codice Pyth ora. Spero di non aver rotto nulla. In effetti, ho fatto un errore durante il copia-incolla dell'interprete online, prendendo accidentalmente il programma sbagliato. Scuse per l'inconveniente!
Mr. Xcoder

1

15. Python 3, 64 byte

.1and(11*"""*11(dna1.
Hi, Retina!->   """)and(lambda s:"?"
in s)

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.

Per risposte future:

  • Il primo personaggio è a ..
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4.
  • Il decimo personaggio è a ".
  • L'ultima riga non vuota non ha caratteri duplicati.
  • La prima riga è un palindromo di lunghezza = 21
  • Contiene a ?.

@ mbomb007 fixed
SuperStormer

1

31. Ottava , 324 byte

Nuovo requisito: tutte le ASCII stampabili che non sono state vietate in precedenza devono far parte del codice. La lista completa è: !"%&'()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ^_`abcdefghijklmnopqrstuvwxyz{|}~.

.6;%+<-?|"	"|?-<+%;6.
f=@(x)all(ismember(horzcat(33,34,46,' %&''()*+,=/0123456789:;<->?@ABCDEFGHIJKLMNOPQRSTUVWXYZ^_`abcdefghijklmnopqrstuvwxyz{|}~'),x));	
%	>>
%	V'quQ9g8u'@f/&'A)eLS;p`t'{ZYv4R3aaa
%	bb
%	c
%	dd
%Henry Jams?Hi, Retina!	
%	e
%	ff
%	g
%	hh
%	i
%	jj
%	k
%	ll
%	m
%	nn
%	o
%	pp
%	q
%	rr
%	s
%	tt
%	u
%	vvv
%	a~

Provalo online!

  1. Contiene un e.
  2. La sua lunghezza è pari.
  3. La sua lunghezza è un quadrato perfetto.
  4. Contiene un a.
  5. Contiene un >personaggio.
  6. Contiene la stringa esatta ->.
  7. Contiene la stringa esatta Hi, Retina!.
  8. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  9. Il decimo personaggio è a ".
  10. L'ultima riga non vuota non ha caratteri duplicati.
  11. La prima riga è un palindromo di lunghezza> 5.
  12. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  13. Contiene a ?.
  14. Contiene a |.
  15. Contiene a +.
  16. È lungo almeno 28 righe.
  17. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  18. Contiene Henry Jams?come sottostringa continua.
  19. L'ultimo personaggio è ~.
  20. Contiene a C
  21. Ogni riga contiene un carattere di tabulazione.
  22. La nona riga contiene almeno 22 caratteri, esclusa la nuova riga.
  23. Il carattere di tabulazione non può essere il primo carattere di una riga
  24. Il penultimo carattere è una scheda.
  25. Ci sono almeno 28 righe e sono tutte distinte.
  26. Nel >codice deve essere presente un carattere e le parentesi angolari devono essere bilanciate.
  27. Nel programma devono essere presenti più di 88 punti di codice distinti.
  28. Il terzo all'ultimo carattere è una scheda (# 26) E le linee adiacenti devono avere lunghezze diverse
  29. Tutti i caratteri ASCII stampabili che non sono stati precedentemente vietati devono far parte del codice. L'elenco completo è:!"%&'()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ^_`abcdefghijklmnopqrstuvwxyz{|}~

Per risposte future:

  • La prima riga è una corrispondenza palindromo .␣␣␣␣␣␣␣␣"␣"␣␣␣␣␣␣␣␣.(sei libero di compilare i campi).
  • Il secondo carattere è uno di ',16;, o una scheda o uno di \x04\x0e\x13\x18\x1d.
  • La sua lunghezza è persino un quadrato perfetto.
  • Ci sono almeno 28 linee e tutte le linee sono distinte .
  • La nona riga deve contenere almeno 22 caratteri (esclusa la nuova riga).
  • L'ultima riga non ha caratteri duplicati.
  • Contiene le stringhe esatte ->, Hi, Retina!e Henry Jams?.
  • Ogni riga contiene almeno un carattere di tabulazione, ma non può essere il primo carattere di una riga.
  • !". sono vietati salvo ove necessario:
    • Sono ammessi solo !in Hi, Retina!e i due .e due "nella prima riga.
  • #$[\] potrebbe non apparire nel programma.
  • Le estremità di programma con: tab, (qualunque sia) , ~.
  • Le parentesi angolari devono essere bilanciate.
  • Nel programma devono essere presenti più di 88 punti di codice distinti.
  • Le linee adiacenti devono avere lunghezze diverse
  • Contiene tutte le ASCII stampabili che non sono state precedentemente vietate. I personaggi sono: !"%&'()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ^_`abcdefghijklmnopqrstuvwxyz{|}~.

Lo eliminerò felicemente se le funzioni crittografiche non sono consentite, ma per ora non è proibito. In realtà mi sono divertito molto a forzarlo, però ...
Stewie Griffin,

Se non lo vietiamo, qualcuno potrebbe fare SHA-256 o peggio, e ancora una volta, non è possibile dimostrare che una quantità infinita di stringhe è consentita quando si utilizzano queste funzioni hash.
mbomb007,

Tutti i miei test dimostrano che è sufficiente avere 3 (forse 4) byte che possono essere raccolti in ciliegia e che soddisfi i requisiti di crittografia con una forza bruta molto semplice. Potrei scrivere una risposta che lo renderebbe molto difficile da seguire per chiunque, senza utilizzare le funzioni crittografiche, poiché non esiste un limite di byte. Penso che sia meglio scoraggiare solo le risposte future dal tentativo deliberatamente di rompere la catena. Questi sono solo i miei due centesimi però :)
Stewie Griffin

Penso che qualsiasi risposta che richieda a un altro responder di usare la forza bruta sia di cattivo gusto.
mbomb007,

Sono d'accordo fino a un certo punto. Ecco perché sarei felice di eliminare questa risposta se non viene consentita.
Stewie Griffin,

0

6. Pyth , 16 byte

.e}\as.zS13    5

Provalo qui!

Verifica se l'ingresso contiene un a. Output:

  • [True, True, True, True, True, True, True, True, True, True, True, True, True] per la verità

  • o [False, False, False, False, False, False, False, False, False, False, False, False, False]per falsità

soddisfa:

  1. inizia con a .
  2. contiene un e
  3. ha una lunghezza pari
  4. ha una lunghezza quadrata perfetta
  5. contiene un a

2
Correggimi se sbaglio, ma dal testare la risposta su cui sto lavorando sembra controllare solo se aè nella prima riga. Almeno 2 risposte sono errate perché non corrispondono a ciò che dice il testo di questa risposta (e le persone non stanno testando le loro risposte).
Potato44

@ Potato44 Mio male, scuse! Fisso.
Mr. Xcoder

@ Mr.Xcoder ti sei assicurato che non soddisfacesse nessuna delle condizioni "future"? non sembra
Limone distruttibile

@DestructibleLemon Questo soddisfa una delle condizioni future? Non riesco a trovare alcun requisito che violi.
Mr. Xcoder

@ Mr.Xcoder Credo di no
Destructible Lemon

0

20. Gelatina , 100 byte

Questo codice controlla se Henry Jams?. Ritorna 1per la verità, 0per la falsità.

.6;%+->?|"e"|?>-+%;6.
Hi, Retina!->0123456789
0123456789
0123
























“Henry Jams?”ẇ

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.

Per risposte future:

  • Il primo personaggio è un ., così come il 21 ° personaggio (regola palindromica).
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4 e il suo punto di codice è inferiore a 60.
  • Il decimo personaggio è un" , così come il dodicesimo personaggio (regola palindromica).
  • L'ultima riga non vuota non ha caratteri duplicati.
  • La prima riga è un palindromo di lunghezza = 21
  • Contiene a ?.
  • Contiene a |.
  • Contiene a +.
  • È lungo almeno 28 righe.
  • I seguenti caratteri possono essere utilizzati solo cinque volte in totale: !"#$.[\].
    • A ciascun programma ora sono consentiti solo i 2 .e 2 "nella prima riga e !in Hi, Retina!. Quei personaggi non possono essere usati altrove, oltre a non usarli #$[\].
  • Ogni programma deve contenere Henry Jams?come sottostringa continua.

0

22, Ottava , 100 byte

Riepilogo: ora Cnel codice deve essere presente una lettera maiuscola .

.6;%+->?|"e"|?>-+%;6.
'Hi, Retina!Henry Jams?';
f=@(x)any(x=='C');
%Any C?























%~

Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.
  19. Contiene Henry Jams?come sottostringa continua.
  20. L'ultimo personaggio è ~.
  21. Contiene a C

Per risposte future:

  • Il primo personaggio è un ., così come il 21 ° personaggio (regola palindromica).
  • Il decimo carattere è un ", così come il dodicesimo carattere (regola palindromica).
  • La prima linea è un palindromo di lunghezza 21.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4 e il suo punto di codice è inferiore a 60 (le pagine stampabili sono ',1;6e la scheda).
  • L'ultimo personaggio è ~.

  • La sua lunghezza è persino un quadrato perfetto.
  • È lungo almeno 28 righe.
  • L'ultima riga non vuota non ha caratteri duplicati.

  • Contiene la sequenza esatta ->.
  • Contiene le stringhe esatte Hi, Retina!e Henry Jams?.
  • Contiene |, +e C.

  • A ciascun programma ora sono consentiti solo i 2 .e 2 "nella prima riga e !in Hi, Retina!. Quei personaggi non possono essere usati altrove, oltre a non usarli #$[\].

0

19, Ottava , 196 byte

Nota: ho apportato una modifica al codice per correggere un errore. L'unica modifica è stata quella di includere la regola del palindromo. Questo evita un falso positivo per la risposta 10.


La maggior parte dei requisiti finora può essere facilmente aggirata usando commenti e stringhe soppresse, rendendo banale l'aggiunta di risposte. Ho pensato di renderlo un po 'più difficile vietando invece alcuni personaggi.

.6;%+->?|"e"|?>-+%;6.
f=@(x)all(ismember('Hi, Retina!',x))&sum(ismember(x,cat(2,33:36,46,91:93,'')))<6&x(2)<60&all((k=x(1:find(x==10,1)-1))==flip(k))
%












































Provalo online!

soddisfa:

  1. Il primo personaggio è a ..
  2. Contiene un e.
  3. La sua lunghezza è pari.
  4. La sua lunghezza è un quadrato perfetto.
  5. Contiene un a.
  6. Contiene un >personaggio.
  7. Contiene la stringa esatta ->.
  8. Contiene la stringa esatta Hi, Retina!.
  9. La somma dei primi due punti di codice Unicode è un multiplo di 5.
  10. Il decimo personaggio è a ".
  11. L'ultima riga non vuota non ha caratteri duplicati.
  12. La prima riga è un palindromo di lunghezza> 5.
  13. La prima riga è esattamente lunga 21 caratteri (esclusa la nuova riga).
  14. Contiene a ?.
  15. Contiene a |.
  16. Contiene a +.
  17. È lungo almeno 28 righe.
  18. I seguenti caratteri vengono utilizzati cinque volte in totale: !"#$.[\]e il punto di codice del secondo carattere è inferiore a 60.

Per risposte future:

  • Il primo personaggio è un ., così come il 21 ° personaggio (regola palindromica).
  • La sua lunghezza è persino un quadrato perfetto.
  • Contiene la sequenza esatta ->.
  • Contiene la stringa esatta Hi, Retina!.
  • Il punto di codice Unicode del secondo carattere, mod 5, è 4 e il suo punto di codice è inferiore a 60.
  • Il decimo personaggio è un" , così come il dodicesimo personaggio (regola palindromica).
  • L'ultima riga non vuota non ha caratteri duplicati.
  • La prima riga è un palindromo di lunghezza = 21
  • Contiene a ?.
  • Contiene a |.
  • Contiene a +.
  • È lungo almeno 28 righe.
  • I seguenti caratteri possono essere utilizzati solo cinque volte in totale: !"#$.[\].
    • A ciascun programma ora sono consentiti solo i 2 .e 2 "nella prima riga e !in Hi, Retina!. Quei personaggi non possono essere usati altrove, oltre a non usarli #$[\].

Non ho votato a fondo, ma citando OP:This will probably be more fun if you try to maximize your own score rather than "win" the challenge.
Uriel

Non ho votato in negativo, ma forse il downvoter l'ha fatto perché convalidi due cose in una risposta invece di una. Non esiste alcuna regola che non lo permetta, ma posso immaginare qualcuno che effettui il downvoting a causa di ciò. (O perché avevano in programma una risposta che non è più possibile, anche se sarebbe una ragione abbastanza infantile per sottovalutare imo ..) Poiché non riesco a vedere nulla di sbagliato in questo, ho votato per neutralizzare.
Kevin Cruijssen,

puoi aumentare il limite di 5 caratteri a qualcosa di più alto o escluderlo .prima che sia necessaria un'altra risposta? poiché la prima riga è palindromo lascia solo 3 punti, il che è quasi impossibile nella maggior parte delle lingue verbose di OOP. anche 5 "e `` rende quasi impossibile creare stringhe multilinea
Uriel

La buona notizia è che conosco un paio di lingue che dovrebbero ancora funzionare.
mbomb007,

Grazie per averlo notato, l'ho risolto ora senza influire sulla catena. Devo aver copiato il codice dalla scheda sbagliata (avevo codici simili in diverse schede a scopo di test).
Stewie Griffin,
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.