Wipro: Given a 2D array, print it in spiral form?

Wipro Coding Questions
Wipro Coding Questions

Wipro Coding Questions

Given a 2D array, print it in spiral form?

Example’s:

Input:
        1    2   3   4
        5    6   7   8
        9   10  11  12
        13  14  15  16
Output: 
1 2 3 4 8 12 16 15 14 13 9 5 6 7 11 10 


Input:
        1   2   3   4  5   6
        7   8   9  10  11  12
        13  14  15 16  17  18
Output: 
1 2 3 4 5 6 12 18 17 16 15 14 13 7 8 9 10 11

Program: 2D Array in Spiral form

#include 
#define R 3
#define C 6
void spiralPrint(int m, int n, int a[R][C])
    {
      int i, k = 0, l = 0;

/* k – starting row index
m – ending row index
l – starting column index
n – ending column index
i – iterator
*/

     while (k < m && l < n)
          {
/* Print the first row from the remaining rows */
               for (i = l; i < n; ++i)
                 {
                    printf(“%d “, a[k][i]);
                 }
                k++;

/* Print the last column from the remaining columns */
             for (i = k; i < m; ++i)
                {
                  printf(“%d “, a[i][n-1]);
                }
                   n-–;

/* Print the last row from the remaining rows */
              if ( k < m)
                 {
                   for (i = n-1; i >= l; –i)
                     {
                       printf(“%d “, a[m-1][i]);
                     }
                     m-–;
                 }

/* Print the first column from the remaining columns */
                  if (l < n)
                      {
                         for (i = m-1; i >= k; –i)
                             {
                               printf(“%d “, a[i][l]);
                             }
                         l++; 
                       } 
                }
           }

/* Driver program to test above functions */
int main()
{
int a[R][C] = { {1, 2, 3, 4, 5, 6},
{7, 8, 9, 10, 11, 12},
{13, 14, 15, 16, 17, 18}
};

spiralPrint(R, C, a);
return 0;
}

OUTPUT: 1 2 3 4 5 6 12 18 17 16 15 14 13 7 8 9 10 11 

April Long Challenge 2021 Solutions

Codechef Long Challenge Solutions

February Long Challenge 2021

1. Frog Sort Solution Codechef

2. Chef and Meetings Solution Codechef

3. Maximise Function Solution Codechef

4. Highest Divisor Solution Codechef

5. Cut the Cake Challenge Solution Codechef

6. Dream and the Multiverse Solution Codechef

7. Cell Shell Solution Codechef

8. Multiple Games Solution Codechef

9. Another Tree with Number Theory Solution Codechef

10. XOR Sums Solution Codechef

11. Prime Game Solution CodeChef

12. Team Name Solution Codechef

January Long Challenge 2021

November Challenge 2020 SOLUTION CodeChef

October Lunchtime 2020 CodeChef SOLUTIONS

RELATED :

Related :

Related :

Leave a Comment

close
error: Content is protected !!