Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    104

    [java] Gioco del gomoku --- help

    Il go-moku è un gioco astratto che si gioca comunemente sul tavoliere del go (detto goban, formato da 19x19 intersezioni). Spesso non tutto il tavoliere è utilizzato ma solo una sua zona, comunque di forma quadrata.
    Due giocatori si alternano ponendo pedine del proprio colore nelle intersezioni del goban. Il primo a creare una sequenza orizzontale, verticale o diagonale di esattamente cinque pedine vince (se quindi una mossa crea una sequenza di più di cinque pedine il giocatore di turno non vince e il gioco continua).
    Scrivere un programma che accetti in input da riga di comando il nome di un file di testo che deve contenere la rappresentazione di un goban in cui è in corso una partita di go-moku e visualizzi in output lo stato della partita (in corso, il bianco ha vinto, il nero ha vinto, patta; il caso in cui ci siano sequenze vincenti per entrambi i giocatori è da considerarsi una situazione non valida e va segnalata).
    La dimensione del campo di gioco (comunque quadrato) può essere variabile con un lato massimo di 19 incroci.
    La rappresentazione del campo di gioco è formato da una sequenza di N (N <= 19) righe ognuna di N caratteri. Il carattere '.' è usato per rappresentare una intersezione vuota, il carattere 'O' indica un pezzo bianco e il carattere 'X' indica un pezzo nero.

    Esempio: a fronte del goban nella seguente rappresentazione

    .O..XX.XX..
    ..........O
    ..O..O.....
    .....O.O...
    .X...OX....
    .XX..OX....
    .O...OX....
    .....OX..O.
    ......X....
    ..O........
    ...........



    Allora il problema a questo punto è il seguente.
    Il mio programma riesce a trovare le sequenze di 5 considerandole vincenti... l'unico problema e' che ad esempio nello schema qua sopra mi conta una vincita doppia per la X e altre due vincite per O

    Le vencite per il O le considera 1 a partire dalla posizione 3-5 scendendo in basso
    una a partire dalla posizione 7 -5 verso l'alto

    Analogamente per le X conta due vittorie.


    Come posso risolvere questo problema???
    (non mi serve che scriviate il codice)

    non so dove sbattere la testa
    anzi si

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    esegui il check solo in un verso per ciascuna direzione. tu esegui il check in entrambi i versi per ciascuna direzione. Saluti
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.