Untuk gambar N demi N , temukan satu set piksel sehingga tidak ada jarak pemisahan yang muncul lebih dari satu kali. Yaitu, jika dua piksel dipisahkan oleh jarak d , maka mereka hanya dua piksel yang dipisahkan dengan tepat d (menggunakan jarak Euclidean ). Perhatikan bahwa d tidak perlu bilangan bulat.
Tantangannya adalah menemukan set yang lebih besar daripada orang lain.
Spesifikasi
Tidak diperlukan input - untuk kontes ini N akan diperbaiki pada 619.
(Karena orang terus bertanya - tidak ada yang istimewa tentang nomor 619. Dipilih menjadi cukup besar untuk membuat solusi optimal tidak mungkin, dan cukup kecil untuk membiarkan gambar N demi N ditampilkan tanpa Stack Exchange secara otomatis mengecilkannya. Gambar dapat ditampilkan ukuran penuh hingga 630 kali 630, dan saya memutuskan untuk menggunakan prime terbesar yang tidak melebihi itu.)
Outputnya adalah daftar integer yang dipisahkan oleh spasi.
Setiap bilangan bulat dalam output mewakili salah satu piksel, diberi nomor dalam urutan bacaan bahasa Inggris dari 0. Misalnya untuk N = 3, lokasi akan diberi nomor dalam urutan ini:
0 1 2
3 4 5
6 7 8
Anda dapat menampilkan informasi kemajuan selama menjalankan jika Anda inginkan, selama hasil penilaian akhir mudah tersedia. Anda dapat output ke STDOUT atau ke file atau apa pun yang paling mudah untuk menempel ke Hakim Potongan Stack di bawah ini.
Contoh
N = 3
Koordinat yang Dipilih:
(0,0)
(1,0)
(2,1)
Keluaran:
0 1 5
Kemenangan
Skor adalah jumlah lokasi dalam output. Dari jawaban yang valid yang memiliki skor tertinggi, yang paling awal untuk memposting output dengan skor yang menang.
Kode Anda tidak perlu deterministik. Anda dapat memposting output terbaik Anda.
Bidang terkait untuk penelitian
(Terima kasih kepada Abulafia untuk tautan Golomb)
Meskipun tidak satu pun dari keduanya yang sama dengan masalah ini, keduanya memiliki konsep yang sama dan dapat memberi Anda gagasan tentang cara mendekati ini:
- Penguasa Golomb : case 1 dimensional.
- Persegi panjang Golomb : perpanjangan 2 dimensi dari penguasa Golomb. Varian kasus NxN (kotak) yang dikenal sebagai array Costas diselesaikan untuk semua N.
Perhatikan bahwa poin yang diperlukan untuk pertanyaan ini tidak tunduk pada persyaratan yang sama dengan persegi panjang Golomb. Persegi panjang Golomb memanjang dari case 1 dimensi dengan mensyaratkan bahwa vektor dari setiap titik menjadi unik. Ini berarti bahwa ada dua titik yang dipisahkan oleh jarak 2 secara horizontal, dan juga dua titik dipisahkan oleh jarak 2 secara vertikal.
Untuk pertanyaan ini, jarak skalar yang harus unik, sehingga tidak boleh ada pemisahan horizontal dan vertikal 2. Setiap solusi untuk pertanyaan ini adalah persegi panjang Golomb, tetapi tidak setiap persegi panjang Golomb akan menjadi solusi yang valid untuk pertanyaan ini.
Batas atas
Dennis membantu menunjukkan dalam obrolan bahwa 487 adalah batas atas skor, dan memberikan bukti:
Menurut kode CJam saya (
619,2m*{2f#:+}%_&,
), ada 1.118.000 angka unik yang dapat ditulis sebagai jumlah kuadrat dari dua bilangan bulat antara 0 dan 618 (keduanya termasuk). n piksel memerlukan n (n-1) / 2 jarak unik antara satu sama lain. Untuk n = 488, itu memberi 118828.
Jadi ada 118.800 kemungkinan panjang berbeda antara semua piksel potensial dalam gambar, dan menempatkan 488 piksel hitam akan menghasilkan 118.828 panjang, yang membuat mustahil bagi mereka semua untuk menjadi unik.
Saya akan sangat tertarik untuk mendengar jika ada yang punya bukti batas atas yang lebih rendah dari ini.
Papan peringkat
(Jawaban terbaik oleh setiap pengguna)