Solution - Weird Algorithm - CSES Problem Set
Weird Algorithm
#include <iostream>using namespace std;int main() {long long int n;cin >> n;cout <<n<<" ";while(n>1){if(n%2==0){n=n/2;cout <<n<<" ";}else{n=(n*3)+1;cout <<n<<" ";}}return 0;}CSES Problem Set
Weird Algorithm
- Time limit: 1.00 s
- Memory limit: 512 MB
Consider an algorithm that takes as input a positive integer
. If is even, the algorithm divides it by two, and if is odd, the algorithm multiplies it by three and adds one. The algorithm repeats this, until is one. For example, the sequence for is as follows:Your task is to simulate the execution of the algorithm for a given value of .
Input
The only input line contains an integer .
Output
Print a line that contains all values of during the algorithm.
Constraints
Input:
3
Output:
3 10 5 16 8 4 2 1
Comments
Post a Comment