QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#35326 | #968. Extreme Wealth | Froggygua | WA | 3ms | 3844kb | C++17 | 1.2kb | 2022-06-15 09:25:09 | 2022-06-15 09:25:11 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
#define N 2020
typedef long long ll;
const long double PI=acosl(-1.0L);
ll n,m;
long double dp[N][N];
long double Get(ll n){
if(!n)return 0;
return n*logl(n)-n+0.5*logl(2*n*PI);
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.setf(ios::fixed);
cout.precision(10);
cin>>n>>m;
/*
for(int i=0;i<=n;++i){
for(int j=0;j<=m;++j){
if(!i){
dp[i][j]=powl(2.0L,j);
}
else if(!j){
dp[i][j]=powl(2.0L,i);
}
else{
long double X=dp[i-1][j],Y=dp[i][j-1];
dp[i][j]=2.0*X*Y/(X+Y);
}
}
}
if(dp[n][m]>1e9){
cout<<"Extreme Wealth\n";
return 0;
}
cout<<dp[n][m]<<'\n';
return 0;
*/
if(n<=1000000&&m<=1000000){
if(n>m)swap(n,m);
long double ans=1;
int p=1;
for(int i=1;i<=n+m;++i){
ans*=2;
while(ans>1&&p<=n){
ans=ans*p/(m+p);
++p;
}
if(ans>1e20){
cout<<"Extreme Wealth\n";
return 0;
}
}
if(ans>1e9){
cout<<"Extreme Wealth\n";
return 0;
}
cout<<ans<<'\n';
return 0;
}
long double X=logl(2.0L)*(n+m);
long double Y=Get(n+m)-Get(n)-Get(m);
if(X-Y>30||exp(X-Y)>1e9){
cout<<"Extreme Wealth\n";
return 0;
}
cout<<exp(X-Y)<<'\n';
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 3ms
memory: 3776kb
input:
3 2
output:
3.2000000000
result:
ok OK 3.20000000, real ans = 3.20000000, error = 0.00000000
Test #2:
score: 0
Accepted
time: 2ms
memory: 3784kb
input:
0 29
output:
536870912.0000000000
result:
ok OK 536870912.00000000, real ans = 536870912.00000000, error = 0.00000000
Test #3:
score: 0
Accepted
time: 2ms
memory: 3648kb
input:
30 0
output:
Extreme Wealth
result:
ok OK Extreme Wealth, real ans = 1073741824.00000000
Test #4:
score: 0
Accepted
time: 2ms
memory: 3772kb
input:
37 73
output:
5028.4888595832
result:
ok OK 5028.48885958, real ans = 5028.48885958, error = 0.00000000
Test #5:
score: 0
Accepted
time: 2ms
memory: 3832kb
input:
10000000000 10000000000
output:
177245.3840765427
result:
ok OK 177245.38407654, real ans = 177245.38509055, error = 0.00000001
Test #6:
score: 0
Accepted
time: 2ms
memory: 3732kb
input:
10000000000 9999412550
output:
989753698.2832225020
result:
ok OK 989753698.28322256, real ans = 989753719.13242424, error = 0.00000002
Test #7:
score: 0
Accepted
time: 1ms
memory: 3828kb
input:
10000000000 9999412400
output:
994124831.0786639510
result:
ok OK 994124831.07866395, real ans = 994124819.34340525, error = 0.00000001
Test #8:
score: 0
Accepted
time: 2ms
memory: 3844kb
input:
10000000000 9999412200
output:
999984760.8850831428
result:
ok OK 999984760.88508320, real ans = 999984746.74201429, error = 0.00000001
Test #9:
score: 0
Accepted
time: 2ms
memory: 3640kb
input:
10000000000 9999412199
output:
Extreme Wealth
result:
ok OK Extreme Wealth, real ans = 1000014138.02130949
Test #10:
score: 0
Accepted
time: 2ms
memory: 3696kb
input:
10000000000 9999411862
output:
Extreme Wealth
result:
ok OK Extreme Wealth, real ans = 1009971237.25187039
Test #11:
score: 0
Accepted
time: 1ms
memory: 3656kb
input:
10000000000 9999411861
output:
Extreme Wealth
result:
ok OK Extreme Wealth, real ans = 1010000939.12199187
Test #12:
score: 0
Accepted
time: 2ms
memory: 3596kb
input:
1000000000 100000000
output:
Extreme Wealth
result:
ok OK Extreme Wealth, real ans = 2000288524.07298231
Test #13:
score: 0
Accepted
time: 0ms
memory: 3728kb
input:
999900000 999999999
output:
682861.8596921154
result:
ok OK 682861.85969212, real ans = 682861.86152047, error = 0.00000000
Test #14:
score: 0
Accepted
time: 1ms
memory: 3720kb
input:
100000 100500
output:
1046.8242075264
result:
ok OK 1046.82420753, real ans = 1046.82420753, error = 0.00000000
Test #15:
score: 0
Accepted
time: 2ms
memory: 3804kb
input:
1000000000000 1000000000000
output:
1772452.2599206536
result:
ok OK 1772452.25992065, real ans = 1772453.85090552, error = 0.00000090
Test #16:
score: -100
Wrong Answer
time: 0ms
memory: 3836kb
input:
1000000000000 999995000000
output:
918170514.2970222770
result:
wrong answer WA 918170514.29702222, real ans = 918167024.49532175, error = 0.00000380