Mémorandum ABC [ABC160 C - Vendeur de voyages autour du lac] (Python)

Énoncé du problème

Il y a un lac circulaire de $ K $ m par tour, autour duquel il y a des maisons $ N $. La $ i $ ème maison est située $ A_i $ mètres dans le sens des aiguilles d'une montre à partir de l'extrémité nord du lac. Vous ne pouvez vous déplacer qu'entre les maisons le long de la circonférence du lac. Trouvez la distance parcourue la plus courte pour visiter toutes les N maisons à partir de l'une des maisons.

Contrainte

2≤K≤10^6 2≤N≤2×10^5 0≤A_1<... Toutes les valeurs entrées sont des entiers.

C - Traveling Salesman around Lake

Solution

Puisque les maisons peuvent être considérées comme alignées sur la circonférence, la distance entre les maisons adjacentes doit être calculée et la somme de celles excluant la plus petite doit être prise.

K, N = map(int,input().split()) 
A = list(map(int, input().split()))
 
li = []
for i in range(N - 1):
  li.append(A[i + 1] - A[i]) #Ajouter la différence entre les éléments du tableau A à li
  
li.append(abs(A[0] + (K - A[-1]))) #Ajouter uniquement les premier et dernier termes de la séquence séparément
print(sum(li) - max(li))

Recommended Posts

Mémorandum ABC [ABC160 C - Vendeur de voyages autour du lac] (Python)
Mémorandum ABC [ABC163 C --managementr] (Python)
Mémorandum ABC [ABC159 C - Volume maximum] (Python)
Mémorandum ABC [ABC161 C --Replacing Integer] (Python)
Mémorandum ABC [ABC158 C - Augmentation de la taxe] (Python)
Mémorandum ABC [ABC157 C --Guess The Number] (Python)
ABC147 C --HonestOrUnkind2 [Python]
Résoudre ABC163 A ~ C avec Python
Explication ABC127 A, B, C (python)
ABC166 en Python A ~ C problème
Résoudre ABC168 A ~ C avec Python
Résoudre ABC036 A ~ C avec Python
Résolu AtCoder ABC 114 C-755 avec Python3
Résoudre ABC162 A ~ C avec Python
Résoudre ABC167 A ~ C avec Python
ABC128 Commentaire A, B, C (python)
Résoudre ABC158 A ~ C avec Python
Explication ABC126 A, B, C (python)
Résoudre ABC037 A ~ C avec Python
Résoudre ABC175 A, B, C avec Python
Mémorandum Python 2
Algorithme en Python (ABC 146 C Dichotomy
Mémorandum Python
mémorandum python
mémorandum python
Python: j'ai essayé le problème du voyageur de commerce
Mémorandum Python
mémorandum python
Mémorandum Python
Défiez AtCoder (ABC) 164 avec Python! Un problème ~ C
Débutant ABC156 (Python)
Mémorandum de base Python
Mémorandum de Python Pathlib
Mémorandum Python (algorithme)
AtCoder ABC 174 Python
Débutant ABC155 (Python)
notes de python C ++
python, openFrameworks (c ++)
Débutant ABC157 (Python)
Mémorandum Python [liens]
AtCoder ABC 175 Python
Résoudre Atcoder ABC176 (A, B, C, E) en Python