/ / Riešenie problémov Codechef v jazyku Java [closed] - java

Riešenie problému Codechef v jazyku Java [closed] - java

Ja som Java programátor. Zistil som, že mnohokrát, aj keď môj algoritmus je správny, dostanem prekročenie časového limitu na moje príspevky pomocou codechef. Existujú nejaké techniky, ktoré by ste mali použiť pri predkladaní riešení v Java v programových súťažiach?

odpovede:

4 pre odpoveď č. 1

Na CodeChef, všetky podania v jazyku Java majú 2xčasový limit ako ich rodný jazyk (napr. c / c ++ / pascal). Jedna vec, ktorá sa však nezmieňuje, je to, že sudca sa začína chovať veľmi pomaly, keď spotreba pamäte ide vysoká, čo sa stáva pomerne často s riešeniami Java. Rozhodca CodeChef beží s nastavením pamäte 64 MB pre všetky programy Java. Pokúste sa použiť čo najmenšiu pamäť a pokúste sa spustiť rovnaké riešenie lokálne s hodnotou -Xms = 64 MB.

Zvýšený časový limit môže byť tiež spôsobenýskutočnosť, že keď sa pamäť programu blíži k povolenému maximu (čo je 64 MB v tomto prípade), potom JVM vyvolá zberač odpadkov, ktorý používa procesor veľmi intenzívne a tým spomaľuje vykonanie programu.