Deteksi Pertanyaan Gandakan
Sekali waktu, ada situs golf. Itu memiliki masalah: orang akan memposting pertanyaan yang sama atau identik berulang kali. Anda telahdipilih dipaksa wajib militer diperas diminta untuk mengotomatiskan proses memutuskan apakah suatu pertanyaan merupakan duplikat dari pertanyaan yang ada, dengan cara apa pun yang diperlukan (lihat Aturan).
Memasukkan
Program Anda harus menerima satu URL sebagai masukan. Mungkin diasumsikan bahwa ini mengarah ke pertanyaan pada codegolf.stackexchange.com .
Keluaran
Cari situs untuk pertanyaan serupa. Jika Anda berpikir bahwa pertanyaan input adalah duplikat dari pertanyaan yang ada (atau sebaliknya), tampilkan URL pertanyaan lain. Anda dapat menampilkan beberapa URL, dipisahkan oleh baris baru. Di akhir output Anda, output end
(pada jalur terpisah).
Mencetak gol
- Jika sebuah pertanyaan yang Anda hasilkan memang ditandai sebagai duplikat dari pertanyaan input (atau sebaliknya), Anda mencetak 4 poin. Ini adalah "tebakan yang benar".
- Untuk setiap false positive (alias "dugaan salah"), Anda kehilangan 2 poin.
- Untuk setiap pertanyaan yang sebenarnya merupakan duplikat tetapi tidak muncul dalam output Anda (alias "tebakan hilang"), kehilangan 1 poin.
Skor tertinggi setelah menangani 32 pertanyaan input menang. 32 pertanyaan ini adalah "putaran". Pada awal setiap putaran, skor akan diatur ulang ke 0. Satu putaran akan dijalankan setiap beberapa hari, dan papan peringkat diperbarui setelah setiap putaran.
Aturan
- Jika pertanyaan A dan C keduanya ditutup sebagai duplikat B, A akan dianggap sebagai duplikat C dan sebaliknya.
- Pada awal setiap putaran, program Anda mungkin tidak memiliki data apa pun tentang pertanyaan apa pun (yaitu, tidak ada hardcoding ), kecuali tentang cara menguraikan situs web.
- Namun, Anda dapat menyimpan data dalam file eksternal selama putaran.
- Tidak ada data yang dapat disimpan di antara putaran.
- Output Anda harus memiliki baris baru yang tertinggal.
- Anda tidak boleh menggunakan data apa pun dari situs web kecuali hasil pencarian dan URL, judul, tag, dan teks pertanyaan , dengan atau tanpa format. Misalnya, Anda tidak boleh menggunakan teks "ditandai sebagai duplikat oleh foo, bar ..." yang muncul pada pertanyaan duplikat.
- Anda dapat mengambil data ini langsung dari situs, melalui data.SE atau melalui API.
- Setiap pengiriman harus memiliki nama.
- Setiap pengiriman harus memiliki penomoran versi yang jelas.
- Jika suatu pengiriman tidak menghasilkan keluaran setelah batas waktu (untuk diputuskan; harap sebutkan berapa lama pengiriman Anda) itu akan terbunuh dan kehilangan 8 poin.
Jawaban:
Python 3
Saya memberikan entri ini nama
The Differ
.Kode:
Filter
"!-*f(6rc.cI8O"
termasuktotal
parameter pada objek global wrapper danbody
parameter pada pertanyaan.Entri ini membuat dua permintaan API ditambah satu per tag pada pertanyaan plus satu per seratus pertanyaan dalam tag yang paling sedikit digunakan. Jika itu mengenai api throttle (yang tidak diperiksa), itu akan menaikkan
urllib.error.HTTPError: HTTP Error 400: Bad Request
sumber