Given N * M rectangular park having N rows and M columns, each cell of the park is a square of unit area and boundaries between the cells is called hex and a sprinkler can be placed in the middle of the hex. The task is to find the minimum number of sprinklers required to water the entire park.
Input: N = 3 M = 3
For the first two columns 3 sprinklers are required and for last column we are bound to use 2 sprinklers to water the last column.
Input: N = 5 M = 3
For the first two columns 5 sprinklers are required and for last column we are bound to use 3 sprinklers to water the last column.
- After making some observation one thing can be point out i.e for every two column, N sprinkler are required because we can placed them in between of two columns.
- If M is even, then clearly N* (M / 2) sprinklers are required.
- But if M is odd then solution for M – 1 column can be computed using even column formula, and for last column add ( N + 1) / 2 sprinkler to water the last column irrespective of N is odd or even.
- Minimum number of square tiles required to fill the rectangular floor
- Count of minimum reductions required to get the required sum K
- Minimum number of Water to Land conversion to make two islands connected in a Grid
- Program to check if water tank overflows when n solid balls are dipped in the water tank
- Minimum Players required to win the game
- Minimum time required to rot all oranges
- Minimum steps required to reach the end of a matrix | Set 2
- Minimum operations required to change the array such that |arr[i] - M| <= 1
- Minimum number of changes required to make the given array an AP
- Minimum number of given operation required to convert n to m
- Minimum number operations required to convert n to m | Set-2
- Minimum number of primes required such that their sum is equal to N
- Minimum number of palindromes required to express N as a sum | Set 1
- Minimum number of palindromes required to express N as a sum | Set 2
- Minimum number of operations required to reduce N to 1
- Minimum concatenation required to get strictly LIS for the given array
- Minimum inversions required so that no two adjacent elements are same
- Minimum deletions required to make GCD of the array equal to 1
- Minimum time required to cover a Binary Array
- Minimum time required to rot all oranges | Dynamic Programming
Here is implementation of above approach:
Time Complexity: O(1)
Auxiliary Space: O(1)
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.
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. 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.