L'algorithme a été essai très embrouillée la façon d'écrire. Enfin, pense que c'est le niveau le plus simple a commencé à écrire, obtenir un certain début des poids lourds de ce que l'intelligence artificielle, les algorithmes d'apprentissage machine, mais aussi un grand nombre d'optimisation mathématique et de connaissances, le blanc sont estimés être très déprimé, bien sûr, Je ne viens pas toujours droit.
Je prévois de donner des solutions à tous les problèmes dans les deux langues un langage statique, un langage dynamique.
J'ai choisi le langage C, Python et Java comme langage de mise en uvre, en raison des contraintes d'espace, la réalisation d'autres langues d'amis qui sont intéressés, s'il vous plaît essayer vous-même.
LeetCode 292. jeu Nim (Nim jeu)
Description du problème:
Vous et vos amis, deux personnes de jouer avec le jeu Nim: un tas de pierres sur la table, chaque fois que vous mettez enlever 1--3 pierres. Suppression de la dernière pierre de la personne est le gagnant. Comme vous obtenez juste.
Vous êtes un homme sage, chaque étape est la solution optimale. Écrivez une fonction pour déterminer si vous pouvez gagner le jeu, étant donné le nombre de pierres.
exemple:
langage C:
Cette question est la clé de la solution est une analyse minutieuse des exemples.
Notez les conseils de titre « Deux personnes sont assez intelligents, chaque étape est une solution optimale », le pourcentage a expliqué gagner ici est calculé sans tenir compte du facteur humain, le calcul est le résultat inévitable.
Selon le titre donné les informations que nous savons si la pierre est le numéro 1, 2, j'étais Wynn, si le nombre est de quatre pierre, je perdais.
Si le numéro 5, puis la pierre est, en fait, peut être considérée comme la fusion de deux tours du jeu, que le premier tour est de quatre pierres, cette fois-ci l'adversaire a pris la dernière pierre, lorsque le second tour, ou je reçois juste cette fois-ci le reste d'une pierre, je gagne.
À son tour peut être lancé plusieurs pierres sont 5,6,7 lorsque toutes mes victoires, le nombre de pierres est temps de 8 je vais perdre. Cette pierre selon 4 peut être divisé en plusieurs exemplaires, si le dernier est inférieur à quatre, je gagne ou je perds.
Ainsi, le code est si simple, juste un:
la mise en uvre de python de la langue:
Se référant à obtenir une idée de résoudre ce qui précède, le langage C.
Code est la suivante:
Java implémentation du langage:
Se référant à obtenir une idée de résoudre ce qui précède, le langage C.
Code est la suivante: