Blokované diagonální paprsky na desce
Veďte čtyři diagonální paprsky z jednoho z 64 polí přes neznaménkovou 64bitovou masku obsazení.
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
| Před použitím zkontrolujte | Porovnejte skutečné chování s očekávaným výsledkem. Pokud kontrola selže, před dalšími změnami zjistěte příčinu. |
|---|---|
| Modely | Nastavte endpoint kompatibilní s OpenAI nebo Anthropic pomocí základní URL a případného API klíče. Otestujte připojení. Lokální server modelu musí běžet; vzdálené nástroje mohou data odesílat samostatně. |
| Projekt | Otestujte rohy a blízké překážky, zahrňte první překážku a odmítněte chybné hodnoty bez úplné kontroly legálnosti tahů. |
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
Sledujte geometrickou změnu přes indexování a překážky
DiagonalIbis poskytuje programovací prostředí s AI pro Windows k provádění drobných změn zdrojů s viditelnými předpoklady. Zadání geometrie desky má začít konvencí číslování polí a významem obsazených pozic. Dejte tyto údaje vedle projektového kódu a před návrhem úpravy požádejte připojený model o prozkoumání nynějšího výpočtu.
Například úloha diagonálních paprsků může sledovat čtyři směry z pole až k první obsazené pozici včetně této překážky ve výsledku. Určete rozsah masky obsazenosti bez znaménka a do diskuse zahrňte rohy i bezprostřední překážky. Tím popisujete geometrickou rutinu k údržbě, nikoli úplný systém přípustnosti tahů či hru dodanou s pracovním prostředím.
Navržený výstup posuďte pomocí testů, jejichž očekávaná pole umíte určit nezávisle. Ověřte, že paprsky končí na okraji desky a nepřecházejí mezi řádky, a pak prozkoumejte zacházení s neplatnými celočíselnými vstupy. Spusťte tyto případy ve vlastním prostředí projektu. Pokud příjemce na vyšší úrovni vykládá masku jako přípustné tahy, posuďte tuto další logiku odděleně od výpočtu paprsků.
DiagonalIbis se připojuje k podporovaným koncovým bodům kompatibilním s OpenAI nebo ke koncovým bodům Anthropic, podle potřeby s přihlašovacími údaji. Nefiltrovaný model AI lze vybrat, pokud jej koncový bod nabízí. Jeho skutečná omezení, nástroje a kontext závisejí na modelu a serveru; konvence indexování a přijímací kontroly zůstávají požadavky pod vaší kontrolou.
Před přijetím úpravy geometrie desky
Které podrobnosti indexování patří do úlohy?
Určete mapování polí na indexy a postup řádků a sloupců. Přiložte příklad rohu s očekávanými cílovými poli. Připojený model tak má výslovnou konvenci a navrženou masku můžete posoudit bez hádání orientace.
Má se první překážka objevit ve výstupu?
V tomto příkladu ano: paprsek toto pole zahrnuje a za ním končí. Pravidlo uveďte výslovně a otestujte bezprostřední překážku. Příjemce na vyšší úrovni může obsazenost vykládat jinak, proto tuto logiku posuzujte zvlášť místo nepřímé změny specifikace paprsku.
Jak odhalím přechod přes okraj?
Použijte testy rohů a okrajů, jejichž diagonály jsou v některých směrech krátké nebo chybí. Porovnejte přesná vrácená pole s nezávislým očekáváním. Vizuálně věrohodná maska ze středového pole nemusí odhalit chybu indexování poblíž hranice desky.
Dokládá správná maska paprsků přípustné tahy?
Ne. Přípustnost tahů může záviset na dalším stavu a pravidlech nad rámec geometrické operace. Zachovejte úzkou specifikaci požadované rutiny, podle potřeby prověřte její příjemce a před považováním výsledku za sadu přípustných tahů použijte samostatné projektové kontroly chování vyšší úrovně.
DiagonalIbis · Aktualizováno 2026-10-25