Skip to content
Related Articles

Related Articles

Improve Article

Construct an array of first N natural numbers such that every adjacent pair is coprime

  • Last Updated : 22 Apr, 2021

Given a positive integer N, the task is to construct an array consisting of first N natural numbers such that each pair of adjacent elements in the array is a co-prime. If multiple solutions exist, then print any one of them.

Examples:

Input: N = 4 
Output: 4 1 3 2 
Explanation: 
All possible adjacent pairs of the array are { (4, 1), (1, 3), (3, 2) } 
Since all adjacent pairs of the array are co-prime, the required output is 4 1 3 2.

Input: N = 7 
Output: 3 4 5 7 6 1 2

Approach: The idea is to iterate over the range [1, N] using variable i and print the value of i. Following are the observations:



GCD(i, i + 1) = 1 
Therefore, for all possible value of i the pair (i, i + 1) are coprime numbers. 
 

Below is the implementation of the above approach:

C++




// C++ program to implement
// the above approach
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to construct an arrary with
// adjacent elements as co-prime numbers
void ConstArrayAdjacentCoprime(int N)
{
    // Iterate over the range [1, N]
    for (int i = 1; i <= N; i++) {
 
        // Print i
        cout << i << " ";
    }
}
 
// Driver Code
int main()
{
    int N = 6;
 
    ConstArrayAdjacentCoprime(N);
    return 0;
}

Java




// Java program to implement
// the above approach
class GFG
{
 
    // Function to construct an arrary with
    // adjacent elements as co-prime numbers
    static void ConstArrayAdjacentCoprime(int N)
    {
        // Iterate over the range [1, N]
        for (int i = 1; i <= N; i++)
        {
     
            // Print i
            System.out.print(i + " ");
        }
    }
 
    // Driver Code
    public static void main (String[] args)
    {
      int N = 6;
      ConstArrayAdjacentCoprime(N);
    }
}
 
// This code is contributed by AnkitRai01

Python3




# Python3 program to implement
# the above approach
 
# Function to construct an arrary with
# adjacent elements as co-prime numbers
def ConstArrayAdjacentCoprime(N):
 
    # Iterate over the range [1, N]
    for i in range(1, N + 1):
       
        # Print i
        print(i, end = " ")
 
# Driver Code
if __name__ == "__main__" :
 
    N = 6
 
    ConstArrayAdjacentCoprime(N)
 
# This code is contributed by AnkitRai01

C#




// C# program to implement
// the above approach 
using System;
 
class GFG{
  
// Function to construct an arrary with
// adjacent elements as co-prime numbers
static void ConstArrayAdjacentCoprime(int N)
{
     
    // Iterate over the range [1, N]
    for(int i = 1; i <= N; i++)
    {
         
        // Print i
        Console.Write(i + " ");
    }
}
 
// Driver Code
public static void Main ()
{
    int N = 6;
     
    ConstArrayAdjacentCoprime(N);
}
}
 
// This code is contributed by susmitakundugoaldanga

Javascript




<script>
// javascript program to implement
// the above approach
 
    // Function to construct an arrary with
    // adjacent elements as co-prime numbers
    function ConstArrayAdjacentCoprime(N)
    {
     
        // Iterate over the range [1, N]
        for (let i = 1; i <= N; i++)
        {
      
            // Print i
            document.write(i + " ");
        }
    }
 
// Driver code
    let N = 6;
      ConstArrayAdjacentCoprime(N);
  
 // This code is contributed by target_2.
</script>
Output: 
1 2 3 4 5 6

 

Time Complexity: O(N) 
Auxiliary Space: O(1)

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :