int mangocity_count_ways(struct node *startcity,int k, int *shortestpath,int *shortestpathlen){
	//Just Copy values in shortestpath and shortestpathlen .Dont allocate memory for it .
	if (startcity == NULL)
		return -1;
	int sum = 0;
	sum += startcity->data;
	shortestpath[*index++] = startcity->data;
	int len, count = 0;
	if (sum == k) {
		len = find_path_len(shortestpath);
		if (*shortestpathlen < len)
			*shortestpathlen = len;
		count++;
	}
	mangocity_count_ways(startcity->left, k, shortestpath, shortestpathlen);
	mangocity_count_ways(startcity->right, k, shortestpath, shortestpathlen);
	return count;
}
int mangocity_count_ways(struct node *startcity,int k, int *shortestpath,int *shortestpathlen){
	if (startcity == NULL || shortestpath == NULL)
	{
		return -1;
	}
	//int max = 123456;
	shortestpath[(*shortestpathlen)] = startcity->data;
	(*shortestpathlen)++;
	int x = k - startcity->data;
	if (max > ispro(shortestpath, shortestpathlen))
	{
		max = ispro(shortestpath, shortestpathlen);
	}
	if (x==0)
	{
		return *shortestpathlen;
	}
	else
	{
		mangocity_count_ways(startcity->left, x, shortestpath, shortestpathlen);
		mangocity_count_ways(startcity->right, x, shortestpath, shortestpathlen);
	}

}