1 条题解
-
0
- 化简公式 ,枚举 0 的数量 ,判断是否合法
- 答案:11027421
关于 的求法:库中给出了
log(x); // 以常数 e为底 log10(x); // 以 10为底 log2(x); // 以 2为底
如果要求以 a 为底 b的对数:, 可以利用:$log_{a}(b)= \frac{log_c(b)}{log_c(a)} =log(b)/log(a)$。
C++参考手册:https://zh.cppreference.com/w/cpp/numeric/math
#include <bits/stdc++.h> using namespace std; typedef long long ll; const int N = 1e6 + 10, INF = 0x3f3f3f3f; int main() { int n = 23333333; double P = 11625907.5798; for (int x = 0; x < n / 2; x++) { double t0 = x, t1 = n - x; double p0 = t0 / n, p1 = t1 / n; double s0 = -t0 * p0 * log2(p0); double s1 = -t1 * p1 * log2(p1); if (abs(s0 + s1 - P) < 1e-4) { cout << x << endl, exit(0); } } return 0; }
- 1
信息
- ID
- 2024
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 4
- 已通过
- 3
- 上传者