11 条题解
-
-2
模拟、数学
测试点
容易得到在 时答案为 ,在 时答案为 。
测试点
暴力计算 后取最大值。
测试点
序列 的最大值是 和 ,读者可以自行查看题解结尾处的证明。
当 时答案为 ,否则答案为 。
单组数据时间复杂度 。
#include<bits/stdc++.h> using namespace std; int T,n,k; int main(){ scanf("%d",&T); while(T--){ scanf("%d%d",&n,&k); if(n==1) printf("%d.0\n",k); else if(k%2==0) printf("%d.0\n",k+k/2); else printf("%d.5\n",k+k/2); } return 0; }
证明:若 ,由于 ,,那么 $T_{i+2}-T_{i+1}=\dfrac{T_{i+1}}{i+2}- \dfrac{T_i}{i+1}<0$,因为 的分母更大,分子更小。
因为 ,所以 ,又因为 所以 。以此类推,只要存在 ,那么对于所有大于 的整数 都有 ,又因为 ,所以序列 的最大值只可能在 中取到,可知序列 的最大值为 。
信息
- ID
- 13
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 2
- 标签
- 递交数
- 1259
- 已通过
- 336
- 上传者