Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    3

    [C#] programma da creare

    salve a tutti, sono nuovo e ho bisogno di un aiutino...

    dovrei creare un programma che, dati dei dati, risolva un tipo specifico di "enigma"

    il problema è il seguente:
    c'è una cella 4x4 e ogni cella puo avere 3 colorazioni (Verde,Giallo,Rosso)
    es.

    -O O O O
    -O O O O
    -OO O O
    -O O OO

    si possono cambiare i colori delle celle ma soltando cambiando quelle di tutta la fila/colonna in questo modo

    -la cella VERDE diventa ROSSA
    -la cella ROSSA diventa GIALLA
    -la cella GIALLA diventa VERDE

    es:

    la fila O O O O cambiata diventa O O O O

    l'obbiettivo del programma è che dopo aver digitato come imput quali sono i colori delle 16 celle far si che TUTTE le celle diventano verdi e poi ci dovrebbe essere l'output con le file/colonne da cambiare

    è possibile????quali sono le vostre idee al riguardo????

    grazie

  2. #2
    Tutto è possibile

    Sembra molto uno di quei quesiti da olimpiadi dell'informatica.
    Sicuramente con ricorsione e forza bruta è possibile, anche se non sarebbe molto efficace dato il numero gigantesco di possibilità.
    E per applicare tecniche di programmazione dinamica non mi viene in mente nulla se non "ricordarsi" gli stati precedenti ed eliminare così i doppioni...

    Però il C# non lo conosco proprio per niente, al massimo potrei provare a farmelo un po' così per sfida, ma in C/C++

    [EDIT]
    Come non detto, è più semplice di quel che pensassi e la ricorsione è meglio lasciarla a casina sua. Non avevo considerato che una cella sia che la cambi girando verticalmente che orizzontalmente sempre di 1 colore cambia...
    Se si da in ipotesi che c'è almeno una soluzione dovrebbero bastare un paio di cicli for, ma spesso non c'è nessuna soluzione possibile, tipo l'esempio che hai esposto... (a meno che non sia completamente rimbambito io )

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    3
    questo enigma lo trovo su internet, quindi credo sia risolvibile....

    ma come imposto i cicli for???? lòa colonna/riga che cambia viene scelta a random????

    random nn converrebbe, xkè poi ci dovrebbe essere l'output con le file /colonne da cambiare in successione.....e nn possono essere certo 1500 e oltre....

  4. #4
    Hai il link della fonte?
    Perché o hai sbagliato a riscrivere il testo, o non ho capito qualche passaggio subdolo della spiegazione o quel caso non è risolvibile

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    3
    il link nn è possibile darlo, xkè fa parte di un browser game...e fa parte di una parte del gioco,in un punto che s efai dai 14 verdi in su hai un bonus....

    qui c'è un solver in flash...

    http://www.animaljam.co.uk/hobowars/unisolver.swf

    io volevo fare proprio qualcosa del genere..e poi, a quanto pare la griglia 4x4 è composta in random quindi non è sempre sicuro il 16

    beh, anke se non fosse risolvibile dovrebbe dirmi con quante( e quali) mosse ottenere il miglior punteggio.....

    x babel.91: io dicevo C# xkè è il migliore che conosco ed è + semplice a fare (x me) una finestra di win funzionale....solo quello...se sai dirmi in c/c++ va bene lo stesso

  6. #6
    Aaah ok, ora capisco ^^

    Non è obbligatorio farle diventare tutte verdi... bisogna fare il miglior punteggio considerando che verde = +1 e rosso = -1.
    Infatti in quel caso non si può ed è lì che mi ero perso.

    Ok, ci penso un attimo e se mi viene una soluzione "decente" te la dico a parola, poi magari lo implementi tu.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.