In this HackerEarth Modulo Strength problem solution Alice is the teacher of a class having N students, where each student is having some personality value, given in the form of an array A. Here Ai denotes the personality value of ith student, where 1 <= i <= N. Alice has a special integer K with her. Student i is a friend of Student j, if and only if (A[i] % K) = (A[j] % K). Each student's strength is equal to the number of friends he/she has. Alice needs to calculate the sum of the strength of all the students in the class. Help Alice for the same.
HackerEarth Modulo Strength problem solution.
#include<stdio.h>
int main()
{
int n,k;
long long int *arr,strength=0,*res;
scanf("%d",&n);
scanf("%d",&k);
arr = (long long int *) malloc( n * sizeof(long long int ));
res = (long long int *) malloc( k * sizeof( long long int ));
for(int i = 0 ; i<n ; i++)
{
scanf("%lld",&arr[i]);
}
for(int i = 0 ; i< n ; i++)
{
int loc = arr[i] % k;
res[loc] = res[loc] + 1;
}
for(int i = 0 ; i<k ; i++ )
{
if(res[i] == 0 || res[i] == 1)
continue;
strength = strength + ( res[i] * (res[i] - 1) ) ;
}
printf("%lld",strength);
return 0;
}
0 Comments