Halo semuanya! Untuk setiap konferensi Java, kami membuat game sehingga siapa pun dapat bersenang-senang di stan kami. Pada konferensi Joker 2018, kami mengundang peserta untuk mengeluarkan Duke dari labirin, sebuah artikel terperinci tentang permainan dari tahun lalu
dapat ditemukan di sini . Tahun ini kami melanjutkan tradisi dan membuat permainan di mana, menjawab pertanyaan Java, Anda perlu membantu Duke menemukan jalan keluar yang tersembunyi.
Intinya adalah untuk berkeliaran di sekitar lapangan bermain pribadi dengan pertanyaan tentang Jawa, untuk setiap sesi permainan dibuat kotak pertanyaan yang unik. Tugas pemain dalam menjawab pertanyaan adalah membuat Duke keluar dari labirin melalui pintu, lokasi yang baru setiap saat, sehingga mustahil untuk menyusun strategi terlebih dahulu dan tetap berpegang pada itu, selalu ada peluang besar untuk pergi ke arah yang salah dan berada jauh dari pintu keluar. Pada saat yang sama, menjawab berbagai kategori pertanyaan, pemain membuka sejumlah sel tertutup yang berbeda di sekitarnya, ketika menjawab pertanyaan sederhana, 1 sel terbuka, rata-rata 2, dan pada kompleks 3. Untuk jawaban yang benar atas pertanyaan sederhana, 1 poin diberikan, untuk rata-rata - 2 , dan untuk yang paling sulit - 5, dan jika pemain bisa mengeluarkan Duke dari labirin, maka dia akan diberikan tambahan 20 poin. Tapi tidak sesederhana itu! Jika seorang pemain menjawab pertanyaan dengan tidak tepat, poin terbakar secara proporsional dengan sistem akrual, menjawab salah untuk jawaban sederhana, kehilangan 1 poin, rata-rata - 2, pada kesulitan - 5. Oleh karena itu, 0 poin bukanlah hasil terburuk, karena Anda bisa masuk ke minus. Orang yang mendapat poin terbanyak dalam 180 detik menang.
Pertanyaan yang paling sulit bagi para peserta adalah pertanyaan ini (yang, kebetulan, berasal dari kategori yang sederhana):
Apa yang akan dicetak kode?
BigInteger big = BigInteger.valueOf(Long.MAX_VALUE); System.out.println(big.add(big).longValue());
- -2
- 4294967294
- 18446744073709551614
- melempar
ArithmeticException
Jawaban yang benarPenting untuk mengingat dasar-dasar bit aritmatika dan tidak lupa bahwa
longValue()
mengimplementasikan penyempitan konversi primitif:
jshell> BigInteger big = BigInteger.valueOf(Long.MAX_VALUE) big ==> 9223372036854775807 jshell> big.toString(16) $2 ==> "7fffffffffffffff" jshell> big.add(big).toString(16) $3 ==> "fffffffffffffffe" jshell> big.add(big).longValue() $4 ==> -2
Beberapa statistik permainan:
- jumlah sesi permainan adalah 1123;
- skor maksimum 252;
- rata-rata, untuk 1 sesi permainan, seorang pemain menjawab dengan benar 15 pertanyaan.
Secara paradoks, faktanya adalah bahwa tahun ini, pertanyaan sederhana dijawab lebih buruk daripada yang kompleks.
Kali ini kami memutuskan untuk tidak mempublikasikan jawaban yang benar untuk pertanyaan, tetapi untuk memberi Anda kesempatan untuk sedekat mungkin dengan kondisi stand Odnoklassniki di konferensi JPoint 2019 dan menempatkan permainan dalam domain publik untuk semua orang.
Anda dapat memainkan permainan dan menguji kekuatan Anda di sini:
javagame.odkl.ru