fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <utility>
  4. #include <math.h>
  5. using namespace std;
  6.  
  7. string s[185];
  8. int n,m;
  9.  
  10. int main(){
  11. int t; cin>>t;
  12. while (t--){
  13. vector<pair<int,int>> v;
  14. cin>>n>>m;
  15. for (int i = 0; i < n; i++){
  16. cin>>s[i];
  17. for (int j = 0; j < m; j++){
  18. if (s[i][j] == '1') v.push_back({i+1,j+1});
  19. }
  20. }
  21. for (int i = 0; i < n; i++){
  22. for (int j = 0; j < m; j++){
  23. if (s[i][j] == '1'){cout<<"0"<<" "; continue;}
  24. int mn = 200000;
  25. for (int k = 0; k < v.size(); k++){
  26. int wi = v[k].first, wj = v[k].second;
  27. int d = abs(i+1-wi) + abs(j+1-wj);
  28. mn = min(d,mn);
  29. }
  30. cout<<mn<<" ";
  31. }
  32. cout<<"\n";
  33. }
  34. }
  35. }
  36.  
  37.  
Success #stdin #stdout 0.01s 5512KB
stdin
Standard input is empty
stdout
Standard output is empty