Persona di interesse


28

sfondo

Person of Interest è un film poliziesco su CBS e il mio programma TV preferito, negli ultimi tempi.

Lo spettacolo parla di un uomo di nome Harold Finch, programmatore miliardario, e del suo partner John Reese, un veterano delle forze speciali ed ex agente della CIA. Questo programmatore ha creato un'intelligenza artificiale senziente chiamata "The Machine" che prevede i crimini violenti prima che si verifichino. Tiene traccia di ogni persona sulla Terra in ogni momento monitorando e analizzando tutte le telecamere di sorveglianza e le comunicazioni elettroniche in tutto il mondo.

Harold ha costruito The Machine per il governo degli Stati Uniti per rilevare l'attività terroristica prima del fatto. Divide i crimini che prevede in elenchi in base al fatto che siano o meno rilevanti per la sicurezza nazionale. I casi pertinenti sono gestiti dal governo, mentre l'elenco "irrilevante" è programmato per essere eliminato quotidianamente.

Harold ha creato una piccola backdoor per se stesso nella speranza di gestire da solo l'elenco "irrilevante". Questa backdoor fa sì che The Machine chiami il telefono pubblico più vicino a Harold (una volta al giorno) e gli legga un numero di previdenza sociale. Questo SSN appartiene a qualcuno la cui vita è in pericolo come parte di un crimine premeditato, o di qualcuno che sta pianificando un tale crimine.


La sfida

Scrivi un programma che non accetta input e genera 30 numeri di telefono casuali e SSN (vedi sotto).


Produzione

Esistono due righe di testo che verranno stampate ogni "giorno".

  1. Crime predicted: 555-55-5555
  2. Calling: 1-555-555-5555 seguito da una nuova riga

Questo processo dovrebbe ripetersi per un "mese" (30 "giorni").


Numeri di telefono

Ogni numero di telefono deve avere i seguenti elementi:

  • Deve avere il codice Paese degli Stati Uniti (la prima cifra).

  • Deve avere un prefisso casuale (prima serie di tre cifre).

  • Le prime tre cifre del numero di telefono stesso dovrebbero essere555 , seguite da 4 cifre casuali.

Ecco un esempio annotato:

1-814-555-3857
|  |   |   |
|  |   |   |
|  |   |   +---------->   random four digits
|  |   |
|  |   +-------------->   the set 555
|  |
|  +------------------>   area code
|
+--------------------->   country code

Numeri di previdenza sociale

Ogni SSN deve contenere 9 cifre casuali nel seguente formato.

342-98-1613

Esempio

Crime predicted: 234-72-8311
Calling: 1-633-555-0188

Crime predicted: 135-77-0910
Calling: 1-202-555-4719

Crime predicted: 722-90-6653
Calling: 1-466-555-1069

...

Continuando per altri 27 cicli.


tabellone segnapunti

Affinché il tuo punteggio appaia sul tabellone, dovrebbe essere in questo formato:

# Language, Bytes

Le barrature non dovrebbero causare problemi.


3
Inoltre, quali sono i valori validi per i codici paese / prefissi statunitensi?
mınxomaτ,

2
Ho rimosso il limite di tempo. Per quanto riguarda la tua seconda domanda, il codice paese degli Stati Uniti è esplicitamente un 1. Per quanto riguarda i prefissi, ogni tre cifre lo farà, ai fini di questa sfida. @minxomat
Zach Gates,

1
@LuisMendo c'è un consenso su meta su cosa significhi casuale se non completamente definito
FryAmTheEggman

5
Naturalmente, generare i numeri nel formato in cui sono effettivamente trasmessi da The Machine nello show sarebbe ancora più complicato ...;)
Mason Wheeler,

Risposte:


10

CJam, 68 66 64 byte

Grazie a Dennis per aver salvato 2 byte!

"Crime predicted: --
Calling: 1--555-

"30*{_5<{iAa*:mr}&}/

Il copypasting non funzionerà poiché ci sono alcuni non stampabili (uno al posto di ciascun gruppo casuale), quindi ecco un xxddump:

00000000: 2243 7269 6d65 2070 7265 6469 6374 6564  "Crime predicted
00000010: 3a20 032d 022d 040a 4361 6c6c 696e 673a  : .-.-..Calling:
00000020: 2031 2d03 2d35 3535 2d04 0a0a 2233 302a   1-.-555-..."30*
00000030: 7b5f 353c 7b69 4161 2a3a 6d72 7d26 7d2f  {_5<{iAa*:mr}&}/

Per invertirlo, incollalo in un file e avvialo xxd -r in_file > out_file. Puoi anche provarlo online .

Spiegazione

"..."30*     Push the string 30 times
{ ... }/     For each character in the string:
_5<{ ... }&    If the ASCII code is < 5:
iAa*             Push an array of as many 10s as the ASCII code
:mr              For each 10, choose a random 0-9 number

Non ci avrei mai pensato da solo, ma sembra che sia più breve di due byte in Pyth.
FryAmTheEggman,

@FryAmTheEggman Probabilmente dovrei imparare Pyth, spesso è più corto di CJam. Puoi pubblicare quella risposta se vuoi :)
Andrea Biondo,

8

Python 2, 129

from random import*
print''.join([c,`randint(0,9)`][c>'w']for c in'Crime predicted: xxx-xx-xxxx\nCalling: 1-xxx-555-xxxx\n\n'*30)

Un metodo ingenuo. Prende il messaggio

Crime predicted: xxx-xx-xxxx
Calling: 1-xxx-555-xxxx

e lo copia 30 volte. Quindi, sostituisce ciascuno xcon una cifra casuale randint(0,9), mantenendo tutti gli altri caratteri uguali.


6

Python 2, 151 byte

Grazie al signore (e @Dennis) per %0nd: D

from random import randrange as r
for i in[1]*30:print"Crime predicted: %03d-%02d-%04d\nCalling: 1-%03d-555-%04d\n"%(r(1e3),r(100),r(1e4),r(1e3),r(1e4))

6

Perl, 85 byte, grazie a Dennis e grc!

$_="Crime Predicted: NNN-NN-NNNN 
Calling: 1-NNN-555-NNNN 

"x30;s/N/0|rand 10/eg;print

Perl originale, 91 92 byte

print"Crime Predicted: NNN-NN-NNNN
Calling: 1-NNN-555-NNNN

"=~s/N/int rand 10/egr for 1..30

1
@Dennis aw, stavo per postarlo finché non ho visto questa risposta. Ho avuto $_="..."x30;s/_/0|rand 10/eg;printche salva la /rbandiera.
grc,

Grazie @Dennis e @grc! È consuetudine incorporare le modifiche suggerite nei commenti (con attribuzione ovviamente)? In caso contrario, ripristinerò la mia modifica. Ma comunque grazie! Mi ero completamente dimenticato del 0|rand ...trucco e dell'operatore di ripetizione che sto usando per schiaffeggiare ripetutamente la mia testa per averlo perso!
type_outcast,

2
Sì, è consuetudine. Se non lo hai già fatto, dai un'occhiata ai suggerimenti per giocare a golf in Perl? . È una grande risorsa.
Dennis,

5

CJam, 73 71 70 byte

30{"Crime predicted: x-x-x
Calling: 1-x-555-x
"'x/[ZY4Z4]Aaf*::mr.+N}*

Provalo online nell'interprete CJam .

Come funziona

30{     e# Repeat 30 times:

e# Push the following string:

"Crime predicted: x-x-x
Calling: 1-x-555-x
"

'x/     e# Split at x's.
[ZY4Z4] e# Push the array [3 2 4 3 4].
Aaf*    e# For each integer in that array, repeat [10] that many times.
        e# This pushes [[10 10 10][10 10][10 10 10 10][10 10 10][10 10 10 10]].
::mr    e# For each 10, select a random integer between 0 and 9 (inclusive).
.+      e# Vectorized concatenation.
        e# This places the digits at the spots of the x's.
N       e# Push a linefeed.
}*      e#

5

ß, 121 118 112 byte

°/N=1°(30°/M°=ß$-ß$$'Crime predicted: 000-00-0000\nCalling: 1-000-555-0000\n\n'),'',3)µ€(M='0')?ß!G0,9,1):M)°)°)

Sostanzialmente sostituisce 0 con un numero casuale ciascuno e si chiama 30 volte.

Provalo usando il terminale online :

sharps:~$ "<ctrl+v the code here>"                       
Crime predicted: 214-59-4707                              
Calling: 1-850-555-8529                                   

Crime predicted: 722-97-6832                              
Calling: 1-864-555-6965                                   

<and so on...>

Modifica (112B): utilizzo $$(qualcosa come sprintf) e operatore ternario.


Potresti fornire un link alle specifiche di questa lingua?
LegionMammal978,

@ LegionMammal978 Ci vuole del tempo per scrivere. In termini semplici: ha tutte le funzionalità di AutoIt.
mınxomaτ,

4

Pyth, 66

V30sX"Crime Predicted: v-w-x
Calling: 1-y-555-z
">5GmjkmOTdj32434T

Utilizza Xper tradurre le ultime 5 lettere dell'alfabeto ( >5G == 'vwxyz') sui 5 numeri casuali. Utilizza lo stesso RNG trovato da Sok.

Provalo online qui


4

Pyth, 62

Un'implementazione della fantastica risposta di Andrea CJam.

sm?<Cd5jkmOTCdd*30"Crime Predicted: --
Calling: 1--555-

"

Si noti che ci sono diversi caratteri non stampabili nell'origine e non dovrebbe esserci un finale ". È stato aggiunto per SE in modo che sembri un po 'più leggibile. Non sono stato ancora in grado di ottenere un hexdump, ma il link qui sotto funziona e dovresti essere in grado di copiarlo.

Provalo online qui


3

CJam, 74 byte

30{[ZY4Z4]{Aa*:mrs}%"Crime predicted: %s-%s-%s
Calling: 1-%s-555-%s

"e%}*

Non è un vincitore, ma è almeno un po 'vicino a quello che Dennis ha finora, e sta usando un approccio diverso. Quindi ho pensato che valesse la pena pubblicare comunque.

Questo utilizza l' e%operatore CJam , che genera output con una stringa di formato in stile printf.

30      Repeat count for whole output.
{       Start loop.
  [ZY4Z4] Build list of random number lengths: [3 2 4 3 4].
  {       Start loop over all random number lengths.
    Aa*     Build list of [10 ... ] with the random number length.
            E.g. for length 3, this will be [10 10 10].
    :mr     Apply the random number operator to the list. This will generate
            a list of random numbers between 0 and 9, with the given length.
    s       Convert it to a string.
  }%      End of loop over random number lengths.
  "..."   Format string, with a %s for each random number.
  e%      Apply printf style formatting.
}*      End of main repeat loop.

Woah, pensavo fossi @DavidCarraher con quell'avatar!
Decadimento beta

@BetaDecay Questo? codegolf.stackexchange.com/users/3967/david-carraher . Nemmeno lo stesso animale! :) I colori sono quasi gli stessi, però.
Reto Koradi,

Se uniamo i nostri approcci, possiamo arrivare a 70 byte: permalink
Dennis

@Dennis Sentiti libero di provarci. Mi hai aiutato molte volte.
Reto Koradi,

@RetoKoradi Abbastanza vicino;)
Decadimento beta

3

Matlab / Octave, 108 172 byte

disp(sprintf('Crime predicted: %i%i%i-%i%i-%i%i%i%i\nCalling: 1-%i%i%i-555-%i%i%i%i\n\n',randi(10,1,480)-1))

Provalo online


3

JavaScript (ES6), 142

Risposta del mixmat della nota a margine in ß mostra un modo migliore per eseguire questo compito e potrebbe essere facilmente implementata in JS dando un punteggio migliore. Vorrei averci pensato.

modificare Aggiunto il testo mancante (ho letto male la sfida)

Prova a eseguire lo snippet di seguito in un browser compatibile con EcmaScript 6

/* TEST redirect console.log */ console.log=x=>O.innerHTML+=x+'\n'

for(i=30;i--;)console.log(`Crime predicted: ${(R=d=>(1e-9+Math.random()+'').substr(2,d))(3)}-${R(2)}-${R(4)}
Calling: 1-${R(3)}-555-${R(4)}
`)
<pre id=O></pre>


Ottima soluzione! Tuttavia, l'ultima parte del numero di telefono ha occasionalmente meno di 4 cifre; lo stesso con la seconda e la terza parte del SSN.
ETHproductions,

@ETHproductions rats! Ripristino alla versione precedente!
edc65,

3

Fourier, 166 142 byte

45~d030(~i67a114a-9a+4a-8a32a112a^^a101ava+5a-6a116a101ava58a32a999roda99roda9999ro10a67a97a108aa-3a+5a-7a58a32a1oda999roda5oooda9999ro10aai^)

Questo ha uno dei conteggi di byte più alti, ma io sono un grande fan di Fourier e volevo provare la mia soluzione. Non molto ottimizzato.

Abbattendo:

45~d

Imposta la variabile d su 45, il codice ASCII per un trattino. Questo personaggio è stampato così tanto che salva alcuni byte per dichiararlo qui.

030(...)

Imposta l'accumulatore su zero e scorre all'interno delle parentesi fino a quando non raggiunge 30.

67a114a-9a+4a-8a32a112a^^a101ava+5a-6a116a101ava58a32a

Stampa "Crime predected:".

999roda99roda9999ro10a

Stampa un SSN + newline completamente casuale.

67a97a108aa-3a+5a-7a58a32a

Stampa "Chiamata:".

1oda999roda5oooda9999ro

Stampa un numero di telefono che segue le linee guida: 1-xxx-555-xxxx

10aa

Stampa due nuove righe per ricominciare.


1
Ehi, potresti essere interessato al fatto che ora c'è un interprete online su fourier.tryitonline.net (e anche labs.turbo.run/beta/fourier )
Decadimento beta

2

Pyth, 67 byte

V30s.ic"Crime predicted: |-|-|
Calling: 1-|-555-|
"\|mjkmOTdj32434T

Le nuove righe sono importanti e sono incluse nel conteggio dei byte. Provalo qui .

                                Implicit: T=10, k=''
       "..."                    The output string
      c     \|                  Split on '|' placeholders
                     j32434T    32434 to base ten -> [3,2,4,3,4]
              m                 Map for d in the above:
                 mOTd             Generate d random numbers from 0-9
               jk                 Concatenate into string (join on empty string)
    .i                          Interleave segments of output string with random strings
   s                            Concatenate and output
V30                             Perform the above 30 times

2

Haskell, 150 byte

import System.Random
p '#'=putChar=<<randomRIO('0','9')
p x=putChar x
main=mapM p$[1..30]>>"Crime predicted: ###-##-####\nCalling: 1-###-555-####\n\n"

2

JavaScript (ES6), 130 123 byte

Prendendo un ulteriore passo avanti con la soluzione ß di minxomat, ho sostituito 0s con il numero di 0s che sarebbe stato lì. Il codice utilizza quei numeri per estrarre il numero corretto di cifre Math.random(), salvando un bel po 'di byte nel processo.

for(i=30;i--;)console.log(`Crime predicted: 3-2-4
Calling: 1-3-555-4
`.replace(/[2-4]/g,x=>`${Math.random()}`.substr(2,x)))

Provalo:

// redirecting console.log() for this demonstration
console.log=x=>O.innerHTML+=x+'\n';
O.innerHTML='';

for(i=30;i--;)console.log(`Crime predicted: 3-2-4
Calling: 1-3-555-4
`.replace(/[2-4]/g,x=>`${Math.random()}`.substr(2,x)))
<pre id=O>

Come sempre, suggerimenti benvenuti!


2

Java, 246 byte

import java.util.*;class C{static{Random r=new Random();for(int i=0;i++<30;)System.out.printf("Crime predicted: %s-%s-%s\nCalling: 1-%s-555-%s\n\n",r.nextInt(900)+100,r.nextInt(90)+10,r.nextInt(900)+100,r.nextInt(900)+100,r.nextInt(9000)+1000);}}

Con interruzioni di riga:

import java.util.*;
class C{
    static{
       Random r = new Random();
       for(int i = 0; i++<30;)
           System.out.printf("Crime predicted: %s-%s-%s\nCalling: 1-%s-555-%s\n\n",r.nextInt(900)+100,r.nextInt(90)+10,r.nextInt(900)+100,r.nextInt(900)+100,r.nextInt(9000)+1000);
    }
}

È un inizio Invece di produrre cifre casuali ho usato numeri casuali a 3 o 4 cifre.


2

R, 151 146 o 144 byte

Codice

for(l in 1:30)cat(sep="","Crime predicted: ",(i=floor(runif(16,,10)))[1:3],"-",i[4:5],"-",i[6:9],"\nCalling: 1-",i[10:12],"-555-",i[13:16],"\n\n")

Provalo online .

Ungolfed

for(l in 1:30) {
  i=floor(runif(16,,10))
  cat(sep="","Crime predicted: ",
      i[1:3],"-",i[4:5],"-",i[6:9],
      "\nCalling: 1-",i[10:12],"-555-",
      i[13:16],"\n\n")
  }

Penso che ci sia un sacco di spazio per migliorare, ma non sto scherzando con le stringhe in R.

Modifica 1: modificato runif(16,max=10)inrunif(16,,10) .

Ho fatto un altro codice ( 147 144 byte) con sprintfma non penso che sia molto un codice simile a R.

for(l in 1:30)cat(do.call(sprintf,as.list(c('Crime predicted: %s%s%s-%s%s-%s%s%s%s\nCalling: 1-%s%s%s-555-%s%s%s%s\n\n',floor(runif(16,,10))))))

Un altro approccio (149 byte):

for(p in 1:30)cat(sep="",replace(s<-strsplit("Crime predicted: '''-''-''''\nCalling: 1-'''-555-''''\n\n","")[[1]],which(s<"-"),floor(runif(16,,10))))

2

PHP , 144 143 byte

<?=preg_replace_callback('/x/',function($x){return chr(rand(48,57));},str_repeat("Crime predicted: xxx-xx-xxxx
Calling: 1-xxx-555-xxxx

",30));


2

C #, 280 263 246 byte

golfed:

using System;class C{static string G(){var r=new Random();var s="";n h=x=>r.Next(x).ToString("D"+x);for(int i=0;i++<30;){s+="Crime predicted: "+h(3)+"-"+h(2)+"-"+h(4)+"\nCalling: 1-"+h(3)+"-555-"+h(4)+"\n\n";}return s;}delegate string n(int x);}

rientrato:

using System;
class C
{
    static string G()
    {
        Random r = new Random();
        string s = "";
        Func<int, string> f = x => r.Next((int)Math.Pow(10, x)).ToString("D" + x);            

        for (int i = 0; i++ < 30;)
        {
            s += "Crime predicted: " + f(3) + "-" + f(2) + "-" + f(4) + "\nCalling: 1-" + f(3) + "-555-" + f(4) + "\n\n";
        }
        return s;
    }
}

Novità su Codegolf, i suggerimenti sono benvenuti!


Benvenuto in Programmazione di puzzle e codice golf! Io non sono intimamente familiare con C #, ma dal momento che è basa sulla .NET come PowerShell è, penso che il h(999)genererà un numero da 000a 998inclusiva, in modo che significa che questo non abbastanza colpito lo spirito delle specifiche. Ho riscontrato lo stesso problema .
AdmBorkBork,

Hai ragione, lo riparerò ora!
anthonytimmers,

Sono andati fino a 280 byte dopo la correzione, quindi ho pensato di eseguire la formattazione nel gestore delegato, riducendolo a 263 byte.
anthonytimmers,

1

Hassium , 230 byte

func main(){foreach(x in range(1,31){println("Crime predicted: "+r(3)+"-"+r(2)+"-"+r(4));println("Calling: 1-"+r(3)+"-555-"+r(4)+"\n");}}
func r(l){z=new Random();a="";foreach(y in range(1,l))a+=z.next(0,10).toString();return a;}

Allargato:

func main () {
        foreach (x in range(1, 31) {
                println("Crime predicted: " + r(3) + "-" + r(2) + "-" + r(4));
                println("Calling: 1-" + r(3) + "-555-" + r(4) + "\n");
        }
}
func r (l) {
        z = new Random();
        a = "";
        foreach (y in range(1, l))
                a += z.next(0, 10).toString();
        return a;
}

1

Rubino, 98 caratteri

30.times{puts"Crime Predicted: DEF-GH-IJKL
Calling: 1-MNO-555-QRST

".tr"D-OQ-T",rand.to_s[2..-1]}

Esecuzione di esempio:

bash-4.3$ ruby -e '30.times{puts"Crime Predicted: DEF-GH-IJKL\nCalling: 1-MNO-555-QRST\n\n".tr"D-OQ-T",rand.to_s[2..-1]}' | head
Crime Predicted: 867-29-2637
Calling: 1-278-555-5424

Crime Predicted: 913-31-6306
Calling: 1-744-555-8188

Crime Predicted: 868-36-4612
Calling: 1-926-555-3576

Crime Predicted: 988-06-1643

1

JavaScript, 146 141

console.log(Array(30).join("Crime predicted: 3-2-3\nCalling: 1-3-555-4\n\n").replace(/[2-4]/g,function(m){return(m+Math.random()).substr(3,m)}))

c'è già una risposta nella stessa lingua con meno caratteri dei tuoi.
Jakuje,

@Jakuje l'altra risposta utilizza ES6 che non è ancora ampiamente disponibile
Peleg,

Quindi probabilmente è ok. Citarlo nella tua risposta sarebbe positivo.
Jakuje,

1
@Jakuje Le persone possono inviare ciò che vogliono! Si tratta tanto della sfida quanto del battere gli altri.
ErikE,

1

Javascript pre-ES6, 128

for(i=30;i--;)console.log('Crime predicted: x-x-x\nCalling: x-555-x\n'.replace(/x/g, function(){return 1e3*Math.random()|0}))

Sento che i trattini potrebbero essere rimossi in qualche modo, ma non sono sicuro.


1
Diversi errori: 1) le parti casuali non sono della lunghezza corretta (e nemmeno provano a farlo) 2) mancante "1-".
edc65,


1

Julia, 120 byte

R(n)=lpad(rand(0:10^n-1),n,0)
for i=1:30 println("Crime Predicted: "R(3)"-"R(2)"-"R(4)"\nCalling: 1-"R(3)"-555-"R(4))end

Ungolfed:

# Define a function for returning a random number with a
# specified number of digits
function R(n::Int)
    lpad(rand(0:10^n-1), n, 0)
end

# Print 30 times
for i = 1:30
    println("Crime Predicted: " R(3) "-" R(2) "-" R(4)
            "\nCalling: 1-" R(3) "-555-" R(4))
end

1

Rubino, 90 88 byte

30.times{puts"Crime predicted: NNN-NN-NNNN
Calling: 1-NNN-555-NNNN

".gsub(?N){rand 10}}

Provalo online.


1
Non è necessaria la notazione delle stringhe, basta solo il carattere ?N. Non c'è bisogno di parentesi, intorno randal parametro.
arte

1

PowerShell, 120 108 103 102 byte

0..29|%{("Crime predicted: XXX-XX-XXXX`nCalling: 1-XXX-555-XXX"-split"X"|%{$_+(Random 10)})-join'';""}

Accorciato di qualche byte in più impostando il split-loop in modo che sia un blocco di codice che genera un array @(..)e viene ricollegato.

Eliminato @ricordando che (...)designa un blocco di codice eseguito prima del-join'' comunque.

Questo elimina la necessità di assegnare la $avariabile. Ho anche notato che a causa del -splitfunzionamento della funzionalità, il codice precedente sputava troppe cifre per il numero di telefono, quindi ho ottenuto un byte gratuito salvando lì riducendo1-XXX-555-XXX . Ciò ha compensato l'erroneo Random 9che in realtà sceglie casualmente0-8 , quindi dobbiamo invece specificareRandom 10.

Sooo dang vicino a due cifre, ma non sono sicuro di dove sia possibile giocare a golf su un altro quattro 3 byte ...


Precedente, 108

0..29|%{$a="";"Crime predicted: XXX-XX-XXXX`nCalling: 1-XXX-555-XXXX"-split"x"|%{$a+="$_$(Random 9)"};$a;""}

Abbreviato il codice di un paio di byte invece dividendo una stringa su X"s", quindi ricircolando la matrice risultante di stringhe e concatenando ogni voce con una Randomcifra per creare la nostra stringa di output finale $a. Nota che non potevamo fare qualcosa del genere"string".replace("x",$(Random 9)) perché allora Randomverrebbero chiamati solo una volta, quindi avresti 1-222-555-2222un numero di telefono, ad esempio.


Precedente, 120

0..29|%{"Crime predicted: "+(Random 1e9).ToString("000-00-0000");"Calling: "+(Random 1e7).ToString("1-000-555-0000");""}

Abbastanza competitivo rispetto a un linguaggio dettagliato, grazie alle generose specifiche di output (cioè 000-00-0001viene trattato come un SSN valido) e .ToString()all'algoritmo di formattazione veramente robusto che PowerShell utilizza. PowerShell emette anche\r\n dopo ogni output di stringa, quindi il requisito per una nuova riga tra le iterazioni è solo un semplice"" .

Si noti che questo utilizza un implicito Get-di fronte Random, quindi potrebbe essere molto lento su alcune piattaforme / implementazioni.


0

Befunge-98, 170

Penso che questo possa ancora essere risolto un po '. Ma almeno ho battuto C #. Testato su befungius.aurlien.net .

a3*>  82*v>":detciderp emirC">:#,_$...'-,..'-,....av
>1 -:!#;_v^;v,,,"-555-"...,,,,,,,,,,,"Calling: 1-",<
\  ^v< <2?1v,
+    ^;^3<;<,
^ <0?3vv....<
^;^6<;<>a,v
   v_@#:-1<

0

Python 2, 151 150 byte

from random import*
p="Crime predicted: xxx-xx-xxxx\nCalling: 1-xxx-555-xxxx\n\n"*30
while'x'in p:p=p.replace('x',str(randint(0,9)),1)
print p.strip()

Per quanto potessi ottenere questo metodo.

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.