感觉思路没错,请大佬救救蒟蒻……
#include<bits/stdc++.h>
using namespace std;
int n,m,k,ans;
char a[121][121];
bool vis[121][121];
int main(){
memset(a,'-',sizeof(a));
cin>>n>>m>>k;
for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) cin>>a[i+10][j+10];
/*for(int i=1;i<=20;i++){
for(int j=1;j<=20;j++) cout<<a[i][j];
cout<<endl;
}
cout<<endl;*/
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(a[i+10][j+10]=='#'){
vis[i+10][j+10]=false;
for(int t=i+10-k;t<=i+10+k;t++) if(a[t][j+10]!='#') vis[t][j+10]=true;
for(int t=j+10-k;t<=j+10+k;t++) if(a[i+10][t]!='#') vis[i+10][t]=true;
}
}
}
/*for(int i=1;i<=20;i++){
for(int j=1;j<=20;j++){
if(vis[i][j]) cout<<'@';
else cout<<'-';
}
cout<<endl;
}*/
for(int i=1;i<=120;i++) for(int j=1;j<=120;j++) if(vis[i][j]) ans++;
cout<<ans;
}