Skenarionya
Saya berkendara di sepanjang jalan dengan mobil saya dan hujan mulai turun. Tetesan hujan jatuh di jendela saya secara acak dan sekarang saya bertanya pada diri sendiri, di mana area basah terbesar yang terhubung?
Tugas
Untuk membuatnya lebih mudah, jendela itu terbagi dalam matriks 10 * 10 kotak. Tugas Anda adalah menemukan area tetesan air terhubung terbesar di jendela.
Memasukkan
Ada dua input yang mungkin, Anda dapat menggunakan Array 2 dimensi atau yang 1 dimensi. Anda dapat memilih antara input apa saja seperti stdin, dll ...
Contoh:
// 2-dimensional:
[[0,1,0,0,0,0,1,0,0,0],
[0,1,1,0,0,0,0,1,1,0],
[0,1,1,0,0,0,0,1,0,0],
[0,1,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,1,0],
[0,0,0,1,1,0,0,0,1,0],
[0,0,0,1,1,0,0,0,1,0],
[0,0,0,0,0,1,1,0,1,0],
[0,0,0,0,0,1,1,0,1,0],
[0,0,0,0,0,0,0,0,0,0]]
// 1-dimensional
[0,1,0,0,0,0,1,0,0,0,
0,1,1,0,0,0,0,1,1,0,
0,1,1,0,0,0,0,1,0,0,
0,1,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,1,0,
0,0,0,1,1,0,0,0,1,0,
0,0,0,1,1,0,0,0,1,0,
0,0,0,0,0,1,1,0,1,0,
0,0,0,0,0,1,1,0,1,0,
0,0,0,0,0,0,0,0,0,0]
Keluaran
Kode Anda harus memadamkan ukuran area terhubung terbesar dan koordinat x- dan y dari tetesan air yang termasuk dalam area ini dalam format
"Ukuran: Z Koordinat: (X1, Y1) (X2, Y2) .. "
Contoh untuk input sebelumnya:
Size: 6 Coordinates: (1,0) (1,1) (2,1) (1,2) (2,2) (1,3)
Urutan Koordinat tidak masalah.
Aturan
- Tetesan air terhubung, jika mereka saling menyentuh secara orthogonal
- Koneksi diagonal tidak masuk hitungan
- Mungkin ada banyak area dan kode Anda harus menemukan yang terbesar
- Bidang kosong direpresentasikan sebagai "0" dan bidang basah sebagai "1"
- Posting solusi Anda dengan penjelasan singkat dan output dari input sebelumnya
- Kode terpendek dalam 7 hari ke depan akan menang
- Jika ada dua area dengan ukuran yang sama, Anda dapat memilih satu
