QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#708618#5537. Storing Eggshydrolyzed_WA 438ms8932kbC++232.0kb2024-11-04 00:56:032024-11-04 00:56:04

Judging History

This is the latest submission verdict.

  • [2024-11-04 00:56:04]
  • Judged
  • Verdict: WA
  • Time: 438ms
  • Memory: 8932kb
  • [2024-11-04 00:56:03]
  • Submitted

answer

#include <bits/stdc++.h>

using namespace std;
using ll = long long;

const int MxN = 110;

int n, k, dp[MxN][MxN][MxN], p[4];
char a[4][MxN];

int DP(int i, int j, int k) {
  if(i < 0 || j < 0 || k < 0) {
    return -1e9 - 100;
  }
  if(i == 0 && j == 0 && k == 0) {
    return 0;
  }
  if(dp[i][j][k] != -1) {
    return dp[i][j][k];
  }
  dp[i][j][k] = max({DP(i - 1, j, k), DP(i, j - 1, k), DP(i, j, k - 1)});
  if(i > 0 && a[1][i] == '.') {
    int x = min(i, max(0, i - p[0]));
    int y = min(j, max(0, i - p[1]));
    int z = min(k, max(0, i - p[2]));
    dp[i][j][k] = max(dp[i][j][k], 1 + DP(x, y, z));
  }
  if(j > 0 && a[2][j] == '.') {
    int x = min(i, max(0, j - p[1]));
    int y = min(j, max(0, j - p[0]));
    int z = min(k, max(0, j - p[1]));
    dp[i][j][k] = max(dp[i][j][k], 1 + DP(x, y, z));
  }
  if(k > 0 && a[3][k] == '.') {
    int x = min(i, max(0, k - p[2]));
    int y = min(j, max(0, k - p[1]));
    int z = min(k, max(0, k - p[0]));
    dp[i][j][k] = max(dp[i][j][k], 1 + DP(x, y, z));
  }
  return dp[i][j][k];
}

bool ok(int mid) {
  for(int i=0; i<=n; ++i) {
    for(int j=0; j<=n; ++j) {
      for(int k=1; k<=n; ++k) {
        dp[i][j][k] = -1;
      }
    }
  }
  for(int i=0; i<3; ++i) {
    int l = 0, r = n;
    while(l < r) {
      int md = (l + r) >> 1;
      if(md * md >= mid - i * i) {
        r = md;
      }
      else {
        l = md + 1;
      }
    }
    p[i] = l;
  }
  return DP(n, n, n) >= k;
}

signed main(int argc, char *argv[]) {
  cin.tie(nullptr)->ios::sync_with_stdio(false);
  cin >> n >> k;
  int remains = k;
  for(int i=1; i<=3; ++i) {
    for(int j=1; j<=n; ++j) {
      cin >> a[i][j];
      remains -= (a[i][j] == '.');
    }
  }
  if(remains > 0) {
    cout << -1 << "\n";
    return 0;
  }
  int l = 1, r = 20020;
  while(l < r) {
    int mid = (l + r + 1) >> 1;
    if(ok(mid)) {
      l = mid;
    }
    else {
      r = mid - 1;
    }
  }
  cout << fixed << setprecision(6) << sqrt(l) << "\n";
  return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3776kb

input:

5 2
#....
.....
....#

output:

4.472136

result:

ok found '4.4721360', expected '4.4721360', error '0.0000000'

Test #2:

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

input:

5 6
##.##
#####
.....

output:

1.000000

result:

ok found '1.0000000', expected '1.0000000', error '0.0000000'

Test #3:

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

input:

3 4
..#
...
...

output:

1.414214

result:

ok found '1.4142140', expected '1.4142140', error '0.0000000'

Test #4:

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

input:

2 6
..
.#
..

output:

-1

result:

ok found '-1.0000000', expected '-1.0000000', error '-0.0000000'

Test #5:

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

input:

1 2
.
.
.

output:

2.000000

result:

ok found '2.0000000', expected '2.0000000', error '0.0000000'

Test #6:

score: 0
Accepted
time: 356ms
memory: 8564kb

input:

100 2
....................................................................................................
....................................................................................................
...............................................................................................

output:

99.020200

result:

ok found '99.0202000', expected '99.0202000', error '0.0000000'

Test #7:

score: 0
Accepted
time: 406ms
memory: 8528kb

input:

100 3
....................................................................................................
....................................................................................................
...............................................................................................

output:

49.040799

result:

ok found '49.0407990', expected '49.0407990', error '0.0000000'

Test #8:

score: 0
Accepted
time: 433ms
memory: 8656kb

input:

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

output:

2.000000

result:

ok found '2.0000000', expected '2.0000000', error '0.0000000'

Test #9:

score: 0
Accepted
time: 438ms
memory: 8676kb

input:

100 150
....................................................................................................
....................................................................................................
.............................................................................................

output:

1.414214

result:

ok found '1.4142140', expected '1.4142140', error '0.0000000'

Test #10:

score: 0
Accepted
time: 437ms
memory: 8708kb

input:

100 151
....................................................................................................
....................................................................................................
.............................................................................................

output:

1.000000

result:

ok found '1.0000000', expected '1.0000000', error '0.0000000'

Test #11:

score: 0
Accepted
time: 434ms
memory: 8432kb

input:

100 200
....................................................................................................
....................................................................................................
.............................................................................................

output:

1.000000

result:

ok found '1.0000000', expected '1.0000000', error '0.0000000'

Test #12:

score: 0
Accepted
time: 437ms
memory: 8432kb

input:

100 201
....................................................................................................
....................................................................................................
.............................................................................................

output:

1.000000

result:

ok found '1.0000000', expected '1.0000000', error '0.0000000'

Test #13:

score: 0
Accepted
time: 92ms
memory: 6676kb

input:

60 130
............................................................
............................................................
............................................................

output:

1.000000

result:

ok found '1.0000000', expected '1.0000000', error '0.0000000'

Test #14:

score: 0
Accepted
time: 374ms
memory: 8716kb

input:

100 100
....................................................................................................
####################################################################################################
.............................................................................................

output:

2.000000

result:

ok found '2.0000000', expected '2.0000000', error '0.0000000'

Test #15:

score: 0
Accepted
time: 314ms
memory: 8780kb

input:

100 51
####################################################################################################
....................................................................................................
###########################################################################################...

output:

1.000000

result:

ok found '1.0000000', expected '1.0000000', error '0.0000000'

Test #16:

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

input:

1 2
#
#
#

output:

-1

result:

ok found '-1.0000000', expected '-1.0000000', error '-0.0000000'

Test #17:

score: 0
Accepted
time: 302ms
memory: 8596kb

input:

99 50
###################################################################################################
...................................................................................................
##############################################################################################...

output:

2.000000

result:

ok found '2.0000000', expected '2.0000000', error '0.0000000'

Test #18:

score: 0
Accepted
time: 370ms
memory: 8924kb

input:

100 47
#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#...

output:

2.828427

result:

ok found '2.8284270', expected '2.8284270', error '0.0000000'

Test #19:

score: 0
Accepted
time: 364ms
memory: 8672kb

input:

100 43
.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#
#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.
.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#....

output:

2.828427

result:

ok found '2.8284270', expected '2.8284270', error '0.0000000'

Test #20:

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

input:

99 2
#........#............#.#.#...................................#................##..............#...
............................##...#......#...##.............#.........#..#...#............#...#.....
#...............................................#..............#.....#.........#.........#........

output:

98.005102

result:

ok found '98.0051020', expected '98.0051020', error '0.0000000'

Test #21:

score: 0
Accepted
time: 201ms
memory: 8148kb

input:

90 2
#############..######.###.##.#########.###.###########.####.##############################
#...##########.#.#################.############.########################.#################
###################.###.##.####.#######..##.########.#############################.#######

output:

81.006173

result:

ok found '81.0061730', expected '81.0061730', error '0.0000000'

Test #22:

score: 0
Accepted
time: 328ms
memory: 8484kb

input:

95 3
#.#..............#.............#.......#..##.....#.#............#....#..................##.....
.....#.#........#...#...........#......................#...#.....#.........#.....#...........#.
#.......#.#....#.......#.......#.......#..#.#.#.#....#.#...#..#......#........#..........#....#

output:

47.010637

result:

ok found '47.0106370', expected '47.0106370', error '0.0000000'

Test #23:

score: 0
Accepted
time: 201ms
memory: 8132kb

input:

92 3
#########################.###########################.####################################.#
#######.##############.#.#################.#########.########.#############################.
###.##.####.###.####.#####.########.#########.########.##.#######.##########################

output:

42.000000

result:

ok found '42.0000000', expected '42.0000000', error '0.0000000'

Test #24:

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

input:

93 4
##..#.......................#.....#.#.#..............#.....#........#.....................#..
......#...................#..##...................#...............###.....#....#..........#.#
#......#.........#....#.................#......#...#......##..........#.........#.#..#.#..#.#

output:

30.066593

result:

ok found '30.0665930', expected '30.0665930', error '0.0000000'

Test #25:

score: 0
Accepted
time: 208ms
memory: 8316kb

input:

92 4
###.###############.######.##.#########################.######.###.#####.###################
#.##..#####################.###########################.########..###############.#######...
#######################.###.############.##..####.#################.#.#..####.##############

output:

28.017851

result:

ok found '28.0178510', expected '28.0178510', error '0.0000000'

Test #26:

score: 0
Accepted
time: 370ms
memory: 8176kb

input:

94 5
#........#....#.................................................#.....................#.......
#................#...............#..##..................#........#.......#...#................
##..................................................##................#.......#...............

output:

23.021729

result:

ok found '23.0217290', expected '23.0217290', error '0.0000000'

Test #27:

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

input:

1 2
#
.
.

output:

1.000000

result:

ok found '1.0000000', expected '1.0000000', error '0.0000000'

Test #28:

score: 0
Accepted
time: 239ms
memory: 8240kb

input:

94 5
##..#.######.##.########.#####.#####.############..##.##############################..########
#######.########.##########.#..################.####.#.###...######..##.######################
######.############.######.#####################.################.##.##############.##########

output:

18.027756

result:

ok found '18.0277560', expected '18.0277560', error '0.0000000'

Test #29:

score: 0
Accepted
time: 295ms
memory: 8408kb

input:

90 6
#.................#....................#................#.#.........###...................
....................................#........#...................#...##...##....#.....#...
#.#...........#...#........#..#....#.#....................#.........#.....................

output:

17.117243

result:

ok found '17.1172430', expected '17.1172430', error '0.0000000'

Test #30:

score: 0
Accepted
time: 285ms
memory: 8708kb

input:

100 6
##########.##.##################.###########.###########.##.######################.####.##.#########
##########...#########.#.########.#################.#.###########.#.##########.#.##.################
##############.#####..#######..##################.#######################.########.#########...

output:

16.031220

result:

ok found '16.0312200', expected '16.0312200', error '0.0000000'

Test #31:

score: 0
Accepted
time: 346ms
memory: 8176kb

input:

92 7
#.#....#..#...#.......#.........................................#.......#...#.............#.
...............#......#............#...#.........................#.....#..............#.....
#..#......#...............#.................#....#............................#.............

output:

15.132746

result:

ok found '15.1327460', expected '15.1327460', error '0.0000000'

Test #32:

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

input:

92 7
##.###########..######.###############.#.##.#################.##.#############.######.###.##
#############.###############.##..#####################.######.#..#########.###.############
.###.########.###################.########.###################..#######...#########.#####.##

output:

14.035669

result:

ok found '14.0356690', expected '14.0356690', error '0.0000000'

Test #33:

score: 0
Accepted
time: 308ms
memory: 8116kb

input:

91 8
#..................#..#..............#......................#.......#..........#...#..#....
#....#.#.....#..#......#.....#.................#..#...........................#.........#..
#.......#......#..........#............#.....#...................#..............#.....#....

output:

12.165525

result:

ok found '12.1655250', expected '12.1655250', error '0.0000000'

Test #34:

score: 0
Accepted
time: 213ms
memory: 8312kb

input:

93 8
############.###########.#######################.############.##.###.######################.#
############.####.###########.#######.####.##########.#######.####.###################.####..
#####.#######.###########.#####.#############.#.##################.##########################

output:

8.062258

result:

ok found '8.0622580', expected '8.0622580', error '0.0000000'

Test #35:

score: 0
Accepted
time: 418ms
memory: 8676kb

input:

100 109
..#.....#..............#....................#..#.......#.............#................#.#...........
#............##.........#..........#.#....#...............#...#.......#................#...........#
.....#..#......#................................................................#............

output:

1.414214

result:

ok found '1.4142140', expected '1.4142140', error '0.0000000'

Test #36:

score: 0
Accepted
time: 369ms
memory: 8560kb

input:

97 13
..##...#..........#.........##....##......#............#..........###........#.....#.........#...
##..#....#.............#....#...#.##............#........#.#.#.....................#.......#..#..
........#..#....##.........#.#....#.....#.......#.#...................#......#.......#......##...

output:

8.062258

result:

ok found '8.0622580', expected '8.0622580', error '0.0000000'

Test #37:

score: 0
Accepted
time: 397ms
memory: 8596kb

input:

100 50
....#......#..................#.......#..#.....#........#.........#......#....#............##.......
#.....##........#.#...........##..#....##....#.#.........##....#.##...........#.....................
......##........#...#....#...#...#............#.......##.#..........##......##....##..#...#...

output:

2.236068

result:

ok found '2.2360680', expected '2.2360680', error '0.0000000'

Test #38:

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

input:

1 3
#
.
.

output:

-1

result:

ok found '-1.0000000', expected '-1.0000000', error '-0.0000000'

Test #39:

score: 0
Accepted
time: 314ms
memory: 8484kb

input:

92 107
..#........#...#...#.....#....#........#...#.......#.........#..#.........#...##.......##.#.
..##.......#..#....##.#..##.#.##........#............#..#.......#..##..............#....#...
#...#.....#..........#........#.....##.#.................#....##...........#............#...

output:

1.414214

result:

ok found '1.4142140', expected '1.4142140', error '0.0000000'

Test #40:

score: 0
Accepted
time: 344ms
memory: 8092kb

input:

95 125
...##.......#..#.#.............#..##...#..................#......#...##..#.....##....#.......#.
.........#.....#.#....#....#..##.....#...#...#......#...........##..#........#.#...#.#........#
.#..#....................##.........#...#...........#...........#...#...#..........##.....#.##.

output:

1.000000

result:

ok found '1.0000000', expected '1.0000000', error '0.0000000'

Test #41:

score: 0
Accepted
time: 280ms
memory: 8116kb

input:

93 20
#############################################################################################
.#.....#.......###.#..#.###....#...............##...#.....#..#...#...........#.....#....#..#.
....##.....#....#.#......#......#...........#.....#................#......#...#.##........#..

output:

4.123106

result:

ok found '4.1231060', expected '4.1231060', error '0.0000000'

Test #42:

score: 0
Accepted
time: 267ms
memory: 8504kb

input:

97 21
#################################################################################################
#################################################################################################
......###........#.....#...#.#.........##.#......#.####.##......#....#........#...##....#......#.

output:

4.000000

result:

ok found '4.0000000', expected '4.0000000', error '0.0000000'

Test #43:

score: 0
Accepted
time: 309ms
memory: 8052kb

input:

93 7
#...#..##..#..#....#...#......#...####.###..##.##.#..#.#.###.##......#..###....#.#..#.#.#...#
.#.#....##..##.##.#...##..##.#..............####.....##.#.#.#.#.#..##....#...#.#.#.......#...
###.###......#.#.#.#...###....#.#.##..#..#...#...#.##.#..##...#.####.#..##.#.###....#.#...#.#

output:

15.132746

result:

ok found '15.1327460', expected '15.1327460', error '0.0000000'

Test #44:

score: 0
Accepted
time: 264ms
memory: 8080kb

input:

91 15
.##.#..#......#.#####..###....##..#.#...#..##..#.##.....#....#.######.#.#.#......##..##..#.
..#..########....#..#...#.###.#............#.#.#..#..#..#.#.##...##....###.#...#.###..####.
...#.##..####..#.#.#.....#.#..#.#...##.##.#....#....#..#..##.......#####..###.#.#.#.##...#.

output:

6.324555

result:

ok found '6.3245550', expected '6.3245550', error '0.0000000'

Test #45:

score: -100
Wrong Answer
time: 342ms
memory: 8616kb

input:

98 58
.#..##.....#............###.#####.##.....#.#..#.#.....####..##.##.#.......##...##..#..#....#..#..#
#.#.##.#.#...#.....###...#....##..#..#...#####.##.#.#..#.#.##.#...####.##.#.....###.##.###.#....#.
....#..##..##.##..##...#..#....#.......###...#....#.##..#...#..#.....#....#.#.......####.#.#..#.#.

output:

2.000000

result:

wrong answer 1st numbers differ - expected: '2.2360680', found: '2.0000000', error = '0.1055728'