#include #define minimum 0.0000001 #define ld long double using namespace std; char arr[30][30]; long double answer = 0; int n,m,k; map ,pair > mymap; bool isValid(int a, int b){ if(a <= 0 || a > n || b <= 0 || b > m || arr[a][b] == '#') return false; return true; } void bfs(int a, int b, ld prob){ // cout< exit = mymap[make_pair(a,b)]; bfs(exit.first, exit.second, prob); return; } if(arr[a][b] == '%') { // cout<<"Adding "<>n>>m>>k; for (int i = 1; i <= n; ++i) for (int j = 1; j <= m; ++j) cin>>arr[i][j]; for (int i = 0; i < k; ++i) { int i1,j1,i2,j2; cin>>i1>>j1>>i2>>j2; mymap[make_pair(i1,j1)] = make_pair(i2,j2); mymap[make_pair(i2,j2)] = make_pair(i1,j1); arr[i1][j1] = 'T'; arr[i2][j2] = 'T'; } for (int i = 1; i <= n; ++i) for (int j = 1; j <= m; ++j) if(arr[i][j] == 'A') bfs(i,j, 1); cout<