In the recent decade, drones or Unmanned Aerial Vehicles (UAVs) are getting increasing attention by both industry and academia. Due to the support of advanced technologies, they might be soon an integral part of any smart-cities related project. In this paper, we propose a cost-effective framework related to the optimal placement of drones in order to monitor a set of static and/or dynamic targets in the IoT era. The main objective of this study is to minimize the total number of drones required to monitor an environment while providing the maximum coverage, which in turn leads to significant reduction in cost. Our simulation results show that by increasing the battery capacity of the drones, the drones' visibility range would also increase and thus, the number of drones would be reduced. Moreover, when the targets are sparsely distributed across a large number of different regions, a further increase to the targets does not require an increase in the number of drones needed to monitor them.