Perdagangan nama domain adalah bisnis besar. Salah satu alat paling berguna untuk perdagangan nama domain adalah alat penilaian otomatis, sehingga Anda dapat dengan mudah memperkirakan berapa nilai domain yang diberikan. Sayangnya, banyak layanan penilaian otomatis memerlukan keanggotaan / berlangganan untuk digunakan. Dalam tantangan ini, Anda akan menulis alat penilaian sederhana yang secara kasar dapat memperkirakan nilai domain .com.
Input output
Sebagai masukan, program Anda harus mengambil daftar nama domain, satu nama per baris. Setiap nama domain akan cocok dengan regex ^[a-z0-9][a-z0-9-]*[a-z0-9]$
, artinya terdiri dari huruf kecil, digit, dan tanda hubung. Setiap domain setidaknya memiliki dua karakter dan tidak dimulai atau diakhiri dengan tanda hubung. The .com
dihilangkan dari setiap domain, karena tersirat.
Sebagai bentuk input alternatif, Anda dapat memilih untuk menerima nama domain sebagai array bilangan bulat, alih-alih serangkaian karakter, selama Anda menentukan konversi karakter-ke-integer yang Anda inginkan.
Program Anda harus menampilkan daftar bilangan bulat, satu per baris, yang memberikan harga yang dinilai dari domain terkait.
Internet dan File Tambahan
Program Anda mungkin memiliki akses ke file tambahan, selama Anda memberikan file-file ini sebagai bagian dari jawaban Anda. Program Anda juga diizinkan untuk mengakses file kamus (daftar kata-kata yang valid, yang tidak harus Anda berikan).
(Sunting) Saya telah memutuskan untuk memperluas tantangan ini agar program Anda dapat mengakses internet. Ada beberapa batasan, karena program Anda tidak dapat mencari harga (atau riwayat harga) dari sembarang domain, dan hanya menggunakan layanan yang sudah ada sebelumnya (yang terakhir untuk menutupi beberapa celah).
Batas hanya pada ukuran total adalah batas ukuran jawaban yang dikenakan oleh SE.
Contoh input
Ini adalah beberapa domain yang baru dijual. Penafian: Meskipun tidak satu pun dari situs-situs ini tampak berbahaya, saya tidak tahu siapa yang mengendalikan mereka dan dengan demikian menyarankan untuk tidak mengunjungi mereka.
6d3
buyspydrones
arcader
counselar
ubme
7483688
buy-bikes
learningmusicproduction
Contoh Output
Angka-angka ini nyata.
635
31
2000
1
2001
5
160
1
Mencetak gol
Penilaian akan didasarkan pada "perbedaan logaritma." Misalnya, jika suatu domain dijual seharga $ 300 dan program Anda menilainya seharga $ 500, skor Anda untuk domain itu adalah abs (ln (500) -ln (300)) = 0,5108. Tidak ada domain yang memiliki harga kurang dari $ 1. Skor keseluruhan Anda adalah skor rata-rata untuk set domain, dengan skor lebih rendah lebih baik.
Untuk mendapatkan ide skor apa yang harus Anda harapkan, cukup tebak konstan 36
untuk data pelatihan di bawah ini yang menghasilkan skor sekitar 1.6883
. Algoritme yang sukses memiliki skor kurang dari ini.
Saya memilih untuk menggunakan logaritma karena nilai rentang beberapa urutan besarnya, dan data akan diisi dengan outlier. Penggunaan perbedaan absolut sebagai ganti perbedaan kuadrat akan membantu mengurangi efek pencilan dalam penilaian. (Juga, perhatikan bahwa saya menggunakan logaritma natural, bukan basis 2 atau basis 10.)
Sumber data
Saya telah membaca sekilas lebih dari 1.400 domain .com yang baru terjual dari Flippa , sebuah situs web lelang domain. Data ini akan menjadi kumpulan data pelatihan. Setelah periode pengiriman selesai, saya akan menunggu satu bulan tambahan untuk membuat set data uji, yang dengannya kiriman akan dinilai. Saya mungkin juga memilih untuk mengumpulkan data dari sumber lain untuk menambah ukuran set pelatihan / tes.
Data pelatihan tersedia di intisari berikut. (Penafian: Meskipun saya telah menggunakan beberapa pemfilteran sederhana untuk menghapus beberapa domain NSFW yang terang-terangan, beberapa mungkin masih terkandung dalam daftar ini. Juga, saya sarankan agar tidak mengunjungi domain yang tidak Anda kenal .) Angka-angka di sisi kanan adalah harga sebenarnya. https://gist.github.com/PhiNotPi/46ca47247fe85f82767c82c820d730b5
Berikut ini adalah grafik distribusi harga dari kumpulan data pelatihan. Sumbu x adalah log harga alami, dengan sumbu y dihitung. Setiap batang memiliki lebar 0,5. Paku di sebelah kiri sesuai dengan $ 1 dan $ 6 karena situs web sumber membutuhkan tawaran untuk menambah setidaknya $ 5. Data uji mungkin memiliki distribusi yang sedikit berbeda.
Berikut ini tautan ke grafik yang sama dengan lebar batang 0,2. Dalam grafik itu Anda bisa melihat paku di $ 11 dan $ 16.