贪吃蛇
一、问题描述
初始状态:贪吃蛇的蛇头在坐标(0,0)处,蛇身长度为10,蛇尾在(-10,0)处,呈一字型,输入一行字符,L表示蛇向左行走一格,R表示蛇向右行走一格,U表示蛇向上行走一格,D表示蛇向下行走一格,判断输入的操作方式会不会导致蛇在自身上发生碰撞,会发生输出legal,不会发生输出illegal。
二、解题思路
1) 获取身体坐标。
2) 保存开始时蛇头的位置,最后进行更新。
3) 操作开始,只关心蛇头坐标的动向。
4) 根据蛇头坐标,更新身体坐标,并进行碰撞检测。
5) 更新蛇头坐标,重复下一步循环。
三、注意事项
1) 判断输入是否合法。
2)碰撞操作发生后及时退出。
四、代码实现
见我的github:贪吃蛇