QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#227310#6801. BlackjackjzhWA 270ms7780kbC++231.2kb2023-10-27 12:00:552023-10-27 12:00:56

Judging History

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

  • [2023-10-27 12:00:56]
  • 评测
  • 测评结果:WA
  • 用时:270ms
  • 内存:7780kb
  • [2023-10-27 12:00:55]
  • 提交

answer

#include<bits/stdc++.h>

using namespace std;

using db = double;

const int maxn = 505;
db dp[maxn][maxn], ndp[maxn][maxn];
int vec[maxn];

void solve() {
	int n, a, b; cin >> n >> a >> b;
	for(int i = 1 ; i <= n ; i ++) cin >> vec[i];

	dp[0][0] = 1;

	for(int i = 1 ; i <= n ; i ++) {
		memset(ndp, 0, sizeof(ndp));
		for(int x = 0 ; x < i ; x ++) {
			for(int y = 0 ; y <= b ; y ++) {
				ndp[x][y] += dp[x][y];
				if(y+vec[i]<=b) ndp[x+1][y + vec[i]] += dp[x][y] * (x+1) / (n-x);
			}
		}
		// for(int x = 0 ; x <= n ; x ++) {
		// 	for(int y = 0 ; y <= b ; y ++) {
		// 		cout << dp[x][y] << ' ';
		// 	}
		// 	cout << endl;
		// }
		memcpy(dp, ndp, sizeof(ndp));
	}

	db ans = 0;
	for(int i = 1 ; i <= n ; i ++) {
		memcpy(ndp, dp, sizeof(dp));
		for(int x = 0 ; x < n ; x ++) {
			for(int y = 0 ; y <= b ; y ++) {
				ndp[x+1][y+vec[i]] -= ndp[x][y] * (x+1) / (n-x);
			}
		}
		db temp = 0;
		for(int x = 0 ; x <= n-1 ; x ++) {
			for(int y = 0 ; y <= a ; y ++) {
				if(y+vec[i]>a and y+vec[i]<=b) {
					temp += ndp[x][y] / (n-x);
				}
			}
		}
		ans += temp;
	}
	cout << fixed << setprecision(50) << ans << endl;
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	solve();

	return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 3ms
memory: 7556kb

input:

5 2 4
1 1 1 5 5

output:

0.10000000000000000555111512312578270211815834045410

result:

ok found '0.1000000', expected '0.1000000', error '0.0000000'

Test #2:

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

input:

5 2 4
1 1 1 3 5

output:

0.45000000000000006661338147750939242541790008544922

result:

ok found '0.4500000', expected '0.4500000', error '0.0000000'

Test #3:

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

input:

18 10 11
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

output:

0.00000000000000000000000000000000000000000000000000

result:

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

Test #4:

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

input:

14 15 16
3 3 3 3 3 3 3 3 3 3 3 3 3 3

output:

0.00000000000000000000000000000000000000000000000000

result:

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

Test #5:

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

input:

7 20 23
4 4 4 4 4 4 4

output:

0.00000000000000000000000000000000000000000000000000

result:

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

Test #6:

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

input:

10 25 27
5 5 5 5 5 5 5 5 5 5

output:

0.00000000000000000000000000000000000000000000000000

result:

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

Test #7:

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

input:

6 30 35
6 6 6 6 6 6

output:

0.00000000000000000000000000000000000000000000000000

result:

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

Test #8:

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

input:

9 35 36
7 7 7 7 7 7 7 7 7

output:

0.00000000000000000000000000000000000000000000000000

result:

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

Test #9:

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

input:

14 33 40
8 8 8 8 8 8 8 8 8 8 8 8 8 8

output:

0.99999999999999966693309261245303787291049957275391

result:

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

Test #10:

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

input:

7 43 45
9 9 9 9 9 9 9

output:

0.99999999999999977795539507496869191527366638183594

result:

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

Test #11:

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

input:

7 49 50
10 10 10 10 10 10 10

output:

0.99999999999999977795539507496869191527366638183594

result:

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

Test #12:

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

input:

7 49 55
11 11 11 11 11 11 11

output:

0.99999999999999977795539507496869191527366638183594

result:

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

Test #13:

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

input:

16 53 60
12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12

output:

1.00000000000000000000000000000000000000000000000000

result:

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

Test #14:

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

input:

16 53 65
13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13

output:

1.00000000000000000000000000000000000000000000000000

result:

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

Test #15:

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

input:

10 55 60
8 2 8 10 8 8 1 2 8 10

output:

0.56388888888888888395456433499930426478385925292969

result:

ok found '0.5638889', expected '0.5638889', error '0.0000000'

Test #16:

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

input:

10 38 43
5 8 1 9 7 2 1 9 3 1

output:

0.48888888888888759609585576981771737337112426757812

result:

ok found '0.4888889', expected '0.4888889', error '0.0000000'

Test #17:

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

input:

10 49 52
8 2 8 10 6 2 10 5 1 5

output:

0.38611111111111107163651467999443411827087402343750

result:

ok found '0.3861111', expected '0.3861111', error '0.0000000'

Test #18:

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

input:

10 44 49
3 10 3 2 7 5 5 10 5 4

output:

0.67777777777777925560798166770837269723415374755859

result:

ok found '0.6777778', expected '0.6777778', error '0.0000000'

Test #19:

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

input:

10 54 58
5 9 8 2 4 3 8 7 7 6

output:

0.29999999999999871214129143481841310858726501464844

result:

ok found '0.3000000', expected '0.3000000', error '0.0000000'

Test #20:

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

input:

10 46 49
2 2 3 9 9 3 4 5 7 7

output:

0.50000000000000066613381477509392425417900085449219

result:

ok found '0.5000000', expected '0.5000000', error '0.0000000'

Test #21:

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

input:

10 50 51
10 9 10 4 8 2 1 1 2 10

output:

0.05753968253968247403840052811574423685669898986816

result:

ok found '0.0575397', expected '0.0575397', error '0.0000000'

Test #22:

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

input:

10 35 39
8 6 4 1 3 1 9 6 2 3

output:

0.58888888888888990535974699014332145452499389648438

result:

ok found '0.5888889', expected '0.5888889', error '0.0000000'

Test #23:

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

input:

10 62 64
10 8 7 4 4 7 10 10 8 1

output:

0.04444444444444450859066364500904455780982971191406

result:

ok found '0.0444444', expected '0.0444444', error '0.0000000'

Test #24:

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

input:

10 40 41
2 2 2 4 6 4 4 6 5 10

output:

0.36666666666666636320570660245721228420734405517578

result:

ok found '0.3666667', expected '0.3666667', error '0.0000000'

Test #25:

score: -100
Wrong Answer
time: 270ms
memory: 7664kb

input:

500 392 500
21 90 87 268 118 213 27 34 32 41 186 21 116 237 110 219 115 117 118 407 298 123 111 170 273 451 273 206 122 333 249 85 53 414 254 71 305 2 287 370 440 397 158 471 406 425 161 200 355 338 44 421 27 132 236 439 428 353 22 125 269 208 373 130 213 272 403 203 60 127 378 126 383 417 320 439 9...

output:

1449718791446.06250000000000000000000000000000000000000000000000

result:

wrong answer 1st numbers differ - expected: '0.4703331', found: '1449718791446.0625000', error = '1449718791445.5922852'