Given an array of length N that contains only integers, the task is to print the special numbers of array. A number in this array is called Special number if it is divisible by at least one other number in the array.
Input : 1 2 3
Output : 2 3
Explanation : both 2 and 3 are divisible by 1.
Input : 2 3 4 6 8 9
Output : 4 6 8 9
Explanation : 2 and 3 are not divisible by any other element. Rest of the element are divisible by at-least 1 element. 6 is divisible by both 2 and 3, 4 divisible by 2, 8 divisible by 2 and 4 both, 9 divisible by 3.
Input : 3 5 7 11
Explanation : all elements are relatively prime so no special number.
A simple solution is to traverse through all elements, then check for every element if it is divisible by any other. Time complexity of this solution is O(n2)
Another solution that works better when there are many elements with not very big values. Store all array elements into hash and find out the max element in array then up-to max element find out the multiples of a given number then if multiple of array element is in hash then that number is divisible by at-least one element of array .To remove duplicate values we store the value into set because if array has 2, 3 and 6 then only 6 is divisible by at-least one element of array, both 2 and 3 divide 6 so 6 will be stored only one time.
6 8 9 10
Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.
- Choose atleast two elements from array such that their GCD is 1 and cost is minimum
- Print all the combinations of N elements by changing sign such that their sum is divisible by M
- Count of elements not divisible by any other elements of Array
- Maximum sum of elements divisible by K from the given array
- Sum of all the elements in an array divisible by a given number K
- Elements of an array that are not divisible by any element of another array
- Product of all the elements in an array divisible by a given number K
- Make all array elements divisible by a number K
- Count the number of elements in an array which are divisible by k
- Count elements that are divisible by at-least one element in another array
- Find an array element such that all elements are divisible by it
- Count numbers in a range that are divisible by all array elements
- Smallest perfect square divisible by all elements of an array
- Smallest perfect Cube divisible by all elements of an array
- Minimum steps to make all the elements of the array divisible by 4
- Minimum operations required to make all Array elements divisible by K
- Maximum subsequence sum with adjacent elements having atleast K difference in index
- Print elements of an array according to the order defined by another array | set 2
- Program to print Sum of even and odd elements in an array
- Print sorted distinct elements of array
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.