DDiagonalIbis
Ruang kerja kode dengan AI

Sinar diagonal papan dengan penghalang

Telusuri empat sinar diagonal dari satu di antara 64 petak papan melalui masker okupansi 64 bit tak bertanda.

● ● ●DiagonalIbis●
Alur kerja · Sinar diagonal papan dengan penghalang ×
def diagonal_rays(square, occupied):
    if type(square) is not int or not 0 <= square < 64 or type(occupied) is not int or not 0 <= occupied < 2**64:
        raise ValueError("rays.input")
    row, column = divmod(square, 8)
    result = 0
    for dr, dc in ((1, 1), (1, -1), (-1, 1), (-1, -1)):
        r, c = row+dr, column+dc
        while 0 <= r < 8 and 0 <= c < 8:
            bit = 1 << (8*r+c)
            result |= bit
            if occupied & bit:
                break
            r, c = r+dr, c+dc
    return result
✳Sinar diagonal papan dengan penghalang
✓ PerubahanTinjau sebelum menerapkan ↗
Ilustrasi ruang kerja
Tinjau sebelum menerapkanBandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.
ModelAtur endpoint kompatibel OpenAI atau Anthropic dengan URL dasar dan kunci API jika diperlukan. Uji koneksi. Server model lokal harus berjalan; alat jarak jauh dapat mengirim data secara terpisah.
ProyekUji sudut dan penghalang langsung, sertakan penghalang pertama tetapi tolak bilangan bulat tidak valid tanpa mengklaim legalitas langkah lengkap.
Alur kerja

Sinar diagonal papan dengan penghalang

Alur kerja ↗
Alur kerja
def diagonal_rays(square, occupied):
    if type(square) is not int or not 0 <= square < 64 or type(occupied) is not int or not 0 <= occupied < 2**64:
        raise ValueError("rays.input")
    row, column = divmod(square, 8)
    result = 0
    for dr, dc in ((1, 1), (1, -1), (-1, 1), (-1, -1)):
        r, c = row+dr, column+dc
        while 0 <= r < 8 and 0 <= c < 8:
            bit = 1 << (8*r+c)
            result |= bit
            if occupied & bit:
                break
            r, c = r+dr, c+dc
    return result
Ruang kerja kode dengan AI

Telusuri perubahan geometri melalui indeks dan penghalang

DiagonalIbis menyediakan ruang kerja pemrograman AI Windows untuk membuat perubahan sumber kecil dengan asumsi yang terlihat. Permintaan geometri papan harus dimulai dengan konvensi penomoran petak dan makna posisi yang terisi. Letakkan rincian itu bersama kode proyek dan minta model yang terhubung memeriksa perhitungan saat ini sebelum mengusulkan perubahan.

Misalnya, tugas sinar diagonal dapat menelusuri empat arah dari sebuah petak hingga posisi terisi pertama, dengan penghalang itu disertakan dalam hasil. Nyatakan rentang mask keterisian tanpa tanda dan sertakan sudut serta penghalang langsung dalam pembahasan. Ini menjelaskan rutinitas geometri yang ingin dipelihara, bukan sistem keabsahan langkah lengkap atau permainan yang disediakan ruang kerja.

Tinjau usulan keluaran menggunakan data uji yang petak harapannya dapat diidentifikasi secara independen. Periksa bahwa sinar berhenti di tepi papan dan tidak berpindah melingkar antarbaris, lalu periksa penanganan bilangan bulat tidak valid. Jalankan kasus ini dalam lingkungan proyek sendiri. Jika kode pengguna tingkat lebih tinggi menafsirkan mask sebagai langkah sah, tinjau logika tambahan itu secara terpisah dari perhitungan sinar.

DiagonalIbis terhubung ke endpoint yang didukung, baik yang kompatibel dengan OpenAI maupun Anthropic, dengan kredensial bila diperlukan. Model AI tanpa filter dapat dipilih jika endpoint menawarkannya. Pembatasan sebenarnya, alat, dan konteksnya bergantung pada model serta server; konvensi indeks dan pemeriksaan penerimaan tetap menjadi kebutuhan yang Anda kendalikan.

Sebelum menerima perubahan geometri papan

Rincian indeks apa yang perlu ada dalam tugas?

Nyatakan pemetaan petak ke indeks serta arah pertambahan baris dan kolom. Sertakan contoh sudut dengan tujuan yang diharapkan. Dengan begitu, model terhubung memiliki konvensi eksplisit untuk diikuti, dan Anda dapat meninjau mask usulan tanpa menebak orientasinya.

Haruskah penghalang pertama muncul dalam keluaran?

Untuk contoh ini, ya: sinar mencakup petak tersebut dan berhenti setelahnya. Nyatakan aturan secara eksplisit dan uji penghalang langsung. Kode pengguna tingkat lebih tinggi mungkin menafsirkan keterisian secara berbeda, jadi tinjau logika itu terpisah alih-alih mengubah kontrak sinar secara tersirat.

Bagaimana mendeteksi perpindahan melingkar pada tepi?

Gunakan data uji sudut dan tepi yang diagonalnya pendek atau tidak ada pada arah tertentu. Bandingkan petak hasil secara persis dengan harapan independen. Mask yang tampak masuk akal dari petak tengah mungkin tidak mengungkap kesalahan indeks di dekat tepi papan.

Apakah mask sinar yang benar membuktikan langkah sah?

Tidak. Keabsahan langkah dapat bergantung pada keadaan dan aturan tambahan di luar operasi geometri ini. Batasi kontrak rutinitas yang diminta, periksa kode penggunanya bila diperlukan, dan gunakan pemeriksaan proyek terpisah untuk perilaku tingkat lebih tinggi sebelum menganggap hasil sebagai himpunan langkah sah.

Unduh untuk Windows ↗

DiagonalIbis · Diperbarui 2026-10-25