Hackarrank Circular Array Rotation


A solution in c++

#include<bits/stdc++.h>

using namespace std;

/// Typedef
typedef long long int ll;


//Int data type
#define sc1(a)              scanf("%d", &a)
#define sc2(a, b)           scanf("%d %d", &a, &b)
#define sc3(a, b, c)        scanf("%d %d %d", &a, &b, &c)
#define sc4(a, b, c, d)     scanf("%d %d %d %d", &a, &b, &c, &d)

//Long Data type
#define scl1(a)             scanf("%lld", &a)
#define scl2(a, b)          scanf("%lld %lld", &a, &b)
#define scl3(a, b, c)       scanf("%lld %lld %lld", &a, &b, &c)
#define scl4(a, b, c, d)    scanf("%lld %lld %lld %lld", &a, &b, &c, &d)

int main()
{
    ll n,m,i,j=0,k=0,t,a=0,b,ck=0,dk=0;

    scl3(n,m,a);
    ll arr[n];

    for(i=0; i<n; i++)
        scl1(arr[i]);

    for(i=0; i<a; i++){
        scl1(b);
        b-=m;
        while(b<0) b+=n;
        cout<<arr[b]<<endl;
    }

}

Post a Comment

0 Comments