Stax , 11 byte (punteggio di 4)
'''cc'~~'dd
Esegui ed esegui il debug online!
È mio onore avere la prima (cronologicamente) risposta a questa sfida con un punteggio maggiore o uguale a 4. Forse il punteggio può essere ancora più alto.
In Stax, viene scritto un letterale stringa composto da un singolo carattere ', così '', 'c, 'd, '~come tutti i letterali stringa. I comandi corrispondenti per c de ~significano duplicare la parte superiore dello stack principale, aprire la parte superiore dello stack principale e far apparire la parte superiore dello stack principale e spingere nello stack di input, rispettivamente. Per questa sfida, lo stack di input non influisce sull'output e non è importante, quindi possiamo dire de ~sono identici.
Spiegazione
È meglio dividere il codice in più parti e considerarle separatamente.
Quando non viene manomesso, '''ccspinge un valore letterale 'e un valore letterale cnella pila principale e duplica la parte superiore, in modo che la pila risulti (dal basso) c,c,'.
Quando non viene manomesso, '~~spinge il valore letterale ~e quindi lo pop (e spinge nello stack di input), che è fondamentalmente un no-op per lo stack principale.
Quando non viene manomesso, 'ddspinge il valore letterale de poi lo apre, un altro no-op per lo stack principale.
Alla fine del programma, poiché non viene eseguito alcun output esplicito, la parte superiore dello stack principale verrà stampata implicitamente.
Se il programma è in esecuzione così com'è, lo stack finale è ancora c,c,'e verrà emesso c.
Se la prima parte diventa ''cc, allora abbiamo un letterale 'e due istruzioni per la copia, lo stack finale sarà ',','. Dato che le altre due parti non sono operative, il risultato sarà '.
Se la prima parte diventa '''c, il risultato è sostanzialmente lo stesso con quello non manomesso, ma cnon viene duplicato. Quindi lo stack sarà c,'. Dopo due no-op è in cima alla pila c.
Quindi possiamo rilevare le radiazioni nella prima parte.
La seconda parte e la terza parte funzionano esattamente allo stesso modo. Prenderò la terza parte come esempio.
Se la terza parte viene manomessa, le prime due parti vengono mantenute così come sono e lo stack prima di eseguire la terza parte è c,c,'
Se la terza parte diventa 'd, un letterale dviene spinto in cima allo stack principale e non viene fatto altro. La parte superiore dello stack principale è ora quella dche verrà prodotta.
Se la terza parte diventa dd, due elementi vengono estratti dalla pila principale e ora la parte superiore della pila è 'e viene emessa.
Quindi possiamo rilevare le radiazioni nella terza parte. Per lo stesso motivo possiamo rilevare le radiazioni nella seconda parte.