Gravity Guy est un jeu où la seule entrée utilisateur est une seule touche qui inverse le sens de la gravité. Étant donné un niveau d'art ASCII, déterminez s'il est possible que Gravity Guy atteigne la fin.
Règles
- La direction de gravité initiale est en baisse .
- La première colonne de l'entrée ne contiendra toujours qu'une seule
#
, que Gravity Guy démarre par- dessus. - Chaque itération, il se déplace vers le personnage directement à sa droite .
- Si son chemin est bloqué et qu'il entre dans un
#
, le joueur perd . - Après avoir bougé, le joueur peut éventuellement basculer la gravité de bas en haut ou de haut en bas.
- Gravity Guy tombe
#
ensuite sur le suivant (dans le sens de la gravité actuel). - S'il n'y a personne
#
sur qui tomber et qu'il tombe de la grille , le joueur perd . - Si Gravity Guy s'écarte du côté droit de la grille d'entrée, le joueur gagne .
Exemple
S'il s'agissait de la grille d'entrée:
###
# # #
###
Gravity Guy commencerait à x
et à ces positions après chaque itération. ^
= changer la gravité vers le haut et v
= changer la gravité vers le bas.
v ^ v
-------------------------------------------------------------
### | ### | ### | ### | ### | ###
x | | x | x | x |
# # | #x # | # # | # # | # # | # # x
### # | ### # | ### # | ### # | ### # | ### #
Comme vous pouvez le voir, en changeant la gravité à ces moments, Gravity Guy atteint la fin, donc cette entrée retournerait une valeur vraie.
Caractéristiques
- La grille d'entrée peut être dans n'importe quel format de "grille" approprié (chaîne multiligne remplie d'espaces, tableau de chaînes de ligne, tableau de tableau de caractères, etc.).
- S'il est possible pour le joueur de gagner le niveau, affichez une
truthy
valeur. Sinon, sortez unefalsey
valeur. - La largeur et la hauteur de la grille seront
50
au maximum des caractères. - C'est le code-golf , que le code le plus court en octets gagne!
Cas de test
(chaque cas séparé par ----------
, toutes les lignes vides doivent également être complétées par des espaces)
Vrai
######### ######## ###### ######
# # # # # # #
### # # # # # # # # #
# ## # # ## # # # # # ##
# # # # # # # # # #######
# # # # # ### # #
# ## # ## # # # #
# # # # # #
# #################################### #
# #
#############################################
----------
###
----------
#####
####
----------
#####
# # #
# # #
#####
----------
############
###### ######
############
----------
### ###
# #
#### # ####
# #
# #
#
----------
######
#
##
#######
### #
# #
#####
----------
#####
# #
## #
#######
###
#
######
----------
###
# # #
###
----------
### ###
### ##
# #
#####
----------
#
# #
#
# # #
#
#
#
#
----------
##### ####
# # #
# # # ## #
# #
##### #### #
#
#########
----------
###########################
# # # # # # #
# # # # # # # # # #
# # # ######### ###########
# # # # # # # #
# # # ## ##### ### #
## # # # ## ###
# ##### #### ########### #
# # # # # ## #
# # ##### ### # # # # # #
# # # # ##
###########################
Faux
###
#
####
----------
### ###
----------
#
### ###
#### ###
#
----------
### ###
# # #
#### # # ####
# #
# #
# #
#
----------
#######
# #
## #####
### ######
# #
#######
----------
###########################
# # # # # # # #
# # # # # # # # # #
# # # ######### ###########
# # # # # # # #
# # # ## ##### ### #
## # # # ## ###
# ##### #### ########### #
# # # # # ## #
# # ##### ### # # # # # #
# # # # ##
###########################
column
type spécial , ce serait OK à utiliser, je suppose.
#
première colonne soit dans la première ligne?