DDiagonalIbis
Ambiente de programação com IA

Raios diagonais de tabuleiro com bloqueios

Trace quatro raios diagonais de uma das 64 casas com máscara de ocupação sem sinal de 64 bits.

● ● ●DiagonalIbis●
Fluxos de trabalho · Raios diagonais de tabuleiro com bloqueios ×
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
✳Raios diagonais de tabuleiro com bloqueios
✓ AlteraçõesRevise antes de aplicar ↗
Ilustração do ambiente
Revise antes de aplicarCompare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.
ModelosConfigure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.
ProjetoTeste cantos e bloqueios imediatos, inclua o primeiro bloqueio e rejeite inteiros inválidos sem alegar legalidade completa de jogadas.
Fluxos de trabalho

Raios diagonais de tabuleiro com bloqueios

Fluxos de trabalho ↗
Fluxos de trabalho
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
Ambiente de programação com IA

Acompanhe uma mudança geométrica por índices e bloqueios

DiagonalIbis oferece um ambiente de programação com IA para Windows para fazer pequenas mudanças de código com suas premissas visíveis. Uma solicitação sobre geometria de tabuleiro deve começar pela convenção de numeração das casas e pelo significado das posições ocupadas. Coloque esses detalhes ao lado do código do projeto e peça ao modelo conectado que examine o cálculo atual antes de propor uma alteração.

Por exemplo, uma tarefa de raios diagonais pode percorrer quatro direções a partir de uma casa até a primeira posição ocupada, incluindo esse bloqueio no resultado. Declare o intervalo sem sinal da máscara de ocupação e inclua cantos e bloqueios imediatos na discussão. Isso descreve uma rotina geométrica a manter, não um sistema completo de legalidade de movimentos nem um jogo fornecido pelo ambiente.

Revise a saída proposta usando casos cujas casas esperadas você possa identificar independentemente. Verifique se os raios param na borda do tabuleiro e não passam de uma linha para outra indevidamente; depois, examine o tratamento de inteiros inválidos. Execute esses casos no ambiente do projeto. Se um consumidor de nível superior interpretar a máscara como movimentos legais, revise essa lógica adicional separadamente do cálculo de raios.

DiagonalIbis conecta-se a endpoints compatíveis com OpenAI ou da Anthropic que sejam suportados, usando credenciais quando necessário. Um modelo de IA sem filtros pode ser selecionado se o endpoint o oferecer. Suas restrições reais, ferramentas e contexto dependem do modelo e do servidor; a convenção de índices e as verificações de aceitação continuam sendo requisitos sob seu controle.

Antes de aceitar uma alteração na geometria do tabuleiro

Quais detalhes de indexação pertencem à tarefa?

Declare como as casas correspondem a índices e como linhas e colunas avançam. Inclua um exemplo de canto com destinos esperados. Assim, o modelo conectado tem uma convenção explícita a seguir, e você pode revisar a máscara proposta sem adivinhar sua orientação.

O primeiro bloqueio deve aparecer na saída?

Neste exemplo, sim: o raio inclui essa casa e não avança além dela. Explicite a regra e teste um bloqueio imediato. Um consumidor de nível superior pode interpretar a ocupação de outra maneira; revise essa lógica separadamente, em vez de alterar implicitamente o contrato do raio.

Como detectar uma passagem indevida pela borda?

Use casos de cantos e bordas cujas diagonais sejam curtas ou inexistentes em determinadas direções. Compare as casas exatas retornadas com expectativas independentes. Uma máscara visualmente plausível a partir de uma casa central pode não revelar um erro de indexação próximo à borda do tabuleiro.

Uma máscara correta de raios determina movimentos legais?

Não. A legalidade dos movimentos pode depender de estados e regras adicionais além dessa operação geométrica. Mantenha restrito o contrato da rotina solicitada, examine seus consumidores quando necessário e use verificações separadas do projeto para comportamentos de nível superior antes de tratar o resultado como um conjunto de movimentos legais.

Baixar para Windows ↗

DiagonalIbis · Atualizado 2026-10-25