1 条题解
-
0
自动搬运
来自洛谷,原作者为

任弈凡
**搬运于
2025-08-24 21:33:17,当前版本为作者最后更新于2019-03-15 16:01:21,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
我们先给出结论:
- 当时,显然,我们只需步,移动即可
- 当时,题目已经给了我们答案
- 当时,此题无解
然而,这是为什么呢?
- 假设我们的原数为,不难发现,每一次分裂即是一次将原数变成一个原数的
我们来画一个图:
1 ······ 额,好像表格出不来我们容易发现,第一行这无限个数的和应是这些数的和无限接近于,在数学上,我们默认为
(我已经找到了一种绝佳的证明方法,可惜空间太短,写不下)!同理,第行的和即是,第三行为,第四行为
所以,这无限个数之和为
而我们已知我们无限分类的和应为
所以,当,$ans=1+\frac{1}{2}*2+\frac{1}{4}*3+\frac{1}{8}*4=\frac{13}{4}$,所以剩下的和为所以无解
那么,当时,依照我们的方法,结果应是所以可以,但是,我们发现,第一行和第一列最多只能有一个数在第一列时,每一个操作都只会在上和右增加数,而第一列数第一行最多只能由第一个数得到,所以时,的最大值为,然而,在有限的操作中,我们不可能使我们填满所有的格子,所以我们的会严格
综上,结论成立
代码(刚刚都解释过了) :
#include<iostream> using namespace std; int n; int main() { cin>>n; if(n==1) { cout<<1<<endl; cout<<1<<" "<<1<<endl; } else if(n==2) { cout<<4<<endl; cout<<1<<" "<<1<<endl; cout<<2<<" "<<1<<endl; cout<<2<<" "<<2<<endl; cout<<1<<" "<<2<<endl; } else cout<<-1; }
- 1
信息
- ID
- 1006
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 4
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者