Datatähti 2020 ohjelmointikilpailu on alkanut tänään:
Kyseessä on peruskoulun ja lukion kilpailu, jonka ensimmäinen vaihe käydään netissä 30.9.–13.10. Kilpailun kautta on mahdollista päästä ohjelmoinnin valmennukseen yliopistolle sekä kansainvälisiin tietotekniikan olympialaisiin.
Onko kilpailu suunnattu siis pelkästään peruskoulu- ja lukiolaisille, vai onko amiksena oikeus osallistua?
Edit. Entä onko ohjelmointikieli vapaavalintainen?
Kilpailuun voi osallistua myös amiksena. Sallitut kielet on esitelty täällä:
Ihan hauskat tehtävät. Onko epävirallista vanhusten tulostaulua nähtävillä?
Hauska sattuma: pyöräytin käyntiin vuosikausia vanhan (satunnaisuutta käyttävän) koodin viimeiseen tehtävään, ja vanha ennätykseni parani heti muutamalla pisteellä.
Onkohan tässäkin tehtävässä nähtävissä ihmiskunnan tyhmeneminen ja siitä johtuva arvostelun höllennys vai onkohan sittenkin vain sattuman käsi osunut tällä kertaa paremmin 🤔
Ei taida node.js soveltua kilpaohjelmointiin, kun pelkän cses.fi/howto sivun node esimerkin ajo kestää liki puoli sekuntia (0.43s ja aikaa on 1.00s) :D
AtskaFin: Kyllä tässä ratkaisu on tärkeämpi kuin kieli. Usein tulkatuissa kielissä käynnistys kestää kauan mutta koodin suoritus voi olla silti melko nopeaa, joten ”tyhjän” koodin ajamiseen kuluvasta ajasta ei kannata huolestua.
Mistä ylipäänsä sait noin suuren ajan? Minulla D-tehtävän esimerkin laskeminen Node.js:llä kestää noin 0,07 sekuntia, ja ratkaisu on tarpeeksi nopea, jotta sillä saa täydet pisteet tehtävästä. Muiden tehtävien oikeat ratkaisut ovat luullakseni vielä nopeampia.
Tronic kirjoitti:
Onkohan tässäkin tehtävässä nähtävissä ihmiskunnan tyhmeneminen ja siitä johtuva arvostelun höllennys
Toki tarkoitin absoluuttista siirtomäärää kyseisessä pelissä, joten pelkkä arvostelumenetelmä ei selitä eroa. (Asia on oikeastaan päinvastoin, koska nyt saa pisteitä vain puolet siirtomäärästä mutta aiemmin on kilpailtu koko siirtomäärästä.)
Pistemääristä päätellen ainakin viralliset kilpailijat ovat toistaiseksi optimoineet ratkaisujaan vain rehellisin keinoin.
En ottanut koodin suoritukseen kuluvaa aikaa omalta koneelta.
Cses.fi sivustolla on harjoitustehtäviä datatähti kilpailua varten ja ensimmäisessä tehtävässä pitää laskea summa a + b. Ajoin siinä melkein saman koodi, kuin mikä löytyy cses.fi/howto sivulta (jouduin kylläkin vähän muuttamaan koodia, koska noden mukaan -0 + (-0) == -0). Aikaa sivusto antoi tuon ohjelman joka suoritukselle sen 0.43s (tein muutamat tehtävät ja kaikista sain ajan 0.43s).
Tuo viestini on kyllä helppo ymmärtää väärin :D. En tarkoittanut, että tehtävät olisivat mahdottomia, mutta jos c++:lla menee suoritukseen tuo 0.01s, niin on siinä hieman enemmän peliaikaa.
AtskaFin kirjoitti:
(jouduin kylläkin vähän muuttamaan koodia, koska noden mukaan -0 + (-0) == -0). Aikaa sivusto antoi tuon ohjelman joka suoritukselle sen 0.43s (tein muutamat tehtävät ja kaikista sain ajan 0.43s).
Aihe on jo aika vanha, joten et voi enää vastata siihen.