import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/*
思路:
先找出每列中 所有至少连续2个空白被染成红色的数量,保存到数组中
再对每列的数量进行排序,筛选前 k 个
*/
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
char[][] arr = new char[1001][1001]; // 矩阵
while (in.hasNextInt()) { // 注意 while 处理多个 case
List<Integer> column = new ArrayList<>(); // 记录所有连续空白(至少2个) 的数量
int n = in.nextInt(), m = in.nextInt(), k = in.nextInt();
for (int i = 0; i < n; i++) {
arr[i] = in.next().toCharArray();
}
// 按列查找
for (int j = 0; j < m; j++) {
int con_white = 0; // 记录连续的空白
for (int i = 0; i < n; i++) {
if (arr[i][j] == 'o') {
con_white++;
if (i == n - 1 && con_white >= 2) {
column.add(con_white);
}
} else { // 遇到黑色,需要添加到column中,并置0
if (con_white >= 2) {
column.add(con_white);
}
con_white = 0;
}
}
}
// 按从大到小排序
column.sort((num1, num2) -> num2 - num1);
int score = 0, pos = 0;
while (k > 0 && pos < column.size()) {
if (column.get(pos) <= k) { // k 比较大
score += column.get(pos) - 1;
k -= column.get(pos);
pos++;
} else if (column.get(pos) > k && k >= 2) {
score += k - 1;
k = 0;
} else {
k = 0;
}
}
System.out.println(score);
}
}
}