Sembra un esercizio di scuola
Se lo mostri al docente che vai di forza bruta, ti manda dietro la lavagna, sui ceci
Ad ogni modo, se dal compilatore togli le info debug e attivi qualche ottimizzazione (di solito ci sono dei check da attivare), dovrebbe andare ben piu' rapido
Su mio pc, quel programma, per 50 valori, gira in 2'10" circa
(Ryzen7, consumo cpu al 8% circa, VisualStudio 2008, platform x64, optimize cod=on)
A naso il grosso del tempo sta su quella rnd() perche' tutto il resto dovrebbe andare via a velocita' warp, verifica se trovi qualcosa di piu rapido per tirare fuori un valore casuale