6676.Weird Algorithm

Time Limit: 1s Memory Limit: 512MB

Consider an algorithm that takes as input a positive integer $n$ . If $n$ is even, the algorithm divides it by two, and if $n$ is odd, the algorithm multiplies it by three and adds one. The algorithm repeats this, until $n$ is one. For example, the sequence for $n=3$ is as follows: $$
3 \rightarrow 10 \rightarrow 5 \rightarrow 16 \rightarrow 8 \rightarrow 4 \rightarrow 2 \rightarrow 1
$$ Your task is to simulate the execution of the algorithm for a given value of $n$ .

Input Format(From the terminal/stdin)

The only input line contains an integer $n$ .

  • $1 \le n \le 10^6$

Output Format(To the terminal/stdout)

Print a line that contains all values of $n$ during the algorithm.

Sample Input

Copy
3
 \n

Sample Output

Copy
3 10 5 16 8 4 2 1
 ·  · ·  · · · · \n
Source: CSES, Introductory Problems, 1068

Submit

请先 登录

© 2025 FAQs