-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsubarray_m.c
57 lines (49 loc) · 1.03 KB
/
subarray_m.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include<stdio.h>
int subarray(int **ptr, int,int);
int main() {
int num_test, array_size;
int max_size;
int t_index=0;
int a_index=0;
int **ptr;
num_test=array_size=max_size=0;
max_size=1000;
scanf("%d",&num_test);
ptr=(int**)malloc(sizeof(int)*num_test);
while(t_index <num_test) {
scanf("%d",&array_size);
if (array_size >max_size) continue;
ptr[t_index]=(int*)malloc(sizeof(int)*array_size);
a_index=0;
while(a_index <array_size) {
scanf("%d",&ptr[t_index][a_index]);
a_index++;
}
printf("Missing number is %d \n",subarray(ptr,array_size,t_index));
t_index++;
}
#if 0
for(t_index=0;t_index<num_test;t_index++) {
for(a_index=0;a_index<array_size;a_index++) {
// printf("%d \t",ptr[t_index][a_index]);
}
// printf("\n");
}
#endif
free(ptr);
}
int subarray(int** ptr,int index, int t_index) {
int peek=0;
int index1=0;
int sum=0;
while (index1<=index) {
sum+=ptr[t_index][index1];
index1++;
}
index1=0;
while(index1<=index) {
peek+=index1;
index1++;
}
return (peek-sum);
}