Решение задачи "Ксюша и кольцевая дорога" с Codeforces

Без пояснения   Просмотров: 28


Ксюша живет в городе, в котором на главной кольцевой дороге находятся n домов. Дома кольцевой пронумерованы от 1 до n по часовой стрелке, по счастливой случайности движение на кольцевой одностороннее и организовано также по часовой стрелке.

Недавно Ксюша переехала на кольцевую в дом с номером 1. В связи с переездом у нее появилось m дел, чтобы сделать i-ое дело, нужно находиться в доме с номером ai, а также сделать все дела с номерами меньше i. Изначально, Ксюша находится в доме с номером 1, найдите какое минимальное количество времени ей нужно потратить, чтобы выполнить все дела, если на переезд между двумя соседними домами на кольцевой требуется одна единица времени.

Код

#include <bits/stdc++.h>
//  реализация
using namespace std;

int main()
{
    long long n, m, pos = 1, res = 0, temp;
    cin >> n >> m;
    for(int i = 0; i < m; ++i){
        cin >> temp;

        if(temp < pos)
            res+=n - pos + temp;
        else
            res+=temp - pos;
        pos = temp;
    }
    cout << res;
    return 0;
}
//        4 3
//        3 2 3
//        1 2 3

         

 Администратор Photo Автор: Администратор


Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться