
Intentamos de nuevo averiguar el siguiente punto desde donde podemos iniciar nuestro viaje, es decir, el siguiente surtidor de gasolina donde la cantidad de gasolina es mayor o igual a la distancia a recorrer y la marcamos como inicio. Si en el medio, en cualquier surtidor, la cantidad de gasolina es menor que la distancia a recorrer para llegar al siguiente surtidor, entonces podemos decir que no podemos completar el recorrido circular desde el inicio. Ahora marcamos esa bomba de gasolina como inicio y ahora comprobamos si podemos terminar el viaje hacia el punto final. Otra solución eficaz puede ser encontrar la primera bomba de gasolina donde la cantidad de gasolina sea mayor o igual a la distancia a recorrer para llegar a la siguiente bomba de gasolina. Let curr_petrol = arr.petrol - arr.distance Ĭomplejidad del tiempo: Estamos visitando cada surtidor de gasolina exactamente una vez, por lo tanto, la complejidad del tiempo es O (n) JavaScript program to find circular tour for a truck remove the starting petrol pump from tour Public static int printTour(petrolPump arr,
BOMBA DE GASOLINA CODE
# This code is contributed by Antara Das(anny) // C# program to find circular While (end != start || curr_petrol =0 else -1 Int printTour(struct petrolPump arr, int n) * Run a loop while all petrol pumps are not visited.Īnd we have reached first petrol pump again with 0 or more petrol */ Int curr_petrol = arr.petrol - arr.distance Consider first petrol pump as a starting point The function returns starting point if there is a possible solution, A petrol pump has petrol and distance to next petrol pump La imagen de abajo es un ensayo del enfoque anterior:Ī continuación se muestra la implementación del enfoque anterior: // C++ program to find circular tour for a truck Mantenemos dos variables de índice start y end que representan la parte posterior y frontal de la cola. Si la cantidad se vuelve negativa, seguimos retirando los surtidores de gasolina hasta que la cola se vacíe.Įn lugar de crear una cola separada, usamos la matriz dada como una cola. Primero colocamos la primera bomba de gasolina en la cola, seguimos poniendo las bombas de gasolina hasta que completamos el recorrido o la cantidad actual de gasolina se vuelve negativa.

Un enfoque eficaz es utilizar una cola para almacenar el recorrido actual. La complejidad temporal del peor caso de esta solución es O (n ^ 2). Si encontramos un punto de partida con una solución factible, devolvemos ese punto de partida.

Una solución simple es considerar cada surtidor de gasolina como un punto de partida y ver si hay un recorrido posible. La salida debe ser "start = 1" (índice de la 2ª bomba de gasolina). El primer punto desde donde el camión puede realizar un recorrido circular es el 2º surtidor de gasolina. Por ejemplo, supongamos que hay 4 surtidores de gasolina con la cantidad de gasolina y la distancia al siguiente par de valores de surtidor de gasolina como. Suponga que para 1 litro de gasolina, el camión puede recorrer 1 unidad de distancia. La complejidad de tiempo esperada es O (n).
BOMBA DE GASOLINA SOFTWARE
This file contains additional information such as Exif metadata which may have been added by the digital camera, scanner, or software program used to create or digitize it.
BOMBA DE GASOLINA LICENSE
GFDL GNU Free Documentation License true true A copy of the license is included in the section entitled GNU Free Documentation License. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. CC BY-SA 3.0 Creative Commons Attribution-Share Alike 3.0 true true share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.

You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made.to share – to copy, distribute and transmit the work.
