测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A9094. Xenia and Ringroad

编程题 普及/提高-

题目描述

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.
上一题 去做题 下一题