AMAZON INTERVIEW QUESTION--
QUESTION--
You have an array of size n with values ranging from 1 to n. Exactly one number is missed and one number is repeated. Find missing number and Repeated number.
SOLUTION --
#include
int main()
{
int n,i;
scanf("%d",&n);
int arr[n];
for(i=0;i
scanf("%d",&arr[i]);
int sum_of_digit=0;
int sum_of_sqdigit=0;
for(i=0;i
{
sum_of_digit+=arr[i];
sum_of_sqdigit+=arr[i]*arr[i];
}
int sum_of_digit1=(n*(n+1))/2;
int sum_of_sqdigit1=(n*(n+1)*(2*n+1))/6;
int repeat_value=((sum_of_sqdigit-sum_of_sqdigit1)/(sum_of_digit-sum_of_digit1)+(sum_of_digit-sum_of_digit1))/2;
int miss_value=((sum_of_sqdigit-sum_of_sqdigit1)/(sum_of_digit-sum_of_digit1)-(sum_of_digit-sum_of_digit1))/2;
printf("repeated valu=%d\nmiss value=%d",repeat_value,miss_value);
return 0;
}
No comments:
Post a Comment