#arc0202. [arc020_2]縞模様

[arc020_2]縞模様

问题描述

小学生高橋君非常喜欢条纹图案。现在,高橋君正欣赏着一排从左到右排列的 nn 张彩色纸。由于高橋君非常喜欢条纹图案,他希望通过用绘画颜料将其中几张彩色纸涂成新的颜色,使整体呈现出条纹图案的效果。

整体呈现条纹图案指的是,所使用的颜色恰好为 22 种,对于每张彩色纸及其相邻彩色纸来说,它们的颜色是不同的。

你的任务是编写一个程序,给定已经排列好的彩色纸的数量 nn 和用于将一张彩色纸涂成另一种颜色所需的绘画颜料费用 cc,输出实现条纹图案所需的最小总费用。在这个问题中,为了方便起见,每种颜色都用 1110101010 种数字表示。而用于涂色的绘画颜料颜色也仅限于这 1010 种。


输入

输入通过标准输入给出,具体格式如下:

n cn c a1a_1 a2a_2 : ana_n

  • 11 行包含 22 个整数,分别表示彩色纸的数量 n(2n100)n (2 ≦ n ≦ 100) 和涂成另一种颜色所需的绘画颜料费用 c(1c1000)c (1 ≦ c ≦ 1000)
  • 22 行到第 nn 行,每行包含一个已排列好的彩色纸的颜色。其中,第 ii 行表示从左到右排列的彩色纸中的第 ii 张纸的颜色,表示为整数 ai(1ai10)a_i (1 ≦ a_i ≦ 10)

输出

输出实现条纹图案所需的最小总费用,以一行输出。输出末尾换行。


输入示例1


3 10
3
2
1

输出示例1


10

涂色的顺序是从左到右依次为 3,2,13,2,1。将第 11 张纸的颜色从「3」改为「1」,得到 1,2,11,2,1。同时,将第 33 张纸的颜色从「1」改为「3」,得到 3,2,33,2,3

这两种情况都实现了条纹图案,并且两种情况下均需要涂改 11 张彩色纸,总费用是 1010。因此,应输出 1010


输入示例2


4 100
1
1
1
1

输出示例2


200

输入示例3


10 1000
1
2
3
4
5
6
7
8
9
10

输出示例3


8000