2. 环形房间
时间限制:C/C++ 语言 1000MS; 其他语言 3000MS
内存限制:C/C++ 语言 65536KB; 其他语言 589824KB
题目描述:(注:input () 输入函数的括号中不允许添加任何信息)
有 n 个房间围成一圈,形成一个环形结构,房间依次顺时针编号为 1、2、3、..、n (相邻编号的房间相邻,房间 1 和房间 n 也相邻),初始时,小春站在房间 x,小秋站在房间 y。例如,n=8,x=1,y=2,小春和小秋的初始位置,如下图所示:

小春需要先进行若干次移动走到房间 a,然后小秋再进行若干次移动走到房间 b。每次移动只能到达相邻的房间,并且在移动的过程中不能移到另一人所在的房间。现给定五个整数 n、x、y、a、b,请计算小春和小秋分别到达指定房间之后,两人总共最少移动的次数。
搜索微信公众号:冰岩编程,例如,n=8,x=1,y=2,a=3,b=5,移动过程如下:小春先从房间 1 移到房间 3,他至少要移动 6 次

(过程如图);小秋再从房间 2 移到房间 5,他至少要移动 5 次。

最终,小春和小秋总共最少移动的次数为 11 (6+5)。
输入描述:输入五个整数 n、x、y、a、b (4≤n≤1000,1≤x≤n,1≤y≤n,1≤a≤n,1≤b≤n,整数 x、y、a、b 各不相同),分别表示房间数量、小春初始位置、小秋初始位置、小春需要移动到的房间以及小秋需要移动到的房间,整数之间以一个空格隔开。
输出描述:输出一个整数,表示小春和小秋分别到达指定房间之后两人总共最少移动的次数。
样例输入:8 1 2 3 5
样例输出:11
提示:本题共有 10 组测试用例,每通过一组用例得 4 分。