题解:P11397 界分数
结论
第一步纯分子
- 若
x 是奇数,则分子和分母都+1 。 - 若
x 是偶数,则分子+1 。
这样,每次
感性理解的缺陷
一个常见的感性理解是:
- 由于
\dfrac{\log_2 n}{n-1} 在n=2 时取最大值,因此每次约分约掉2 的“性价比”是最高的。 - 约掉相同的
\gcd ,约分的时机越早,+1 次数越小。
然而这些感性理解有一些问题,包括但不限于:
- 完全没有考虑约分后分子不是
1 的情形,如\dfrac{1}{5},\dfrac{2}{5},\dfrac 3 5,\dfrac 2 3, \dfrac 1 1 这种路径为什么一定不优。 - 背包问题告诉我们,性价比最大不代表总价值最大。
- 事实上,如果初始分子不是
1 ,结论完全不长这样,但是你能写一个类似的“感性理解”出来,说明确实还有逻辑漏洞。
出题人也给过我一些补丁,但是打上补丁之后,因为无法穷尽所有可能的策略,所以仍然有一些新问题。
参考证明
下面的论证均从
设
根据定义,
-
- 此时必有
\dfrac{a_i}{k_i}\le a_{i+1}\le \dfrac{a_{i}+1 }{k_i} 。
Lemma
Proof 依题意,
Proof of theorem 由数学归纳法,有
若有的
由于
参考代码
#include<bits/stdc++.h>
using namespace std;
const long long Mod=998244353;
int main(){
long long n,ans=1;
scanf("%lld",&n);
for(int i=0;i<=61;i++){
long long l=(1ll<<i)+1,r=min(n,2ll<<i);
if(l>n)break;
ans=(ans+(r-l+1)%Mod*(i+2))%Mod;
}
printf("%lld\n",ans);
return 0;
}