30
前进两步,后退一步
假设我距离目的地十步之遥。我按照古老的谚语“向前走两步,向后退一步”走到那里。我向前走了两步,向后走了一步,直到我正好站在目的地上。(这可能涉及跨过我的目的地,然后返回目的地)。我走了几步? 当然,我可能还没有十步之遥。我可能只有11步之遥,或者是100步。我可以测量10个步伐,并继续来回走动以解决问题,或者...我可以编写一些代码! 编写一个函数,计算出要走N步要走多少步,顺序为:向前两步,向后一步。 假设您已从步骤0开始。将“向前两步”算作两步,而不是一步。 假设所有步骤都是统一的长度。 它应该返回到达该空间时首先执行的步骤数。(例如,距离10步需要26步,但是您在步骤30再次点击了它)。我们对26个感兴趣。 使用您喜欢的任何语言。 它应该接受任何正整数作为输入。这代表了目标步骤。 最小的字节数获胜。 例: 我想走5步: | | | | | | <- I'm at step 0, not yet on the grid. | |X| | | | <- I take two steps forward, I'm on step 2: the count is 2 |X| | | | …