Counting Valleys

  • + 0 comments

    My Java solution:

    public static int countingValleys(int steps, String path) { int currentLevel = 0; char down = 'D'; int numberOfValleys = 0;

        for (Character c : path.toCharArray()) {
            int step = c == down ? -1 : 1;
            if (currentLevel < 0 && (currentLevel + step) == 0) {
                numberOfValleys++;
            }
            currentLevel += step;
        }
        return numberOfValleys;
    }