#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define fastio() ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
int main() {
fastio();
int t=0;
cin>>t;
while(t--)
{
ll n,m,k,count=0;
cin>>n>>m>>k;
ll arr[n][m];
ll dp[n+1][m+1]={0};
memset(dp,0,sizeof(dp));
for(ll i=0;i<n;i++){
for(ll j=0;j<m;j++){
cin>>arr[i][j];
if(arr[i][j]>=k){
count++;
}
}
}
if(count == n*m){
for(ll i=2; i<=n; i++){
count += (n-i+1)*(m-i+1);
}
cout<<count<<"n";
} else if(count==0){
cout<<"0n";
} else {
for(ll i=1;i<n+1;i++){
for(ll j=1;j<m+1;j++){
dp[i][j]=arr[i-1][j-1]+dp[i-1][j]+dp[i][j-1]-dp[i-1][j-1];
}
}
ll sum=0,p=0;
bool yes=false;
for(ll l=2;l<=n;l++){
yes=false;
for(ll i=1;i<n+1;i++){
yes=false;
for(ll j=1;j<m+1;j++){
yes=false;
if(i-l>=0 && j-l>=0){
//cout<<i-l<<" "<<j-l<<"n";
sum = dp[i][j]-dp[i-l][j]-dp[i][j-l]+dp[i-l][j-l];
// cout<<l<<" "<<sum<<"n";
if((dp[i][m]-dp[i-l][m]-dp[i][m-l]+dp[i-l][m-l])<k*(l*l)){
break;
}
else if(sum/(l*l) >=k && j==1){
count+=(n-i+1)*(m-j+1);
// cout<<n-i+1
yes=true;
break;
} else if(sum/(l*l)>=k && j!=1 ){
count+=m-j+1;
break;
} else {
continue;
}
yes=false;
p=0;
} else if(i-l<0) {
break;
}
}
if(yes){
break;
}
}
}
cout<<count<<"n";
}
}
return 0;
}