Xenia and Ringroad
题意翻译
# 题意
Xenia住在一个城市里,那里所有的房子都是建在一个环线上的,Xenia现在在1号房子里,她有m个任务要完成,并只能按顺时针方向走(房子排列号码也为顺时针递增)。若她要完成第i个任务,她将要走到第ai个房里。请问她要最少要走多少个单位长度?(若两个任务在一个房子里,则可以不走)。
### 输入
第一行2个数:第一个为城市里房子的总个数,第二个为有几个任务。
### 输出
她最少要走的步数。
### 范围
(2<=房子个数<=100000)
(1<=任务数<=100000)
题目描述
Xenia lives in a city that has $ n $ houses built along the main ringroad. The ringroad houses are numbered 1 through $ n $ in the clockwise order. The ringroad traffic is one way and also is clockwise.
Xenia has recently moved into the ringroad house number 1. As a result, she's got $ m $ things to do. In order to complete the $ i $ -th task, she needs to be in the house number $ a_{i} $ and complete all tasks with numbers less than $ i $ . Initially, Xenia is in the house number 1, find the minimum time she needs to complete all her tasks if moving from a house to a neighboring one along the ringroad takes one unit of time.
输入输出格式
输入格式
The first line contains two integers $ n $ and $ m $ $ (2<=n<=10^{5},1<=m<=10^{5}) $ . The second line contains $ m $ integers $ a_{1},a_{2},...,a_{m} $ $ (1<=a_{i}<=n) $ . Note that Xenia can have multiple consecutive tasks in one house.
输出格式
Print a single integer — the time Xenia needs to complete all tasks.
Please, do not use the %lld specifier to read or write 64-bit integers in С++. It is preferred to use the cin, cout streams or the %I64d specifier.
输入输出样例
输入样例 #1
4 3
3 2 3
输出样例 #1
6
输入样例 #2
4 3
2 3 3
输出样例 #2
2
说明
In the first test example the sequence of Xenia's moves along the ringroad looks as follows: $ 1→2→3→4→1→2→3 $ . This is optimal sequence. So, she needs 6 time units.