QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#107614#2303. Lucky ShirtChen_jrTL 0ms0kbC++14890b2023-05-22 09:02:382023-05-22 09:02:45

Judging History

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

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-05-22 09:02:45]
  • 评测
  • 测评结果:TL
  • 用时:0ms
  • 内存:0kb
  • [2023-05-22 09:02:38]
  • 提交

answer

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef unsigned long long ull;
typedef pair<int, int> pii;

int read(){
	int x = 0; char c = getchar();
	while(!isdigit(c))c = getchar();
	do{x = x * 10 + (c ^ 48); c = getchar();}while(isdigit(c));
	return x;
}
const int maxn = 1e6 + 55;
int n, k;
double f[maxn], g[maxn];
int main(){
	n = read(); f[read()] = 1; k = read();
	for(int i = 1; i <= k; ++i){
		for(int j = 1; j <= n; ++j)g[j] = (double)(j - 1.0) / (double)n * f[j];
		for(int j = 1; j <= n; ++j)f[j] += f[j - 1];
		for(int j = 1; j <= n; ++j)f[j] /= (double)(j * n);
		for(int j = n; j >= 1; --j)f[j] += f[j + 1];
		for(int j = 1; j <= n; ++j)f[j] += g[j];
		for(int j = 1; j <= n; ++j)printf("%.5Lf ",f[j]); printf("\n");
	}
	double ans = 0;
	for(int i = 1; i <= n; ++i)ans += f[i] * i;
	printf("%.20Lf\n",ans);
	return 0;
}

详细

Test #1:

score: 0
Time Limit Exceeded

input:

1000000 1000000 1000000

output:

nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan ...

result: