Checksum Validation

Code

#include <stdio.h>

// int validate_checksum(int *mem, int n) {
    
//     return 0;
// }

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

//     int result = validate_checksum(arr, n);
//     printf("%d", result);

//     return 0;
// }


int validate_checksum( int *mem, int n){
    int ans = 0;
    for(int i=0;i<n-1;i++){
        ans^=mem[i];
    }
    if(ans^mem[n-1])
        return 0;
    
    return 1;
}
int main(){

    int n, arr[100];

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

    int result = validate_checksum(arr,n);
    printf("%d",result);

    return 0;
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

5 10 20 30 40 60

Expected Output

0