编程题
### 问题描述
小蓝是一位天才的油漆艺术家,他最近遇到了一个非常有趣的挑战。在他的工作室里,有一条由 $n$ 个格子组成的长条,每个格子都可以用 $m$ 种不同的颜色之一来涂色。然而,有一点是固定的,第 $1$ 个格子的颜色已经被小蓝选择好了,同样,最后一个格子(第 $n$ 个格子)的颜色也已经确定。
小蓝的任务是给剩下的格子涂色,但有一个重要的规则:相邻的格子不能使用相同的颜色。这使得小蓝的任务变得相当复杂。他想知道,在遵守这个规则的前提下,有多少种不同的涂色方案可以选择,这个答案可能很大,请对 $998244353$ 取模。
你能帮助小蓝解决这个问题吗?
### 输入格式
第一行输入两个整数 $n, m$ ,表示格子数量和可选颜色的数量。
接下来一行输入一个整数 $c_1$ ,表示第 $1$ 个格子的颜色。
接下来一行输入一个整数 $c_n$ ,表示第 $n$ 个格子的颜色。
### 输出格式
输出一个整数,表示在满足相邻格子不相同颜色的情况下,可行的涂色方案数量。
答案对 $998244353$ 取模。
### 样例输入
```
4 3
1
2
```
### 样例输出
```
3
```
### 说明
在上述示例中,共有 $3$ 种颜色可选,第一个格子的颜色已经确定为 $1$ ,最后一个格子的颜色已经确定为 $2$ 。因此,根据相邻格子不能相同颜色的规则,可以有 $3$ 种不同的涂色方案,分别为:$1212$ 、$1232$ 、$1312$ 。
### 评测数据范围
$1 \le n \le 10^5, 1 \le c_1 ,c_n \le m \le 10^2$ 。