검은색 아니면 흰색

B/W로 칠해진 시작 배열 s를 목표 배열 t로 바꾸는 데 필요한 최소 붓칠 횟수를 구한다. 한 번의 붓칠은 연속한 최대 k개의 벽돌을 한 가지 색으로 칠한다.

보통7동적 계획법그리디배열구현아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

벽돌 nn개가 한 줄로 놓여 있다. 벽돌은 저마다 검은색이거나 흰색이다. 붓질 한 번은 줄에서 연속한 구간을 한 가지 색으로 덮는다. 흰 물감으로 칠하면 그 구간의 벽돌이 모두 흰색이 되고, 검은 물감으로 칠하면 모두 검은색이 된다. 붓에 한 번에 담기는 물감의 양이 정해져 있어서 붓질 한 번으로 칠하는 벽돌은 연속한 kk개까지다. 그 한도 안에서는 어느 위치에서 시작해도 되고 어느 색을 써도 된다.

예를 들어 벽돌 네 개가 검은색, 흰색, 흰색, 검은색이고 이를 흰색, 검은색, 검은색, 흰색으로 바꾸려 한다고 하자. k=4k = 4이면 붓질 두 번으로 끝난다. 먼저 네 개를 모두 흰색으로 칠하고, 이어서 가운데 두 개를 검은색으로 칠하면 된다.

처음 줄을 원하는 줄로 바꾸는 데 필요한 붓질의 최소 횟수를 구하라. 물감 값은 생각하지 않는다.

입력

입력은 테스트 케이스 하나로 이루어지며 형식은 다음과 같다.

n k
s
t

첫째 줄에 정수 nnkk가 주어진다 (1kn5000001 \le k \le n \le 500\,000). nn은 줄에 놓인 벽돌의 개수이고, kk는 붓질 한 번으로 칠하는 벽돌의 최대 개수이다. 둘째 줄에 처음 색을 나타내는 길이 nn의 문자열 ss가 주어진다. 셋째 줄에 원하는 색을 나타내는 길이 nn의 문자열 tt가 주어진다. sstt의 문자는 모두 검은색을 뜻하는 B이거나 흰색을 뜻하는 W이다.

출력

벽돌을 원하는 색으로 바꾸는 데 필요한 붓질의 최소 횟수를 출력한다.