QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#90610#5112. Where Am I?_skb_AC ✓42ms13172kbC++174.6kb2023-03-23 23:29:482023-03-23 23:29:49

Judging History

你现在查看的是最新测评结果

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-03-23 23:29:49]
  • 评测
  • 测评结果:AC
  • 用时:42ms
  • 内存:13172kb
  • [2023-03-23 23:29:48]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;

using i64 = long long;
using u64 = unsigned long long;

struct debug {
#define contPrint { *this << "["; \
        int f = 0; for(auto it : x) { *this << (f?", ":""); *this << it; f = 1;} \
        *this << "]"; return *this;}
 
    ~debug(){cerr << endl;}
    template<class c> debug& operator<<(c x) {cerr << x; return *this;}
    template<class c, class d>
    debug& operator<<(pair<c, d> x) {*this << "(" << x.first << ", " << x.second << ")"; 
        return *this;}
    template<class c> debug& operator<<(vector<c> x) contPrint;
#undef contPrint
};

#define dbg(x) "[" << #x << ": " << x << "]  "
#define Wa() cerr << "[LINE: " << __LINE__ << "] -> "; debug() << 
#define FASTIO ios_base::sync_with_stdio(false); cin.tie(NULL);

vector<tuple<vector<int>, int, int>> cells;
int tot = 0;
vector<pair<int, int>> ans;
int mx = 0;

int DY;

void f(int l, int r, int idx, int pmx)
{
    if(r == l) {
        int cur = get<0>(cells[l])[idx-1];
        int x = get<1>(cells[l]);
        int y = get<2>(cells[l]);

        if(cur > pmx) cur = pmx;

        if(cur > mx) {
            ans.clear();
            ans.push_back({x + 1, DY - y});
            mx = cur;
        } else if(cur == mx) {
            ans.push_back({x + 1, DY - y});
        }

        tot += cur;

        // Wa() dbg(l) dbg(r) dbg(x) dbg(y) dbg(cur) dbg(pmx) dbg(get<0>(cells[l]));

        return;
    }

    for(int i = l; i <= r; ) {
        int nl = i;
        while(i <= r && get<0>(cells[i])[idx] == get<0>(cells[nl])[idx]) {
            i++;
        }
        int npmx = get<0>(cells[r])[idx];

        if(i > r) {
            npmx = get<0>(cells[max(l, r - 1)])[idx];
        }
        // Wa() dbg(npmx);

        f(nl, i - 1, idx + 1, npmx);
    }
}

int main() 
{
    int dx, dy;
    scanf("%d %d", &dx, &dy);
    DY = dy;

    vector<pair<int, int>> pos;
    char grid[dy][dx];
    for(int i = 0; i < dy; i++) {
        for(int j = 0; j < dx; j++) {
            scanf(" %c", &grid[i][j]);
            if(grid[i][j] == 'X') {
                pos.push_back({j, i});
            }
        }
    }

    vector<i64> sum(105);
    sum[0] = 1;
    for(int i = 1; i < 105; i++) {
        sum[i] = sum[i-1] + 2 * i * 4;
    }

    auto inside = [] (int x, int y, int lx, int ly, int rx, int ry) {
        return x >= lx && x <= rx && y >= ly && y <= ry;
    };

    vector<int> seq[dx][dy];
    for(int y = 0; y < dy; y++) {
        for(int x = 0; x < dx; x++) {
            for(auto [px, py] : pos) {
                int m = max(abs(px - x), abs(py - y));
                if(m == 0) seq[x][y].push_back(0);
                else {
                    int cell = sum[m-1];
                    if(inside(px, py, x - m + 1, y - m, x + m, y - m)) {
                        cell += (px - (x - m + 1));

                    } else if(inside(px, py, x + m, y - m + 1, x + m, y + m)) {
                        cell += 2 * m + py - (y - m + 1);

                    } else if(inside(px, py, x - m, y + m, x + m - 1, y + m)) {
                        cell += 4 * m + abs(px - (x + m - 1));

                    } else if(inside(px, py, x - m, y - m, x - m, y + m - 1)) {
                        cell += 6 * m + abs(py - (y + m - 1));

                    } else {
                        assert(false);
                    }
                    seq[x][y].push_back(cell);
                }
            }
            sort(seq[x][y].begin(), seq[x][y].end());
            cells.push_back({seq[x][y], x, y});

            // printf("%d %d: ", x, y);
            // for(int i : seq[x][y]) {
            //     printf("%d ", i);
            // }
            // puts("");
        }
    }
    sort(cells.begin(), cells.end(), [&] (auto& a, auto& b) {
            for(int i = 0; i < (int)pos.size(); i++) {
                if(get<0>(a)[i] < get<0>(b)[i]) {
                    return true;
                }
                if(get<0>(a)[i] > get<0>(b)[i]) {
                    return false;
                }
            }
            return true;
        });

    // for(auto it : cells) {
    //     Wa() dbg(get<0>(it));
    // }

    f(0, (int)cells.size() - 1, 0, 0);

    sort(ans.begin(), ans.end(), [] (auto a, auto b) {
                return (a.second < b.second) || (a.second == b.second && a.first < b.first);
            });

    printf("%.3lf\n", 1.0 * tot / (dx * dy));
    printf("%d\n", mx);
    for(int i = 0; i < (int)ans.size(); i++) {
        if(i) printf(" ");
        printf("(%d,%d)", ans[i].first, ans[i].second);
    }
    puts("");
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3596kb

input:

1 1
X

output:

0.000
0
(1,1)

result:

ok correct!

Test #2:

score: 0
Accepted
time: 2ms
memory: 3624kb

input:

2 1
.X

output:

0.000
0
(1,1) (2,1)

result:

ok correct!

Test #3:

score: 0
Accepted
time: 2ms
memory: 3604kb

input:

2 1
X.

output:

0.000
0
(1,1) (2,1)

result:

ok correct!

Test #4:

score: 0
Accepted
time: 2ms
memory: 3608kb

input:

1 2
.
X

output:

0.000
0
(1,1) (1,2)

result:

ok correct!

Test #5:

score: 0
Accepted
time: 2ms
memory: 3512kb

input:

1 2
X
.

output:

0.000
0
(1,1) (1,2)

result:

ok correct!

Test #6:

score: 0
Accepted
time: 2ms
memory: 3552kb

input:

2 1
XX

output:

3.000
3
(1,1) (2,1)

result:

ok correct!

Test #7:

score: 0
Accepted
time: 2ms
memory: 3616kb

input:

3 3
XXX
X.X
XXX

output:

3.111
5
(3,1) (3,2)

result:

ok correct!

Test #8:

score: 0
Accepted
time: 18ms
memory: 12300kb

input:

100 100
..X....X....X....X....X....X....X....X....X....X....X....X....X....X....X....X....X....X....X....X..
....................................................................................................
X............................................................................................

output:

4757.947
9704
(50,1) (50,100)

result:

ok correct!

Test #9:

score: 0
Accepted
time: 2ms
memory: 4488kb

input:

100 100
X...................................................................................................
....................................................................................................
.............................................................................................

output:

19735.320
39599
(100,1) (100,2)

result:

ok correct!

Test #10:

score: 0
Accepted
time: 5ms
memory: 4488kb

input:

100 100
....................................................................................................
....................................................................................................
.............................................................................................

output:

19865.670
39500
(100,1) (100,2)

result:

ok correct!

Test #11:

score: 0
Accepted
time: 31ms
memory: 13092kb

input:

100 100
X...................................................................................................
.X..................................................................................................
..X..........................................................................................

output:

11855.639
39302
(100,99) (99,100)

result:

ok correct!

Test #12:

score: 0
Accepted
time: 29ms
memory: 13172kb

input:

100 100
...................................................................................................X
..................................................................................................X.
.............................................................................................

output:

11854.610
39104
(1,99) (2,100)

result:

ok correct!

Test #13:

score: 0
Accepted
time: 6ms
memory: 5104kb

input:

20 73
...........X........
.X..................
....................
X.....X........X....
......X........X....
....................
....................
.X..................
....................
...........X........
.X..................
X...................
.......X........X...
.X....X........X....
...

output:

50.098
80
(7,6) (16,6) (20,12) (7,15) (16,15) (7,24) (16,24) (7,33) (16,33) (7,42) (16,42) (19,46) (12,47) (20,47) (7,51) (16,51) (12,56) (19,56) (7,60) (16,60) (20,65) (20,67) (7,69) (16,69)

result:

ok correct!

Test #14:

score: 0
Accepted
time: 16ms
memory: 6888kb

input:

65 57
..............X..................................................
.................................................................
.........................................................X.......
........X.........X..............................................
..X.....X........................

output:

100.711
742
(1,1) (2,1)

result:

ok correct!

Test #15:

score: 0
Accepted
time: 3ms
memory: 4044kb

input:

56 59
........................................................
........................................................
........................................................
........................................................
........................................................
X...........

output:

494.498
1503
(56,38) (56,39)

result:

ok correct!

Test #16:

score: 0
Accepted
time: 5ms
memory: 6932kb

input:

46 83
..........X...X.................X.............
..............................X...............
...X..........................................
.....................................X........
...X...........................X...X..........
.X............................................
...............

output:

122.545
387
(1,19) (19,32)

result:

ok correct!

Test #17:

score: 0
Accepted
time: 10ms
memory: 5940kb

input:

51 57
........................X..........................
............................X......................
....................X.............X................
..................................................X
...................................................
.........................X...........

output:

103.487
334
(10,57) (11,57)

result:

ok correct!

Test #18:

score: 0
Accepted
time: 0ms
memory: 5388kb

input:

64 91
................................................................
................................................................
................................................................
................................................................
.....................................

output:

480.573
1215
(64,71) (63,91)

result:

ok correct!

Test #19:

score: 0
Accepted
time: 13ms
memory: 6396kb

input:

75 40
.............................................X............X................
....................X..............................X.......................
...........................................X...........X...........X.......
...........................................X.....X......X............

output:

79.149
319
(1,39) (1,40)

result:

ok correct!

Test #20:

score: 0
Accepted
time: 11ms
memory: 6420kb

input:

97 54
.............X...................................................................................
..................................X..............................................................
....X............................................................................................
...

output:

383.808
1084
(93,9) (51,51)

result:

ok correct!

Test #21:

score: 0
Accepted
time: 6ms
memory: 5908kb

input:

89 49
...............X...........X.............................................................
.............................................................X..X...........X............
.................................X.......................................................
...........................

output:

161.070
520
(89,1) (2,41)

result:

ok correct!

Test #22:

score: 0
Accepted
time: 11ms
memory: 5884kb

input:

80 55
.............................................................X..................
................................................................................
.................................................................XX.............
..............................................X.......

output:

176.083
611
(80,2) (79,37)

result:

ok correct!

Test #23:

score: 0
Accepted
time: 6ms
memory: 4692kb

input:

61 59
...........X.................................................
.............................................................
.......................................................X.....
.............................................................
...............................X.................

output:

291.706
860
(1,1) (1,50)

result:

ok correct!

Test #24:

score: 0
Accepted
time: 8ms
memory: 5448kb

input:

48 74
....X.X.X.......................................
...............X.....X...X......................
..........................................X.....
................................................
................................................
.......X........................................
...

output:

152.162
512
(48,9) (48,67)

result:

ok correct!

Test #25:

score: 0
Accepted
time: 42ms
memory: 12788kb

input:

100 96
.................................................................X..................................
.............................X......................................................................
..............................................................................................

output:

212.396
1031
(1,67) (1,68)

result:

ok correct!

Test #26:

score: 0
Accepted
time: 15ms
memory: 7732kb

input:

94 84
..............................................................................................
..............................................................................................
..............................................................................................
............

output:

357.121
2687
(1,83) (1,84)

result:

ok correct!

Test #27:

score: 0
Accepted
time: 25ms
memory: 9344kb

input:

86 80
...........................................................X..........X...............
......................................................................................
X.....................................................................................
....................................

output:

225.856
975
(84,1) (85,1)

result:

ok correct!

Test #28:

score: 0
Accepted
time: 14ms
memory: 7696kb

input:

81 57
.X............X..................................................................
.................................................................................
.....................................X.........X.............X...................
...................................................

output:

139.734
647
(24,1) (81,4)

result:

ok correct!

Test #29:

score: 0
Accepted
time: 10ms
memory: 6320kb

input:

65 85
.................................................................
.................................................................
.................................................................
...................X.............................................
.................................

output:

738.974
3378
(5,45) (5,56)

result:

ok correct!

Test #30:

score: 0
Accepted
time: 0ms
memory: 4808kb

input:

76 98
............................................................................
............................................................................
............................................................................
..................................................................

output:

1550.391
4192
(76,34) (76,96)

result:

ok correct!

Test #31:

score: 0
Accepted
time: 5ms
memory: 4356kb

input:

62 67
..............................................................
..............................................................
.........................X....................................
...................................................X..........
.............................................

output:

648.650
2420
(16,1) (1,13)

result:

ok correct!

Test #32:

score: 0
Accepted
time: 8ms
memory: 7800kb

input:

50 98
..........................................X.......
.................................X...............X
..................................................
..................................................
.............................................X....
..........................................

output:

207.338
895
(1,97) (1,98)

result:

ok correct!

Test #33:

score: 0
Accepted
time: 25ms
memory: 10308kb

input:

74 97
....................X.....................................................
..........................................................................
..........................................................................
................................X.......................................

output:

193.030
1078
(74,70) (71,93)

result:

ok correct!

Test #34:

score: 0
Accepted
time: 4ms
memory: 4164kb

input:

62 77
..............................................................
..............................................................
..............................................................
..............................................................
.............................................

output:

2021.070
4937
(46,73) (8,77)

result:

ok correct!

Test #35:

score: 0
Accepted
time: 9ms
memory: 5428kb

input:

47 74
...............................................
...............................................
...............................................
.....................X.........................
...............................................
............................................X..
.........

output:

142.154
673
(1,74) (2,74)

result:

ok correct!

Test #36:

score: 0
Accepted
time: 11ms
memory: 6488kb

input:

47 71
...........X....X..............................
...............................................
...............................................
...........X...................................
.............................................X.
..X...........XX............X..................
.........

output:

102.814
334
(44,4) (47,37)

result:

ok correct!

Test #37:

score: 0
Accepted
time: 14ms
memory: 6788kb

input:

51 65
.........X..........X..............................
.................................X....X.........X..
................................................X..
...................................................
...................................................
.....................................

output:

81.670
314
(1,64) (1,65)

result:

ok correct!

Test #38:

score: 0
Accepted
time: 0ms
memory: 4660kb

input:

40 93
.......X................................
........................................
........................................
........................................
.X......................................
..................X.....................
........................................
..........

output:

300.308
1326
(39,93) (40,93)

result:

ok correct!

Test #39:

score: 0
Accepted
time: 18ms
memory: 10680kb

input:

87 99
.......................................................................................
.......................................................................................
.......................................................................................
.................................

output:

474.069
2063
(1,1) (49,1)

result:

ok correct!

Test #40:

score: 0
Accepted
time: 0ms
memory: 4020kb

input:

46 94
..............................................
..............................................
..............................................
..............................................
..............................................
..............................................
...............

output:

2555.367
5914
(46,1) (46,2)

result:

ok correct!

Test #41:

score: 0
Accepted
time: 0ms
memory: 4236kb

input:

93 60
.............................................................................................
.............................................................................................
.............................................................................................
...............

output:

2389.200
11288
(21,60) (22,60)

result:

ok correct!

Test #42:

score: 0
Accepted
time: 18ms
memory: 8424kb

input:

98 61
.............................................X................................X...................
...................................................................X.............X................
..................................................................................X................

output:

225.089
803
(10,61) (11,61)

result:

ok correct!

Test #43:

score: 0
Accepted
time: 28ms
memory: 11620kb

input:

94 95
..............................................................................................
.......................................................X......................................
............X................................................X.......................X........
............

output:

213.688
941
(33,89) (33,90)

result:

ok correct!

Test #44:

score: 0
Accepted
time: 8ms
memory: 7164kb

input:

94 72
..............................................................................................
..............................................................................................
..............................................................................................
............

output:

1330.090
4671
(60,71) (38,72)

result:

ok correct!

Test #45:

score: 0
Accepted
time: 4ms
memory: 5420kb

input:

46 44
....X...X..............................X...X..
................................X..X......X...
..............X.........X.....................
......................X...........X...........
......................X.X........X.X...X......
.............X..........X.....................
.X.............

output:

67.355
645
(1,1) (2,1)

result:

ok correct!

Test #46:

score: 0
Accepted
time: 12ms
memory: 6740kb

input:

65 51
.................................................................
.........................X.......................................
........X..............X.........................................
....X...............X............................................
.................................

output:

80.041
332
(64,34) (65,34)

result:

ok correct!

Test #47:

score: 0
Accepted
time: 16ms
memory: 7544kb

input:

51 82
...................................................
...............X...........X.........X.............
..............................X....................
...................................................
...................................................
.......................X.............

output:

100.466
360
(49,3) (51,62)

result:

ok correct!

Test #48:

score: 0
Accepted
time: 5ms
memory: 6092kb

input:

87 60
.......................................................................................
........................................................................X..............
.......................................................................................
.................................

output:

302.790
799
(87,29) (87,58)

result:

ok correct!

Test #49:

score: 0
Accepted
time: 5ms
memory: 4636kb

input:

53 44
...................................X.................
.....................................................
............................X....X...................
...X.................................................
.....................................................
....................X......

output:

150.347
930
(52,44) (53,44)

result:

ok correct!

Test #50:

score: 0
Accepted
time: 14ms
memory: 8120kb

input:

94 97
..............................................................................................
.......................................X......................X...............................
..............................................................................................
............

output:

690.646
3826
(1,96) (1,97)

result:

ok correct!

Test #51:

score: 0
Accepted
time: 11ms
memory: 6088kb

input:

70 68
......................................................................
.....................X...........................X....................
........X...........................X...........................X.....
......................................................................
.............

output:

356.975
1620
(23,68) (51,68)

result:

ok correct!

Test #52:

score: 0
Accepted
time: 9ms
memory: 5720kb

input:

100 91
....................................................................................................
....................................................................................................
..............................................................................................

output:

1705.102
4664
(100,44) (100,90)

result:

ok correct!

Test #53:

score: 0
Accepted
time: 5ms
memory: 4372kb

input:

88 84
........................................................................................
........................................................................................
........................................................................................
..............................

output:

2976.142
8305
(68,1) (69,1)

result:

ok correct!

Test #54:

score: 0
Accepted
time: 4ms
memory: 4492kb

input:

48 44
................................................
................................................
..........X...........X.........................
...X............................................
...........................X....................
.........X......................................
...

output:

140.188
466
(8,7) (1,20)

result:

ok correct!

Test #55:

score: 0
Accepted
time: 21ms
memory: 8932kb

input:

98 60
......................................X.....X.....................................................
......................................X..............................X............................
............X......................................................X...............................

output:

179.279
713
(98,56) (98,57)

result:

ok correct!

Test #56:

score: 0
Accepted
time: 9ms
memory: 5544kb

input:

58 41
...............................X...............X..........
..X..................X....X...............................
..........................................................
.....................X.............................X......
..............................X.................X............

output:

75.130
228
(2,1) (49,27)

result:

ok correct!

Test #57:

score: 0
Accepted
time: 15ms
memory: 7796kb

input:

95 48
....X.......X.......................X..............X........................X...........X......
........X...............................X...............................X......................
........................XX...............................X.....................................
.........

output:

115.941
390
(15,48) (79,48)

result:

ok correct!

Test #58:

score: 0
Accepted
time: 10ms
memory: 6196kb

input:

51 62
...................................................
..............................X.........X..........
................................................X..
.......................X...........................
..............................................X....
.....................................

output:

127.050
432
(7,1) (51,6)

result:

ok correct!

Test #59:

score: 0
Accepted
time: 33ms
memory: 11404kb

input:

86 98
.......X......X.......................................................................
......................................................................................
......................................................................................
....................................

output:

215.501
732
(66,70) (68,72)

result:

ok correct!

Test #60:

score: 0
Accepted
time: 15ms
memory: 8084kb

input:

91 94
...........................................................................................
...........................................................................................
...........................................................................................
.....................

output:

309.110
1541
(78,1) (90,8)

result:

ok correct!

Test #61:

score: 0
Accepted
time: 8ms
memory: 5264kb

input:

74 45
..........................................................................
..........................................................................
....X.............X..........................................X............
.X................X..........................X............X.............

output:

164.878
772
(1,7) (1,8)

result:

ok correct!

Test #62:

score: 0
Accepted
time: 9ms
memory: 7092kb

input:

54 73
.....X.......X........................................
.............X........................................
...............X......................................
................................X.....................
..............................................X.......
......................

output:

106.013
560
(1,1) (1,2)

result:

ok correct!

Test #63:

score: 0
Accepted
time: 13ms
memory: 8248kb

input:

91 56
...........................................................................................
..............................X.............................X..............................
.....................................................................X.....................
.....................

output:

423.715
1455
(63,19) (24,20)

result:

ok correct!

Test #64:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

1 2
X
X

output:

1.000
1
(1,1) (1,2)

result:

ok correct!

Test #65:

score: 0
Accepted
time: 2ms
memory: 3596kb

input:

1 3
X
.
.

output:

0.667
1
(1,1) (1,2)

result:

ok correct!

Test #66:

score: 0
Accepted
time: 0ms
memory: 3624kb

input:

1 3
.
X
.

output:

0.667
1
(1,1) (1,3)

result:

ok correct!

Test #67:

score: 0
Accepted
time: 2ms
memory: 3608kb

input:

1 3
X
X
.

output:

0.667
1
(1,2) (1,3)

result:

ok correct!

Test #68:

score: 0
Accepted
time: 2ms
memory: 3520kb

input:

1 3
.
.
X

output:

3.333
5
(1,2) (1,3)

result:

ok correct!

Test #69:

score: 0
Accepted
time: 2ms
memory: 3600kb

input:

1 3
X
.
X

output:

6.667
10
(1,1) (1,3)

result:

ok correct!

Test #70:

score: 0
Accepted
time: 0ms
memory: 3516kb

input:

1 3
.
X
X

output:

0.667
1
(1,1) (1,2)

result:

ok correct!

Test #71:

score: 0
Accepted
time: 0ms
memory: 3600kb

input:

1 3
X
X
X

output:

3.667
5
(1,1) (1,2)

result:

ok correct!

Test #72:

score: 0
Accepted
time: 1ms
memory: 3648kb

input:

1 4
X
.
.
.

output:

5.250
10
(1,1) (1,2)

result:

ok correct!

Test #73:

score: 0
Accepted
time: 0ms
memory: 3552kb

input:

1 4
.
X
.
.

output:

2.750
5
(1,1) (1,4)

result:

ok correct!

Test #74:

score: 0
Accepted
time: 0ms
memory: 3604kb

input:

1 4
X
X
.
.

output:

1.000
1
(1,1) (1,2) (1,3) (1,4)

result:

ok correct!

Test #75:

score: 0
Accepted
time: 1ms
memory: 3516kb

input:

1 4
.
.
X
.

output:

2.750
5
(1,3) (1,4)

result:

ok correct!

Test #76:

score: 0
Accepted
time: 2ms
memory: 3596kb

input:

1 4
X
.
X
.

output:

7.500
10
(1,2) (1,4)

result:

ok correct!

Test #77:

score: 0
Accepted
time: 2ms
memory: 3476kb

input:

1 4
.
X
X
.

output:

1.000
1
(1,1) (1,2) (1,3) (1,4)

result:

ok correct!

Test #78:

score: 0
Accepted
time: 0ms
memory: 3664kb

input:

1 4
X
X
X
.

output:

2.750
5
(1,2) (1,3)

result:

ok correct!

Test #79:

score: 0
Accepted
time: 0ms
memory: 3516kb

input:

1 4
.
.
.
X

output:

10.250
18
(1,3) (1,4)

result:

ok correct!

Test #80:

score: 0
Accepted
time: 2ms
memory: 3476kb

input:

1 4
X
.
.
X

output:

14.000
27
(1,1) (1,4)

result:

ok correct!

Test #81:

score: 0
Accepted
time: 1ms
memory: 3584kb

input:

1 4
.
X
.
X

output:

5.500
10
(1,1) (1,3)

result:

ok correct!

Test #82:

score: 0
Accepted
time: 0ms
memory: 3600kb

input:

1 4
X
X
.
X

output:

2.750
5
(1,1) (1,4)

result:

ok correct!

Test #83:

score: 0
Accepted
time: 1ms
memory: 3620kb

input:

1 4
.
.
X
X

output:

3.000
5
(1,3) (1,4)

result:

ok correct!

Test #84:

score: 0
Accepted
time: 2ms
memory: 3680kb

input:

1 4
X
.
X
X

output:

2.750
5
(1,2) (1,4)

result:

ok correct!

Test #85:

score: 0
Accepted
time: 2ms
memory: 3620kb

input:

1 4
.
X
X
X

output:

2.750
5
(1,1) (1,2)

result:

ok correct!

Test #86:

score: 0
Accepted
time: 2ms
memory: 3624kb

input:

1 4
X
X
X
X

output:

6.500
10
(1,2) (1,3)

result:

ok correct!

Test #87:

score: 0
Accepted
time: 1ms
memory: 3620kb

input:

2 2
X.
..

output:

3.750
7
(2,1) (2,2)

result:

ok correct!

Test #88:

score: 0
Accepted
time: 2ms
memory: 3600kb

input:

2 2
.X
..

output:

1.250
2
(1,1) (1,2)

result:

ok correct!

Test #89:

score: 0
Accepted
time: 2ms
memory: 3620kb

input:

2 2
XX
..

output:

2.500
3
(1,2) (2,2)

result:

ok correct!

Test #90:

score: 0
Accepted
time: 2ms
memory: 3592kb

input:

2 2
..
X.

output:

4.250
6
(2,1) (2,2)

result:

ok correct!

Test #91:

score: 0
Accepted
time: 1ms
memory: 3604kb

input:

2 2
X.
X.

output:

3.500
6
(2,1) (2,2)

result:

ok correct!

Test #92:

score: 0
Accepted
time: 1ms
memory: 3508kb

input:

2 2
.X
X.

output:

1.500
2
(1,1) (2,2)

result:

ok correct!

Test #93:

score: 0
Accepted
time: 2ms
memory: 3596kb

input:

2 2
XX
X.

output:

1.750
3
(1,2) (2,2)

result:

ok correct!

Test #94:

score: 0
Accepted
time: 2ms
memory: 3600kb

input:

2 2
..
.X

output:

2.750
4
(1,2) (2,2)

result:

ok correct!

Test #95:

score: 0
Accepted
time: 2ms
memory: 3480kb

input:

2 2
X.
.X

output:

2.500
4
(2,1) (1,2)

result:

ok correct!

Test #96:

score: 0
Accepted
time: 0ms
memory: 3644kb

input:

2 2
.X
.X

output:

1.500
2
(1,1) (1,2)

result:

ok correct!

Test #97:

score: 0
Accepted
time: 2ms
memory: 3620kb

input:

2 2
XX
.X

output:

1.750
3
(1,2) (2,2)

result:

ok correct!

Test #98:

score: 0
Accepted
time: 2ms
memory: 3600kb

input:

2 2
..
XX

output:

3.500
4
(1,2) (2,2)

result:

ok correct!

Test #99:

score: 0
Accepted
time: 0ms
memory: 3700kb

input:

2 2
X.
XX

output:

2.250
4
(2,1) (1,2)

result:

ok correct!

Test #100:

score: 0
Accepted
time: 0ms
memory: 3596kb

input:

2 2
.X
XX

output:

1.250
2
(1,1) (2,2)

result:

ok correct!

Test #101:

score: 0
Accepted
time: 2ms
memory: 3628kb

input:

2 2
XX
XX

output:

2.500
3
(1,2) (2,2)

result:

ok correct!

Test #102:

score: 0
Accepted
time: 2ms
memory: 3668kb

input:

3 1
X..

output:

4.667
7
(2,1) (3,1)

result:

ok correct!

Test #103:

score: 0
Accepted
time: 2ms
memory: 3484kb

input:

3 1
.X.

output:

2.000
3
(1,1) (3,1)

result:

ok correct!

Test #104:

score: 0
Accepted
time: 2ms
memory: 3620kb

input:

3 1
XX.

output:

2.000
3
(1,1) (2,1)

result:

ok correct!

Test #105:

score: 0
Accepted
time: 1ms
memory: 3556kb

input:

3 1
..X

output:

2.000
3
(1,1) (2,1)

result:

ok correct!

Test #106:

score: 0
Accepted
time: 2ms
memory: 3648kb

input:

3 1
X.X

output:

9.333
14
(1,1) (3,1)

result:

ok correct!

Test #107:

score: 0
Accepted
time: 2ms
memory: 3640kb

input:

3 1
.XX

output:

2.000
3
(2,1) (3,1)

result:

ok correct!

Test #108:

score: 0
Accepted
time: 2ms
memory: 3596kb

input:

3 1
XXX

output:

5.667
7
(1,1) (2,1)

result:

ok correct!

Test #109:

score: 0
Accepted
time: 2ms
memory: 3548kb

input:

4 1
X...

output:

12.750
22
(3,1) (4,1)

result:

ok correct!

Test #110:

score: 0
Accepted
time: 2ms
memory: 3596kb

input:

4 1
.X..

output:

4.250
7
(3,1) (4,1)

result:

ok correct!

Test #111:

score: 0
Accepted
time: 2ms
memory: 3616kb

input:

4 1
XX..

output:

5.000
7
(3,1) (4,1)

result:

ok correct!

Test #112:

score: 0
Accepted
time: 0ms
memory: 3624kb

input:

4 1
..X.

output:

4.250
7
(1,1) (4,1)

result:

ok correct!

Test #113:

score: 0
Accepted
time: 2ms
memory: 3600kb

input:

4 1
X.X.

output:

8.500
14
(1,1) (3,1)

result:

ok correct!

Test #114:

score: 0
Accepted
time: 2ms
memory: 3624kb

input:

4 1
.XX.

output:

3.000
3
(1,1) (2,1) (3,1) (4,1)

result:

ok correct!

Test #115:

score: 0
Accepted
time: 0ms
memory: 3480kb

input:

4 1
XXX.

output:

4.250
7
(1,1) (2,1)

result:

ok correct!

Test #116:

score: 0
Accepted
time: 2ms
memory: 3700kb

input:

4 1
...X

output:

7.750
14
(1,1) (2,1)

result:

ok correct!

Test #117:

score: 0
Accepted
time: 2ms
memory: 3652kb

input:

4 1
X..X

output:

18.000
33
(1,1) (4,1)

result:

ok correct!

Test #118:

score: 0
Accepted
time: 2ms
memory: 3600kb

input:

4 1
.X.X

output:

10.500
14
(2,1) (4,1)

result:

ok correct!

Test #119:

score: 0
Accepted
time: 0ms
memory: 3664kb

input:

4 1
XX.X

output:

4.250
7
(2,1) (4,1)

result:

ok correct!

Test #120:

score: 0
Accepted
time: 2ms
memory: 3476kb

input:

4 1
..XX

output:

3.000
3
(1,1) (2,1) (3,1) (4,1)

result:

ok correct!

Test #121:

score: 0
Accepted
time: 2ms
memory: 3588kb

input:

4 1
X.XX

output:

4.250
7
(1,1) (4,1)

result:

ok correct!

Test #122:

score: 0
Accepted
time: 0ms
memory: 3700kb

input:

4 1
.XXX

output:

4.250
7
(2,1) (3,1)

result:

ok correct!

Test #123:

score: 0
Accepted
time: 0ms
memory: 3596kb

input:

4 1
XXXX

output:

9.500
14
(2,1) (3,1)

result:

ok correct!

Test #124:

score: 0
Accepted
time: 2ms
memory: 3632kb

input:

100 1
X...................................................................................................

output:

13274.590
38710
(99,1) (100,1)

result:

ok correct!

Test #125:

score: 0
Accepted
time: 2ms
memory: 3660kb

input:

100 1
...................................................................................................X

output:

13076.630
38318
(1,1) (2,1)

result:

ok correct!

Test #126:

score: 0
Accepted
time: 2ms
memory: 3660kb

input:

100 1
..................................................X.................................................

output:

3356.010
9751
(1,1) (100,1)

result:

ok correct!

Test #127:

score: 0
Accepted
time: 2ms
memory: 3756kb

input:

100 1
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

output:

3457.500
9950
(50,1) (51,1)

result:

ok correct!

Test #128:

score: 0
Accepted
time: 2ms
memory: 3720kb

input:

100 1
X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.

output:

3554.940
9950
(49,1) (51,1)

result:

ok correct!

Test #129:

score: 0
Accepted
time: 3ms
memory: 3796kb

input:

100 2
X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.
.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X

output:

3451.070
9751
(49,1) (51,1)

result:

ok correct!

Test #130:

score: 0
Accepted
time: 2ms
memory: 3636kb

input:

1 100
X
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

output:

12977.650
38122
(1,1) (1,2)

result:

ok correct!

Test #131:

score: 0
Accepted
time: 2ms
memory: 3712kb

input:

1 100
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
X

output:

13175.610
38514
(1,99) (1,100)

result:

ok correct!

Test #132:

score: 0
Accepted
time: 0ms
memory: 3652kb

input:

1 100
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
X
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

output:

3306.030
9653
(1,99) (1,100)

result:

ok correct!

Test #133:

score: 0
Accepted
time: 0ms
memory: 3708kb

input:

1 100
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X

output:

3406.500
9850
(1,50) (1,51)

result:

ok correct!

Test #134:

score: 0
Accepted
time: 2ms
memory: 3716kb

input:

1 100
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.
X
.

output:

3503.020
9850
(1,50) (1,52)

result:

ok correct!

Test #135:

score: 0
Accepted
time: 2ms
memory: 3804kb

input:

2 100
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
X.
.X
...

output:

3401.110
9654
(2,49) (2,51)

result:

ok correct!

Test #136:

score: 0
Accepted
time: 2ms
memory: 3688kb

input:

10 10
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX

output:

58.080
95
(5,10) (6,10)

result:

ok correct!

Test #137:

score: 0
Accepted
time: 15ms
memory: 13088kb

input:

100 100
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
....................................................................................................
.............................................................................................

output:

13878.927
38908
(99,1) (100,1)

result:

ok correct!

Test #138:

score: 0
Accepted
time: 14ms
memory: 13056kb

input:

100 100
....................................................................................................
....................................................................................................
.............................................................................................

output:

14059.272
39302
(99,100) (100,100)

result:

ok correct!

Test #139:

score: 0
Accepted
time: 24ms
memory: 13164kb

input:

100 100
X...................................................................................................
X...................................................................................................
X............................................................................................

output:

14132.282
39500
(100,1) (100,2)

result:

ok correct!

Test #140:

score: 0
Accepted
time: 15ms
memory: 13120kb

input:

100 100
...................................................................................................X
...................................................................................................X
.............................................................................................

output:

13951.433
39104
(1,99) (1,100)

result:

ok correct!

Test #141:

score: 0
Accepted
time: 5ms
memory: 4384kb

input:

100 100
....................................................................................................
....................................................................................................
.............................................................................................

output:

19733.340
39302
(99,100) (100,100)

result:

ok correct!

Test #142:

score: 0
Accepted
time: 5ms
memory: 4452kb

input:

100 100
...................................................................................................X
....................................................................................................
.............................................................................................

output:

19601.010
39104
(1,99) (1,100)

result:

ok correct!

Test #143:

score: 0
Accepted
time: 2ms
memory: 4488kb

input:

100 100
....................................................................................................
....................................................................................................
.............................................................................................

output:

5001.490
10098
(99,100) (100,100)

result:

ok correct!

Test #144:

score: 0
Accepted
time: 1ms
memory: 3872kb

input:

20 20
.XX......XX.....XXXX
..X.....X..X....X...
.....X..............
X..XX.X..XX......XX.
X..........X........
...X..X............X
.X...X..........XXXX
.X...XX..XX....X....
X.X.XX...X.......X.X
XXXXX....X........X.
.X.XX.X..XX...X.X...
X.......X..XXX.....X
.X..X..X.X......X...
.........X....X...X.
...

output:

12.812
31
(13,5) (15,18)

result:

ok correct!

Test #145:

score: 0
Accepted
time: 10ms
memory: 5968kb

input:

50 50
..................................................
..................X...............X...............
..................................................
....X...X........................X........X..X....
.................X................................
..........................................

output:

60.831
195
(28,1) (1,35)

result:

ok correct!

Test #146:

score: 0
Accepted
time: 39ms
memory: 13124kb

input:

100 100
....................................................................................................
....................................................................................................
.............................................................................................

output:

227.535
1062
(96,95) (55,100)

result:

ok correct!

Extra Test:

score: 0
Extra Test Passed