Terinspirasi oleh komentar ini ...
Terima kasih kepada pengguna, Step Hen , Wheat-Wizard , dan Dennis yang telah membantu saya memperkuat spesifikasi tantangan ini sebelum mempostingnya!
Ini adalah utas Perampok! Untuk utas Polisi, buka di sini
Dalam tantangan ini , Anda bertugas menjalankan beberapa kode yang membuatnya sehingga bahasa Anda tidak lagi memenuhi kriteria kami sebagai bahasa pemrograman. Dalam tantangan itu, itu berarti membuatnya agar bahasa tidak bisa lagi ...
Ambil input dan output numerik
Tambahkan dua angka bersamaan
Uji apakah angka tertentu prima atau tidak.
Ini adalah tantangan polisi dan perampok , di mana ada dua tantangan yang berbeda dengan dua tujuan yang berbeda: Polisi akan mencoba menulis beberapa kode yang membuat bahasa sebagian besar tidak dapat digunakan, dan para perampok akan mencoba menemukan solusi tersembunyi yang memungkinkan polisi untuk memulihkan bahasa mereka.
Polisi akan menulis dua potongan kode:
Salah satu yang membuat bahasa mereka sebagian besar tidak dapat digunakan, misalnya dengan menghapus fungsi bawaan untuk mengambil operasi input / output dan numerik. Kode ini tidak diizinkan mogok atau keluar. Seharusnya mungkin untuk menambahkan kode ke akhir cuplikan ini, dan kode itu akan dievaluasi . Dan
Potongan kode yang mengambil dua angka sebagai input, menambahkannya bersama-sama, dan mengeluarkan jumlah mereka. Cuplikan ini harus tetap berfungsi dengan benar bahkan setelah menjalankan cuplikan pertama. Saat kedua snippet digabungkan bersama, mereka harus membentuk program lengkap yang menambahkan dua angka, atau mendefinisikan fungsi yang menambahkan dua angka. Cuplikan ini mungkin akan bergantung pada perilaku yang tidak jelas, dan sulit ditemukan.
Polisi juga akan memilih metode input dan output standar apa pun . Namun, mereka harus mengungkapkan dengan tepat format (input dan output) yang mereka gunakan. Agar Anda dapat memecahkan jawaban mereka, Anda harus mengikuti format input / output yang sama, atau retak Anda tidak masuk hitungan.
Jawaban polisi akan selalu terungkap
The pertama potongan (jelas tidak yang kedua).
Bahasa (termasuk versi minor, karena sebagian besar pengiriman mungkin bergantung pada kasus tepi yang aneh)
Format IO, termasuk apakah itu fungsi atau program penuh. Perampok harus menggunakan format yang sama untuk menjadi celah yang valid.
Setiap kasus tepi aneh diperlukan untuk jawaban mereka untuk bekerja. Misalnya, hanya berjalan di linux , atau membutuhkan koneksi internet .
Sebagai seorang perampok, Anda harus melihat salah satu dari kiriman polisi, dan berupaya memecahkannya. Anda mungkin retak itu dengan menulis setiap potongan valid yang bisa bekerja sebagai potongan 2 (menambahkan dua angka bersama setelah bahasa dibuat sebagian besar tidak dapat digunakan). Ini tidak harus potongan yang sama dengan yang awalnya ditulis polisi. Setelah jawaban Anda retak, poskan kode Anda sebagai jawaban di utas ini, dan poskan tautan ke jawaban Anda sebagai komentar pada jawaban polisi. Kemudian, postingan itu akan diedit untuk mengindikasikan telah di-crack.
Ini sebuah contoh. Untuk cuplikan pertama, Anda mungkin melihat program python 3 berikut sebagai jawaban polisi:
Python 3
print=None
Mengambil input dari STDIN dan output ke STDOUT
Cuplikan kedua yang valid dapat berupa
import sys
a,b=int(input()),int(input())
sys.stdout.write(a+b)
Ini valid karena akan mengambil dua angka sebagai input, dan mengeluarkan jumlah mereka meskipun Anda menggabungkan kedua snippet bersama, misalnya
print=None
import sys
a,b=int(input()),int(input())
sys.stdout.write(a+b)
Ini adalah celah yang valid untuk jawaban mereka.
Jika jawaban seorang polisi tetap tidak terpecahkan selama satu minggu penuh, mereka dapat mengedit dalam potongan kedua mereka, dan menunjukkan bahwa jawaban mereka sekarang aman . Setelah diedit agar aman, Anda mungkin tidak lagi mencoba untuk memecahkannya. Jika mereka tidak mengeditnya dengan aman, Anda dapat terus mencoba memecahkannya sampai selesai.
Pemenang utas perampok adalah pengguna yang telah memecahkan sebagian besar jawaban, dengan pemutus ikatan adalah saat mereka mencapai N celah. (jadi jika dua pengguna yang berbeda masing-masing memiliki 5 celah misalnya, pengguna yang memposting celah ke-5 mereka terlebih dahulu adalah pemenang). Setelah waktu yang cukup berlalu, saya akan menerima jawaban pemenang dengan suara terbanyak.
Selamat bersenang-senang!
Klarifikasi aturan
Cuplikan pertama harus berjalan dengan benar tanpa mengambil input apa pun . Ini dapat menampilkan apa pun yang Anda suka, dan output ini akan diabaikan. Selama setelah potongan selesai, potongan kedua berjalan dengan benar.
Cuplikan kedua harus benar-benar dieksekusi agar jawaban Anda valid. Ini berarti jawaban seperti
import sys sys.exit()
tidak valid karena tidak melanggar bahasa. Itu hanya berhenti.
Setelah aman, skor Anda adalah jumlah byte dari kedua cuplikan .
Ini kembali ke Harap mengungkapkan kasus tepi aneh yang diperlukan untuk jawaban Anda untuk bekerja ... Kiriman Anda harus berisi informasi yang cukup sebelum diturunkan untuk dapat direproduksi setelah diungkapkan. Ini berarti bahwa jika jawaban Anda menjadi aman, dan kemudian Anda edit di: Inilah jawaban saya. Oh ya, BTW ini hanya berfungsi jika Anda menjalankannya pada Solaris, bercanda pada Anda! jawaban Anda tidak valid dan akan dihapus dan tidak dianggap memenuhi syarat untuk menang.
Cuplikan kedua dibolehkan mogok setelah mengeluarkan jumlah. Selama output masih benar (misalnya, jika Anda memilih untuk output ke STDERR, dan kemudian Anda mendapatkan banyak informasi macet, ini tidak valid)
Papan peringkat
Berikut adalah daftar setiap pengguna dengan setidaknya satu celah, diurutkan berdasarkan skor dan kemudian nama (berdasarkan abjad). Jika Anda mengirimkan celah, perbarui skor Anda sesuai dengan itu.
#User #Score
Ilmari Karonen 8
Dennis 5
Olivier Grégoire 4
Sisyphus 3
Veedrac 3
Arnold Palmer 2
Bruce Forte 2
DJMcMayhem 2
Dom Hastings 2
ppperry 2
1bluston 1
2012rcampion 1
Ben 1
BlackCap 1
Christian Sievers 1
Cody Gray 1
HyperNeutrino 1
Joshua 1
Kaz 1
Mark 1
Mayube 1
Xnor 1
zbw 1
SecurityManager
yang ada dalam ruang lingkup ... Anda juga dapat membaca dariSystem.in
pada titik ini, karena itu belum ditutup.