This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <cstdio>
int a[3005][3005];
char str[3005][3005];
int n, m;
long long ret;
int main(){
	scanf("%d %d",&n,&m);
	for(int i=1; i<=n; i++){
		scanf("%s",str[i] + 1);
	}
	for(int i=1; i<=n; i++){
		for(int j=1; j<=m; j++){
			if(str[i][j] == 'B'){
				a[i][j] = 0;
			}
			else{
				a[i][j] = a[i-1][j] + a[i-1][j] - a[i-1][j-1] + 1;
			}
			ret += a[i][j];
		}
	}
	printf("%lld",ret);
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |