HAM12 - VOI 2012 Khoảng cách Hamming

Tác giả: happyboy99x

Ngôn ngữ: C++

#include<cstdio>
#include<cstring>

int m, n, k;
char t[1001], s[2001];

int main() {
	scanf("%d%d%d%s", &n, &m, &k, s);
	for(int i = 0; i < n; ++i) s[n+i] = s[i]; s[n+n] = '\0';
	int res = m;
	while(k--) {
		scanf("%s", t);
		for(int i = 0; i < n; ++i) {
			int tmp = 0;
			for(int p1 = i, p2 = 0; p2 < m && tmp < res; tmp += s[p1++] != t[p2++]);
			res = tmp;
		}
	}
	printf("%d\n", res);
	return 0;
}

Download