Istnieje n
dzieci w kole. Każda z nich ma cukierki (może być ujemna, dodatnia lub zerowa). Mogą dawać po jednym cukierku swoim sąsiadom. Końcowym rezultatem jest to, że wszyscy powinni mieć zero cukierków w minimalnych krokach.Minimalizacja kroki do dystrybucji za cukierki w kręgu
Załóżmy, że mamy 4 (-4, -2, 4, 2)
dzieciom cukierki to sekwencja będzie
- (-3, -2, 4, 1)
- (-2, -2, 4, 0)
- (-2, -1, 3, 0)
- (-2, 0, 2, 0)
- (-2, 1, 1, 0)
- (-2, 2, 0, 0)
- (-1, 1, 0, 0)
- (0, 0, 0, 0)
Jest to jedna z możliwych odpowiedzi, muszę znaleźć minimalną liczbę kroków.
Loop 1: znaleźć, jeśli sąsiad ma pozytywny cukierki, a następnie podać go do sąsiada z negatywnymi cukierki cukierki, aż liczba jest równa zero i dodać liczbę cukierków udzielonych sumy.
Pętla 2: znajdź, czy sąsiad sąsiadów ma pozytywne cukierki, a następnie daj je sąsiadowi z negatywnymi cukierkami, aż liczba cukierków będzie równa zeru i dodaj 2 (liczba słodyczy podana do sumy).
i tak dalej.
Złożoność mojego rozwiązania powoduje TLE. Co mogę zrobić, aby zmniejszyć złożoność?
Spróbuj odwołać się do sędziego internetowego, którego używasz: – Alexander
maksymalna wartość n to 10000, a limit czasu to 3 sekundy. to było w moim college'u, kodowanie comp na wywiadowni. Nie byłem w stanie go rozwiązać, ale byłem ciekawy, jaka jest odpowiedź. – kanz
Negatywne cukierki? Te biedne dzieciaki! –