Problem:
Score : 300 points

Problem Statement

Given is a string S. Let T be the concatenation of K copies of S.
We can repeatedly perform the following operation: choose a character in T and replace it with a different character.
Find the minimum number of operations required to satisfy the following condition: any two adjacent characters in T are different.

Constraints

1 \leq |S| \leq 100

S consists of lowercase English letters.

1 \leq K \leq 10^9

K is an integer.

Input

Input is given from Standard Input in the following format:

S
K

Output

Print the minimum number of operations required.

Sample Input 1

issii
2

Sample Output 1

4

T is issiiissii. For example, we can rewrite it into ispiqisyhi, and now any two adjacent characters are different.

Sample Input 2

qq
81

Sample Output 2

81

Sample Input 3

cooooooooonteeeeeeeeeest
999993333

Sample Output 3

8999939997

Solution in Lua (Lua 5.3.5) (judge verdict: Accepted)

local s = io.read()
local k = io.read("*n")
local t = {}
local left = 1
for i = 2, #s do
  if s:byte(i) ~= s:byte(left) then
    table.insert(t, i - left)
    left = i
  end
end
table.insert(t, #s + 1 - left)
if #t == 1 then
  local tot = k * #s
  print(tot // 2)
elseif s:byte(1, 1) == s:byte(#s, #s) then
  local first = t[1]
  local last = t[#t]
  local ret = 0
  for i = 2, #t - 1 do
    ret = ret + t[i] // 2
  end
  ret = ret * k + first // 2 + last // 2
  ret = ret + ((first + last) // 2) * (k - 1)
  print(ret)
else
  local ret = 0
  for i = 1, #t do
    ret = ret + t[i] // 2
  end
  print(ret * k)
end