Sunday, November 20, 2011

BNPCHS 2011 Final Round


Yak beberapa jam yang lalu gw sama teman teman JollyBee yang Beginner baru aja ikutan jadi Dummy di BNPCHS Final Round 2011 (Peserta bayangan). Dan ternyata skill gw ningkat yah meskipun cuma dikit hahaha, dari yang gw males ngoding entah kenapa tadi kalo belom dapet gw penasaran banget. Dari coding Shive Eratos sampe rekursif ternyata asik juga (Y) I got my feeling hahaha. Yak tadi pagi gw dateng telat 15 menit ternyata, gw baru berangkat dari tangerang jam 08.00 pagi karena gw males bangun hahaha abisnya kemaren kan ada COCI yang nanti gw bahas di postingan berikutnya.

baru nyampe jakarta sekitar pukul 9 kurang 15 menit, itu pun gw langsung aja ke ruang juri soalnya kata temen gw langsung kesitu aja. Pas udah sampe TKP, gw penasaran banget pengen naek keatas ke aula lantai 8 dimana para peserta lagi briefing (Pengen ngerasain duduk di bangku juri hahaha). yah pas udah nyampe didalem gak banyak yang gw tangkep. ada pak Freedy yang lagi nngomong tentang binus DSB. dilanjutin sama Ko Eko yang ngomongin system lombanya gimana. dan satu lagi yang harus gw komentarin. MCnya monoton neh gak agresive kayak tahun lalu hahaha. o iyah FYI gw juga ikutan BNPCHS 2010 dan waktu itu sebagai Finalist yang gak berhasil sama sekali hahaha, namanya juga masih cupu T_T.

Langsung pas briefing selesai, gw sama temen temen langsung masuk ke ruang juri. gw langsung pilih komputer agak pojok biar enak aja hahaha. gak beberapa lama, gw sama Beginner lainnya dikasih soal. Gw taroh dulu soalnya gak seru kalo gw udah baca duluan. pas liat judulnya ada Aritmatika dan Geometri. Nah loh gw kira itu soal lingkaran eh ternyata tertipu mentah mentah. sumpah didalam ruang juri berisiknya minta ampun >.< udah kayak apaan aja hahaha, ternyata lebih seru di ruang juri dari pada di ruang peserta 5 jam ngerjain soal doank yang belum tentu AC hahaha.

10.15 - 15.15
==========================================================
dan disinilah peperangan dimulai. waktu berjalan dan gw baca soal A terlebih dahulu. gak beberapa lama juri langsung ricuh datang submission pertama dan ternyata AC, Problem berapakah itu ? problem 7 yang Aritmatika dan Geometri. Hmmm segampang itu yah. gw langsung berubah haluan. ZZZZZZ ternyata suruh ngecek aja apakah itu deret geometry atau deret aritmatika. kita dikasih 3 buah bilangan dan suruh menebak bilangan ke 4-nya. Yah codang coding dikit, Submit YES di 10.25. yak langsung aja gw bingung mau ngerjain yang mana gw.

Mata gw tertuju pada Problem 3. jadi itu sebenarnya soal tentang bilangan romawi aja. untuk membentuk I kita butuh Bi bambu, untuk V butuh Bv bambu, untuk X butuh Bx bambu sampai M yaitu 1000. nah kita disuruh ngitung berapa banyak bambu yang dibutuhkan buat membentuk angka N. Solusi gw sih di pecah pecah jadi 4 bilangan, Ribuan, Ratusan, Puluhan, dan Satuan nanti dari masing masing digit itu di cari bilangan romawinya terus itung dah berapa banyak bambu yang dibutuhin. Codang Coding -> submit YES di 11.00.

Hmmmmm soal apa lagi yah, kayaknya soal bonus udah gw jawab semua pasti tinggal soal menantang semua deh. gw tertarik buat ngelirik Problem F baris bilangan X. soal ini disuruh ngitung dari A sampe B inklusif ada berapa baris bilangan X dalam rentang tersebut. Kalo gak salah inget baris bilangan X tuh baris yang bukan prima tapi memiliki pembagi prima yang tidak lebih kecil dari pembagi prima terbesar baris bilangan X sebelumnya. @^%#R@#^@ gw juga pusing gimana cara ngomongnya tapi yah maksudnya itu hahaha. Ide gw yaitu pake Shive Eratos jadi gw Brute dari 2 sampe 1000.000 terus kan kalo eratos yang bukan prima gw kasih tanda 1 terus gw juga buat Array temporarry buat nampung kalo bilangan tersebut habis dibagi prima berapa. nah pas diakhir tinggal pake Partial Sum pertama set MAX = 2, terus untuk array yang pembaginya >= 2 itu sum++, selain itu maxnya naik jadi prima tersebut. langsung cetak jawabannya. Codang Coding langsung submit -> YES di 12.15.

Nah di 3 jam terakhir gw sering sering keluar soalnya udah gak ngerti harus ngerjain yang mana lagi, gw liat soal I itu rekursif @_@ padahal gw belum lancar. tapi gw paksa paksain lah soalnya banyak juga yang AC soal I. gw lama bener ngertiinnya soalnya ada kata kata yang gw gak ngerti messkipun pake bahasa indonesia. 13.00++ gw baru mulai ngoding. ternyata rekursifnya itu semua bilangan di array genap ditaroh di kiri terus yang ganjil ditaroh dikanan, nah di rekursif F(A, M); F(M+1, B); dimana M adalah (A+B) / 2. gw udah yakin itu bener solusinya dan Coding debug dikit, menit 13.53 submit -> NO - Time Limit Exceded. wew apa yang gerangan terjadi. Input sampai 2^31 ya iyalah buset parah jasa itu. langsung aja gw perbaiki langsung test lagi submit di 14.06 dan 14.43 masih aja TLE. ternyata gw ada ide jadi kalo udah mentok A = B, kalo arr[A] itu sama kayak yang dicari langsung return aja terus Stop semua. Submit di 14.48 ternyata sama TLE @_@. yak langsung aja nyerah. pas gw telaah ternyata Array gw cuma ampe 10000000 dan kalo 2 ^ 31 itu sekitar 2M. pas gw gedein Array ternyata Stack Overflow. yaudah gak jadi ngerjain hahaha.



Akhirnya contest selesai, Pas gw belum keluar ruangan gw (Dummy2) ternyata ada di Rank 20 udah submit 3. yah lumayan lah hahaha seru juga ikut begituan, mana di ruang juri seru abis hahaha. Langsung pas keluar kontest ada pembagian hadiah. list pemenang ada dibawah. Pas selesai itu langsung aja ada sisa snack banyak banget. ampe kenyang gw ngutilin kue hahaha.

Intinya gw masih harus banyak belajar neh dari yang udah jago, atau lebih baik belajar sendiri tapi dituntun orang lain (Y), taun depan atau di kesempatan depan harus lebih baik.

Link lengkap ada disini

No comments:

Post a Comment