Ingresso
Un elenco di numeri interi non negativi.
Produzione
Il numero intero non negativo più grande in modo h
tale che almeno h
i numeri nell'elenco siano maggiori o uguali a h
.
Casi test
[0,0,0,0] -> 0
[12,312,33,12] -> 4
[1,2,3,4,5,6,7] -> 4
[22,33,1,2,4] -> 3
[1000,2,2,2] -> 2
[23,42,12,92,39,46,23,56,31,12,43,23,54,23,56,73,35,73,42,12,10,15,35,23,12,42] -> 20
Regole
Puoi scrivere un programma completo o una funzione e sono consentite anche funzioni anonime. Questo è code-golf, quindi vince il minor numero di byte. Le scappatoie standard non sono ammesse.
sfondo
L' h-index è una nozione utilizzata nel mondo accademico che mira a catturare l'impatto e la produttività di un ricercatore. Secondo Wikipedia, un ricercatore ha un indice h , se ha pubblicato h articoli scientifici, ciascuno dei quali è stato citato in altri articoli almeno h volte. Pertanto, questa sfida riguarda il calcolo dell'indice h da un elenco di conteggi delle citazioni.
Aggiornare
Caspita, ottime risposte a tutto tondo! Ho accettato il più breve, ma se qualcun altro ne presenta uno ancora più corto, aggiornerò di conseguenza la mia scelta.
Vincitori per lingua
Ecco una tabella di vincitori per lingua che cercherò anche di tenermi aggiornato. Ho incluso tutti i post con punteggio non negativo. Per favore, correggimi se ho fatto un errore qui.
- APL : 7 byte di @MorisZucca
- Bash + coreutils : 29 byte di @DigitalTrauma
- C # : 103 byte di @ LegionMammal978
- C ++ : 219 byte di @ user9587
- CJam : 15 byte di @nutki
- GolfScript : 13 byte di @IlmariKaronen
- Haskell : 40 byte di @proudhaskeller
- J : 12 byte di @ ɐɔıʇǝɥʇuʎs
- Java : 107 byte di @Ypnypn
- JavaScript : 48 byte di @ edc65
- Mathematica : 38 byte di @ kukac67
- Perl : 32 byte di @nutki
- Pyth : 10 byte di @isaacg
- Python : 49 byte di @feersum
- R : 29 byte di @MickyT
- Ruby : 41 byte di @daniero
- Scala : 62 byte di @ChadRetz
- SQL : 83 byte di @MickyT
- TI-BASIC : 22 byte di @Timtech