DDiagonalIbis
Arbeitsabläufe

Arbeitsabläufe für Code · Blockierte diagonale Brettstrahlen

03
Produkt

Arbeitsabläufe

Verfolge vier diagonale Strahlen von einem der 64 Brettfelder durch eine vorzeichenlose 64-Bit-Belegungsmaske. Teste Ecken und direkte Blockaden, zähle die erste Blockade mit und lehne ungültige Ganzzahlen ohne vollständige Zugprüfung ab.

01

Anwendung herunterladen

Wählen Sie einen Ordner und lassen Sie die betreffenden Dateien vor einer Änderung lesen. Legen Sie Ziel und Grenzen der Aufgabe fest.

02

Projektordner öffnen

Wählen Sie einen kompatiblen Endpunkt. Verfügbare Werkzeuge und Antwortqualität hängen vom konfigurierten Modell und Server ab.

03

Modell verbinden und testen

Prüfen Sie Änderungen und Befehlsausgaben. Führen Sie die Projektprüfungen aus, bevor Sie das Ergebnis übernehmen; erzeugter Code ist nicht automatisch getestet.

04

Änderungen prüfen und Tests ausführen

Vergleichen Sie das tatsächliche Verhalten mit dem erwarteten Ergebnis. Klären Sie fehlgeschlagene Prüfungen vor weiteren Änderungen.

Blockierte diagonale Brettstrahlen

Arbeitsabläufe
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

Vor dem Anwenden prüfen. Prüfen Sie Änderungen und Befehlsausgaben. Führen Sie die Projektprüfungen aus, bevor Sie das Ergebnis übernehmen; erzeugter Code ist nicht automatisch getestet.

KI-Arbeitsumgebung für Code

Hier beginnt Ihre nächste Idee.

Für Windows herunterladen ↗