QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#421228#6829. It Takes Two of TwokjhhjkiAC ✓33ms132340kbC++201.8kb2024-05-25 15:42:132024-05-25 15:42:13

Judging History

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

  • [2024-05-25 15:42:13]
  • 评测
  • 测评结果:AC
  • 用时:33ms
  • 内存:132340kb
  • [2024-05-25 15:42:13]
  • 提交

answer

#include <bits/stdc++.h>
#define For(i, a, b) for(i32 i = (a), endi = (b); i <= endi; ++i)
#define foR(i, a, b) for(i32 i = (a), endi = (b); i >= endi; --i)
using namespace std;

template<typename T, typename U>
void chkmin(T &a, U b) { if(a > b) a = b; }

using i32 = int;
using i64 = long long;
using f64 = long double;

int mp[128];
void init()
{
    For(i, '0', '9') mp[i] = i - '0';
    For(i, 'a', 'z') mp[i] = i - 'a' + 10;
}

void solve()
{
    i32 n;
    cin >> n;
    vector dp(n+1, vector(n+1, vector<f64>(n+1, 0))); // 孤点 单链 长链
    dp[n][0][0] = 0;
    i32 tmp = n * n;
    auto dfs = [&](auto &&self, i32 a, i32 b, i32 c) -> f64
    {
        if (!c && a + b < 2) return 0;
        if(dp[a][b][c] > 1e-6) return dp[a][b][c];
        f64 s1 = a * (a - 1), s2 = a * b * 4, s3 = a * c * 4, 
            s4 = b * 2 * (b * 2 - 2), s5 = b * c * 8, s6 = c * 2, s7 = c * 2 * (c * 2 - 2);
        f64 res = (s1 + s2 + s3 + s4 + s5 + s6 + s7) / tmp;
        if (a > 1) dp[a][b][c] += self(self, a - 2, b + 1, c) * s1 /tmp;
        if (a && b) dp[a][b][c] += self(self, a - 1, b - 1, c + 1) * s2 / tmp;
        if (a && c) dp[a][b][c] += self(self, a - 1, b, c) * s3 / tmp;
        if (b > 1) dp[a][b][c] += self(self, a, b - 2, c + 1) * s4 / tmp;
        if (c && b) dp[a][b][c] += self(self, a, b - 1, c) * s5 / tmp;
        if (c) dp[a][b][c] += self(self, a, b, c - 1) * s6 / tmp;
        if (c > 1) dp[a][b][c] += self(self, a, b, c - 1) * s7 / tmp;
        dp[a][b][c] = (dp[a][b][c] + 1) / res;
        return dp[a][b][c];
    };
    cout << std::format("{:.9f}\n", dfs(dfs, n, 0, 0));
}

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    init();
    i32 T = 1;
    // cin >> T;
    while(T--) solve();
    return 0;
}

这程序好像有点Bug,我给组数据试试?

详细

Test #1:

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

input:

1

output:

0.000000000

result:

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

Test #2:

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

input:

2

output:

2.000000000

result:

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

Test #3:

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

input:

3

output:

8.250000000

result:

ok found '8.2500000', expected '8.2500000', error '0.0000000'

Test #4:

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

input:

4

output:

11.333333333

result:

ok found '11.3333333', expected '11.3333333', error '0.0000000'

Test #5:

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

input:

5

output:

17.048611111

result:

ok found '17.0486111', expected '17.0486111', error '0.0000000'

Test #6:

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

input:

6

output:

26.034065934

result:

ok found '26.0340659', expected '26.0340659', error '0.0000000'

Test #7:

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

input:

7

output:

35.497562603

result:

ok found '35.4975626', expected '35.4975626', error '0.0000000'

Test #8:

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

input:

8

output:

46.229305311

result:

ok found '46.2293053', expected '46.2293053', error '0.0000000'

Test #9:

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

input:

9

output:

58.614396353

result:

ok found '58.6143964', expected '58.6143964', error '0.0000000'

Test #10:

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

input:

10

output:

72.437768422

result:

ok found '72.4377684', expected '72.4377684', error '0.0000000'

Test #11:

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

input:

11

output:

87.678796659

result:

ok found '87.6787967', expected '87.6787967', error '0.0000000'

Test #12:

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

input:

12

output:

104.361318979

result:

ok found '104.3613190', expected '104.3613190', error '0.0000000'

Test #13:

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

input:

13

output:

122.481859321

result:

ok found '122.4818593', expected '122.4818593', error '0.0000000'

Test #14:

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

input:

14

output:

142.036524364

result:

ok found '142.0365244', expected '142.0365244', error '0.0000000'

Test #15:

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

input:

15

output:

163.023991778

result:

ok found '163.0239918', expected '163.0239918', error '0.0000000'

Test #16:

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

input:

16

output:

185.442941965

result:

ok found '185.4429420', expected '185.4429420', error '0.0000000'

Test #17:

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

input:

17

output:

209.292064566

result:

ok found '209.2920646', expected '209.2920646', error '0.0000000'

Test #18:

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

input:

18

output:

234.570195336

result:

ok found '234.5701953', expected '234.5701953', error '0.0000000'

Test #19:

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

input:

19

output:

261.276282114

result:

ok found '261.2762821', expected '261.2762821', error '0.0000000'

Test #20:

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

input:

20

output:

289.409362215

result:

ok found '289.4093622', expected '289.4093622', error '0.0000000'

Test #21:

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

input:

21

output:

318.968551414

result:

ok found '318.9685514', expected '318.9685514', error '0.0000000'

Test #22:

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

input:

22

output:

349.953034120

result:

ok found '349.9530341', expected '349.9530341', error '0.0000000'

Test #23:

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

input:

23

output:

382.362054919

result:

ok found '382.3620549', expected '382.3620549', error '0.0000000'

Test #24:

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

input:

24

output:

416.194911539

result:

ok found '416.1949115', expected '416.1949115', error '0.0000000'

Test #25:

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

input:

25

output:

451.450948920

result:

ok found '451.4509489', expected '451.4509489', error '0.0000000'

Test #26:

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

input:

26

output:

488.129554163

result:

ok found '488.1295542', expected '488.1295542', error '0.0000000'

Test #27:

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

input:

27

output:

526.230152195

result:

ok found '526.2301522', expected '526.2301522', error '0.0000000'

Test #28:

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

input:

28

output:

565.752202037

result:

ok found '565.7522020', expected '565.7522020', error '0.0000000'

Test #29:

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

input:

29

output:

606.695193565

result:

ok found '606.6951936', expected '606.6951936', error '0.0000000'

Test #30:

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

input:

30

output:

649.058644678

result:

ok found '649.0586447', expected '649.0586447', error '0.0000000'

Test #31:

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

input:

31

output:

692.842098824

result:

ok found '692.8420988', expected '692.8420988', error '0.0000000'

Test #32:

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

input:

32

output:

738.045122815

result:

ok found '738.0451228', expected '738.0451228', error '0.0000000'

Test #33:

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

input:

33

output:

784.667304896

result:

ok found '784.6673049', expected '784.6673049', error '0.0000000'

Test #34:

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

input:

34

output:

832.708253027

result:

ok found '832.7082530', expected '832.7082530', error '0.0000000'

Test #35:

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

input:

35

output:

882.167593357

result:

ok found '882.1675934', expected '882.1675934', error '0.0000000'

Test #36:

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

input:

36

output:

933.044968851

result:

ok found '933.0449689', expected '933.0449689', error '0.0000000'

Test #37:

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

input:

37

output:

985.340038061

result:

ok found '985.3400381', expected '985.3400381', error '0.0000000'

Test #38:

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

input:

38

output:

1039.052474022

result:

ok found '1039.0524740', expected '1039.0524740', error '0.0000000'

Test #39:

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

input:

39

output:

1094.181963247

result:

ok found '1094.1819632', expected '1094.1819632', error '0.0000000'

Test #40:

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

input:

40

output:

1150.728204822

result:

ok found '1150.7282048', expected '1150.7282048', error '0.0000000'

Test #41:

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

input:

41

output:

1208.690909582

result:

ok found '1208.6909096', expected '1208.6909096', error '0.0000000'

Test #42:

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

input:

42

output:

1268.069799361

result:

ok found '1268.0697994', expected '1268.0697994', error '0.0000000'

Test #43:

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

input:

43

output:

1328.864606309

result:

ok found '1328.8646063', expected '1328.8646063', error '0.0000000'

Test #44:

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

input:

44

output:

1391.075072261

result:

ok found '1391.0750723', expected '1391.0750723', error '0.0000000'

Test #45:

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

input:

45

output:

1454.700948167

result:

ok found '1454.7009482', expected '1454.7009482', error '0.0000000'

Test #46:

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

input:

46

output:

1519.741993558

result:

ok found '1519.7419936', expected '1519.7419936', error '0.0000000'

Test #47:

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

input:

47

output:

1586.197976068

result:

ok found '1586.1979761', expected '1586.1979761', error '0.0000000'

Test #48:

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

input:

48

output:

1654.068670977

result:

ok found '1654.0686710', expected '1654.0686710', error '0.0000000'

Test #49:

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

input:

49

output:

1723.353860801

result:

ok found '1723.3538608', expected '1723.3538608', error '0.0000000'

Test #50:

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

input:

50

output:

1794.053334906

result:

ok found '1794.0533349', expected '1794.0533349', error '0.0000000'

Test #51:

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

input:

51

output:

1866.166889156

result:

ok found '1866.1668892', expected '1866.1668892', error '0.0000000'

Test #52:

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

input:

52

output:

1939.694325576

result:

ok found '1939.6943256', expected '1939.6943256', error '0.0000000'

Test #53:

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

input:

153

output:

16628.002670534

result:

ok found '16628.0026705', expected '16628.0026705', error '0.0000000'

Test #54:

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

input:

154

output:

16845.200458596

result:

ok found '16845.2004586', expected '16845.2004586', error '0.0000000'

Test #55:

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

input:

155

output:

17063.803707669

result:

ok found '17063.8037077', expected '17063.8037077', error '0.0000000'

Test #56:

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

input:

156

output:

17283.812380397

result:

ok found '17283.8123804', expected '17283.8123804', error '0.0000000'

Test #57:

score: 0
Accepted
time: 7ms
memory: 66560kb

input:

157

output:

17505.226439773

result:

ok found '17505.2264398', expected '17505.2264398', error '0.0000000'

Test #58:

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

input:

158

output:

17728.045849134

result:

ok found '17728.0458491', expected '17728.0458491', error '0.0000000'

Test #59:

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

input:

159

output:

17952.270572155

result:

ok found '17952.2705722', expected '17952.2705722', error '0.0000000'

Test #60:

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

input:

160

output:

18177.900572840

result:

ok found '18177.9005728', expected '18177.9005728', error '0.0000000'

Test #61:

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

input:

161

output:

18404.935815524

result:

ok found '18404.9358155', expected '18404.9358155', error '0.0000000'

Test #62:

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

input:

162

output:

18633.376264862

result:

ok found '18633.3762649', expected '18633.3762649', error '0.0000000'

Test #63:

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

input:

163

output:

18863.221885825

result:

ok found '18863.2218858', expected '18863.2218858', error '0.0000000'

Test #64:

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

input:

164

output:

19094.472643699

result:

ok found '19094.4726437', expected '19094.4726437', error '0.0000000'

Test #65:

score: 0
Accepted
time: 23ms
memory: 76416kb

input:

165

output:

19327.128504074

result:

ok found '19327.1285041', expected '19327.1285041', error '0.0000000'

Test #66:

score: 0
Accepted
time: 23ms
memory: 77812kb

input:

166

output:

19561.189432846

result:

ok found '19561.1894328', expected '19561.1894328', error '0.0000000'

Test #67:

score: 0
Accepted
time: 19ms
memory: 79064kb

input:

167

output:

19796.655396208

result:

ok found '19796.6553962', expected '19796.6553962', error '0.0000000'

Test #68:

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

input:

168

output:

20033.526360645

result:

ok found '20033.5263606', expected '20033.5263606', error '0.0000000'

Test #69:

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

input:

169

output:

20271.802292934

result:

ok found '20271.8022929', expected '20271.8022929', error '0.0000000'

Test #70:

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

input:

170

output:

20511.483160136

result:

ok found '20511.4831601', expected '20511.4831601', error '0.0000000'

Test #71:

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

input:

171

output:

20752.568929592

result:

ok found '20752.5689296', expected '20752.5689296', error '0.0000000'

Test #72:

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

input:

172

output:

20995.059568922

result:

ok found '20995.0595689', expected '20995.0595689', error '0.0000000'

Test #73:

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

input:

173

output:

21238.955046016

result:

ok found '21238.9550460', expected '21238.9550460', error '0.0000000'

Test #74:

score: 0
Accepted
time: 20ms
memory: 88840kb

input:

174

output:

21484.255329036

result:

ok found '21484.2553290', expected '21484.2553290', error '0.0000000'

Test #75:

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

input:

175

output:

21730.960386406

result:

ok found '21730.9603864', expected '21730.9603864', error '0.0000000'

Test #76:

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

input:

176

output:

21979.070186813

result:

ok found '21979.0701868', expected '21979.0701868', error '0.0000000'

Test #77:

score: 0
Accepted
time: 27ms
memory: 93204kb

input:

177

output:

22228.584699202

result:

ok found '22228.5846992', expected '22228.5846992', error '0.0000000'

Test #78:

score: 0
Accepted
time: 20ms
memory: 94944kb

input:

178

output:

22479.503892770

result:

ok found '22479.5038928', expected '22479.5038928', error '0.0000000'

Test #79:

score: 0
Accepted
time: 20ms
memory: 96328kb

input:

179

output:

22731.827736967

result:

ok found '22731.8277370', expected '22731.8277370', error '0.0000000'

Test #80:

score: 0
Accepted
time: 20ms
memory: 97760kb

input:

180

output:

22985.556201488

result:

ok found '22985.5562015', expected '22985.5562015', error '0.0000000'

Test #81:

score: 0
Accepted
time: 19ms
memory: 99384kb

input:

181

output:

23240.689256271

result:

ok found '23240.6892563', expected '23240.6892563', error '0.0000000'

Test #82:

score: 0
Accepted
time: 30ms
memory: 100908kb

input:

182

output:

23497.226871496

result:

ok found '23497.2268715', expected '23497.2268715', error '0.0000000'

Test #83:

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

input:

183

output:

23755.169017578

result:

ok found '23755.1690176', expected '23755.1690176', error '0.0000000'

Test #84:

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

input:

184

output:

24014.515665167

result:

ok found '24014.5156652', expected '24014.5156652', error '0.0000000'

Test #85:

score: 0
Accepted
time: 20ms
memory: 106124kb

input:

185

output:

24275.266785144

result:

ok found '24275.2667851', expected '24275.2667851', error '0.0000000'

Test #86:

score: 0
Accepted
time: 23ms
memory: 107548kb

input:

186

output:

24537.422348614

result:

ok found '24537.4223486', expected '24537.4223486', error '0.0000000'

Test #87:

score: 0
Accepted
time: 23ms
memory: 109032kb

input:

187

output:

24800.982326910

result:

ok found '24800.9823269', expected '24800.9823269', error '0.0000000'

Test #88:

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

input:

188

output:

25065.946691586

result:

ok found '25065.9466916', expected '25065.9466916', error '0.0000000'

Test #89:

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

input:

189

output:

25332.315414411

result:

ok found '25332.3154144', expected '25332.3154144', error '0.0000000'

Test #90:

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

input:

190

output:

25600.088467374

result:

ok found '25600.0884674', expected '25600.0884674', error '0.0000000'

Test #91:

score: 0
Accepted
time: 19ms
memory: 115892kb

input:

191

output:

25869.265822673

result:

ok found '25869.2658227', expected '25869.2658227', error '0.0000000'

Test #92:

score: 0
Accepted
time: 32ms
memory: 117696kb

input:

192

output:

26139.847452719

result:

ok found '26139.8474527', expected '26139.8474527', error '0.0000000'

Test #93:

score: 0
Accepted
time: 23ms
memory: 119468kb

input:

193

output:

26411.833330128

result:

ok found '26411.8333301', expected '26411.8333301', error '0.0000000'

Test #94:

score: 0
Accepted
time: 27ms
memory: 121440kb

input:

194

output:

26685.223427722

result:

ok found '26685.2234277', expected '26685.2234277', error '0.0000000'

Test #95:

score: 0
Accepted
time: 32ms
memory: 123172kb

input:

195

output:

26960.017718523

result:

ok found '26960.0177185', expected '26960.0177185', error '0.0000000'

Test #96:

score: 0
Accepted
time: 20ms
memory: 124936kb

input:

196

output:

27236.216175754

result:

ok found '27236.2161758', expected '27236.2161758', error '0.0000000'

Test #97:

score: 0
Accepted
time: 20ms
memory: 126736kb

input:

197

output:

27513.818772836

result:

ok found '27513.8187728', expected '27513.8187728', error '0.0000000'

Test #98:

score: 0
Accepted
time: 27ms
memory: 128572kb

input:

198

output:

27792.825483381

result:

ok found '27792.8254834', expected '27792.8254834', error '0.0000000'

Test #99:

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

input:

199

output:

28073.236281196

result:

ok found '28073.2362812', expected '28073.2362812', error '0.0000000'

Test #100:

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

input:

200

output:

28355.051140275

result:

ok found '28355.0511403', expected '28355.0511403', error '0.0000000'