Scan Memory for Three Consecutive Increasing Values

Code

#include <stdio.h>

int find_pattern(int *mem, int n) {
    // Write your pointer-based logic here

    int cons = 3,i=0;
    int *curr = mem;
    while(i<n){
        if(((*curr + 1) == *(curr+1)) && (*curr+2) == *(curr+2)){
            return i;
        }

        i++;
        curr++;
    }

    return -1;
}



// int main() {
//     int n, arr[100];
//     scanf("%d", &n);

//     for (int i = 0; i < n; i++) {
//         scanf("%d", &arr[i]);
//     }

//     int res = find_pattern(arr, n);
//     printf("%d", res);

//     return 0;
// }

int main(){
    int n, arr[100];
    scanf("%d", &n);

    for(int i=0;i<n;i++){
        scanf("%d", &arr[i]);
    }

    int res = find_pattern(arr,n);
    printf("%d", res);

    return 0;
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

8 2 4 5 6 9 11 12 14

Expected Output

1