为了解决这个问题,我们将遵循以下步骤-
l:=移动数组的大小
如果l与0相同,则-
返回真
lft:= 0,向上:= 0
对于初始化i:= 0,当i <l时,更新(将i增加1),执行-
(减少1)
(增加1)
(将英尺降低1)
(将英尺增加1)
如果moves [i]与“ L”相同,则-
如果moves [i]与'R'相同,则-
如果moves [i]与“ U”相同,则-
如果moves [i]与'D'相同,则-
如果lft等于0,up等于0,则-
返回真
返回假
让我们看下面的实现以更好地理解-
#include <bits/stdc++.h> using namespace std; class Solution { public: bool judgeCircle(string moves) { int l = moves.length(); if (l == 0) { return true; } int lft = 0, up = 0; for (int i = 0; i < l; i++) { if (moves[i] == 'L') { lft++; } if (moves[i] == 'R') { lft--; } if (moves[i] == 'U') { up++; } if (moves[i] == 'D') { up--; } } if (lft == 0 && up == 0) { return true; } return false; } }; main(){ Solution ob; cout << (ob.judgeCircle("RRULLD")); }
"RRULLD"
输出结果
1