Teka-teki ini tidak terlalu sukar, saya mendapati diri saya hanya membuat banyak fungsi dan banyak pernyataan if dan gelung tbh.
Hari ini telah sampai ke tahap yang saya agak penat dengan navigasi grid 2D, oleh itu kelewatan menyiarkannya (saya terpaksa bercuti sehari).
Anda boleh mencari penyelesaian saya di sini seperti biasa.
Sekali lagi, tiada apa yang terlalu penting untuk dibincangkan hari ini. Konsep utama ialah:
a) menavigasi gelung grid atas arahan untuk menentukan arah mana yang hendak dialihkan.
b) menjejaki di mana kotak-kotak itu berada, dan semak untuk melihat sama ada langkah kami seterusnya ialah dinding atau kotak, jika semakan kotak, kami boleh mengalihkan kotak itu atau tidak.
Bahagian 2:
a) gunakan logik yang sama, hanya dengan parameter berbeza untuk dapat mengalihkan dua kotak pada masa yang sama mengikut arahan teka-teki.
Cari Kotak: Fungsi find_boxes mengenal pasti pasangan bahagian kotak ([ dan ]), mewakili sisi kiri dan kanan kotak dan memetakan hubungannya untuk digunakan dalam logik menolak kotak.
Alihkan Robot di Gudang Kedua
Fungsi move_robot_in_second_warehouse memanjangkan logik robot untuk mengendalikan grid yang diubah suai. Ia menggunakan strategi yang lebih kompleks untuk menolak kotak ([]) dan memastikan ruang yang mencukupi tersedia. Ia menjejaki perhubungan kotak dan menggerakkannya secara kolektif apabila diperlukan.
Bahagian 1 menggunakan grid asas dan logik robot untuk mengira hasil berdasarkan kedudukan kotak (O). Manakala, Bahagian 2 memproses grid yang diubah suai, menggunakan peraturan pergerakan lanjutan dan mengira hasil yang serupa untuk kotak ([])
Tidak lebih juga sebenarnya, hanya navigasi grid 2D dengan beban keadaan dan pergerakan. Di sisi positifnya, saya merasakan pengetahuan Python saya semakin bertambah baik di sekitar sintaks, dan fungsi perpustakaan yang berguna.
Seperti biasa, sila hubungi saya di Twitter
Atas ialah kandungan terperinci Kemunculan Kesengsaraan Gudang Hari Kod. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!