# Collatz Conjecture

Easy
14
87.3% Acceptance

In this lab, you will implement a method in Java named `countSteps`, which will calculate the number of steps needed to reach 1 from a given starting number using the Collatz Conjecture. Your implementation will be tested against a series of challenges to ensure accuracy and efficiency.

### The Collatz Conjecture

The Collatz Conjecture is a mathematical algorithm that involves a sequence of operations on positive integers. For any given number `n`, the sequence is as follows:

• If `n` is even, divide it by 2.
• If `n` is odd, multiply it by 3 and add 1.
• Continue this process until `n` becomes 1.

### Task

Your task is to write a public static method `countSteps` in a class named `Main`. This method should:

• Take an integer `n` as an input.
• Return the number of steps it takes to reduce `n` to 1 by following the rules of the Collatz Conjecture.

### Requirements

• The method should be named `countSteps` and must be static.
• It should take a single integer parameter and return an integer.
• Ensure your method handles a range of inputs efficiently and accurately.
• Remember, the method should return the number of steps, not print them.

### Example

If the input to `countSteps` is `6`, the method should return `8`, as it takes 8 steps to reduce 6 to 1 following the Collatz Conjecture.

### Challenges Information

#### Challenge 1: Testing with the Number 7

• Objective: Implement the `countSteps` method in the `Main` class to correctly execute the Collatz conjecture starting from the number 7.
• Expected Output: The method should return `16`, indicating 16 steps to reduce 7 to 1 following the Collatz conjecture rules.

#### Challenge 2: Testing with the Number 6

• Objective: Write the `countSteps` method in the `Main` class to process the number 6 according to the Collatz conjecture.
• Expected Output: The method must return `8`, denoting 8 steps required to reach 1 from 6.

#### Challenge 3: Testing with the Number 16

• Objective: Ensure the `countSteps` method in the `Main` class correctly processes the number 16 under the Collatz conjecture.
• Expected Output: The correct output is `4`, showing that 4 steps are needed to go from 16 to 1.

#### Challenge 4: Testing with the Number 1

• Objective: Test the `countSteps` method in the `Main` class with the number 1, the endpoint of the Collatz conjecture.
• Expected Output: As 1 is already the target, the method should return `0`, indicating no steps are needed.