#P15527. [ROIR 2015 Day 2] circle 环形线路

[ROIR 2015 Day 2] circle 环形线路

说明

在安德烈和博里斯生活的城市,地铁由一条唯一的环形线路组成,沿着这条线路,nn 个车站按相等距离排列,编号从1到 nn。两个相邻车站之间的路段称为区间。

环形线路的列车可以顺时针或逆时针行驶,因此,为了从一个车站到另一个车站,乘客可以选择经过较少区间的方向。为了从一个车站到另一个车站所需的最少区间数,称为两车站之间的距离。

朋友们注意到,满足以下条件:如果指定一个车站 XX,并列出两个数字:DaD_a —— 从安德烈住的车站到车站 XX 的距离,DbD_b —— 从博里斯住的车站到车站 XX 的距离,那么得到的数字对 [Da,Db][D_a, D_b] 将唯一地确定车站 XX

例如,如果 n=4n = 4,安德烈住在车站 11,博里斯住在车站 22,那么车站 11[0,1][0, 1] 来表示,车站 22[1,0][1, 0] 表示,车站 33[2,1][2, 1] 表示,车站 44[1,2][1, 2] 表示。

他们的同学谢尔盖住在邻近的城市,且不知道安德烈和博里斯住在哪些车站。为了找到朋友们,他对有多少对车站 A,BA, B 感兴趣,如果安德烈住在车站 AA,博里斯住在车站 BB,能满足上述条件。

任务:编写一个程序,根据环形线路上的车站数 nn,确定符合条件的车站对的数量。

输入格式

输入文件的第一行包含一个整数 nn (3n40,0003 \leq n \leq 40,000)。

输出格式

输出文件应该包含一个整数 —— 求得的车站对的数量。

4
8
5
20

提示

示例说明

在第一个例子中,符合条件的车站对如下:

  • 安德烈住在车站 11,博里斯住在车站 22
  • 安德烈住在车站 11,博里斯住在车站 44
  • 安德烈住在车站 22,博里斯住在车站 11
  • 安德烈住在车站 22,博里斯住在车站 33
  • 安德烈住在车站 33,博里斯住在车站 22
  • 安德烈住在车站 33,博里斯住在车站 44
  • 安德烈住在车站 44,博里斯住在车站 11
  • 安德烈住在车站 44,博里斯住在车站 33

评分系统与子任务描述

子任务 1(25 分)

3n503 \leq n \leq 50

子任务 2(25 分)

3n5003 \leq n \leq 500

子任务 3(50 分)

3n40,0003 \leq n \leq 40,000

翻译来源:GPT 5.2。