Benvenuti al primo in quello che ho intenzione di essere una serie di sfide JMP regolari! Per la maggior parte, queste sfide si concentreranno sul JMP Scripting Language (JSL), ma a volte, introdurrò qualcosa che può essere fatto senza script.
Entro il primo di ogni mese, spero di offrirti un problema che metterà alla prova le tue abilità JMP. Ogni sfida cercherà di enfatizzare determinate competenze di programmazione e orientate ai dati che si applicano a JMP. Vorrei incoraggiare tutti, indipendentemente dal tuo livello di abilità, a provarli. Durante la mia carriera, ho imparato di più provando a fare ciò che sembrava impenetrabile, al di là delle mie capacità, trovando una soluzione e quindi imparando (o scoprendo) un modo migliore di fare le cose.
Con ogni nuovo post, chiamerò i migliori artisti della sfida precedente e condividerò le loro soluzioni insieme ad altre soluzioni interessanti. Parlerò di ciò che penso abbia reso la sfida precedente impegnativa e cercherò di offrire un po 'di saggezza.
Col passare del tempo, terrò traccia dei migliori artisti. La sfida sarà aperta a tutti, ma terrò le voci dello staff separate dalle altre. Come ci si potrebbe aspettare, abbiamo alcune suonerie in JMP.
Le regole sono semplici:
- Tutto deve essere fatto completamente JMP , senza invocare alcuna applicazione al di fuori di JMP come SAS, R o Python, o utilizzando fonti esterne di informazioni supplementari.
- Uno script deve completare il suo compito in un tempo ragionevole, come specificato nella sfida.
- Deve funzionare su Catalina o Windows 10.
- Mentre preferisco usare JMP 15 , Sono disposto a prendere in considerazione il test su JMP 14. Se questa è la tua preferenza, devi farmi sapere nella tua voce.
- Pubblica i tuoi articoli sul blog. Devo ricevere la tua iscrizione finale entro le 23:59 ora orientale del giorno della scadenza. Prenderò in considerazione solo una voce per persona.
I punti verranno assegnati ogni mese agli script più performanti in base a criteri appropriati per la sfida. Mentre la sfida continua, modererò la sezione dei commenti per evitare che suggerimenti, indizi, osservazioni, ecc. Vengano inavvertitamente eliminati. Ti farò sapere quando riceverò la tua iscrizione.
JSL Challenge 1
Adoro un buon puzzle di parole. Questa sfida è ispirata a Spelling Bee nel New York Times. In esso, è necessario creare parole da un elenco di sette lettere con la condizione che una delle lettere sia sempre utilizzata. Le altre lettere possono essere usate una volta, più di una volta o per niente. Sto modificando le condizioni per rendere le cose un po 'più complicate.
Dato sette lettere, trova:
- La parola più lunga usando tutte e sette le lettere e solo quelle sette. Le lettere possono essere utilizzate più di una volta.
- La parola più lunga usando tutte e sette le lettere e tutte le altre lettere.
- La parola più lunga che utilizza tutte e sette le lettere e qualsiasi altra lettera in cui nessuna lettera dell'insieme di sette viene utilizzata più di una volta.
- La parola più lunga in cui appare 5 delle 7 lettere. Qualsiasi lettera, incluse quelle esterne al 7, può apparire una o più volte, tranne le due lettere non utilizzate dall'elenco di 7, che potrebbero non apparire affatto.
Per tutti e quattro gli elementi, potrebbero non esserci parole che soddisfano i criteri o più parole. Gli script devono accettare un elenco di sette stringhe di caratteri alfabetici (az) minuscole che verranno archiviate in una variabile globale denominata letterSetList . Ad esempio, se il primo elemento nell'elenco è "abcdefl", le risposte sarebbero:
- "Defaceable"
- "Discomfortableness"
- "Fibrochondrosteal"
- "formaldeidrossifossilato" e "scientificofilosofico"
Tutti gli script verranno testati sugli stessi tre set di sette lettere. Tutte le parole saranno prese dal dizionario pubblicato di seguito. Si prega di accedervi come una tabella di dati JMP quando viene eseguito lo script. Scrivi tutte le parole nel registro. Assicurati di includere il numero dell'articolo con l'output. Avrai un limite di tempo di cinque minuti in totale. Le iscrizioni devono pervenire entro le 23:59 di Eastern Time, mercoledì 15 aprile.
punteggio: Due punti per ogni soluzione corretta. Due punti aggiuntivi per risolvere tutti e quattro. Ai tre script più veloci (tempo totale per rispondere correttamente a tutti e quattro gli elementi) verranno assegnati 6, 3 e 1 punti. Due punti per ogni script in grado di produrre la risposta corretta che è la metà o meno della seconda più breve delle tre soluzioni più veloci (conteggio totale dei caratteri non bianchi e con commenti rimossi). Tre punti se lo script viene eseguito più velocemente o più velocemente rispetto al digiuno inviato da un membro dello staff.
In bocca al lupo!