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

Max_robot
这个家伙很懒,什么也没有留下搬运于
2025-08-24 21:15:39,当前版本为作者最后更新于2025-02-15 13:42:00,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
看到这一题,首先想到的就是用一个数组吧?不过仔细一想,好像不需要。为什么呢?因为 ,你不管想输出哪一个数字,你直接输出就行了。因为 ,所以输出 就是输出 。
那就好办了,只需找最中间的数字不就好了?
我们来举一个例子来推理。
1 2 3 4 5
不难发现,最中间的数字是三,在观察他的位置,会发现他在 这里,也就是 。正好等于三,那么我们不仅把开头说到的证明了,而且知道了 中间是 。
然后我们处理下一个问题,如果 为偶数,中间的两个数是什么呢?依旧是举例子。
1 2 3 4
我们会发现,中间两个数是 2 和 3。2 是 ,3 是 。那么我们就知道了中间那个数是几,最后加起来就好了。
看,我们通过举例子成功推断出来了这道题。所以以后做题也可以通过举例子来做。
#include<bits/stdc++.h> using namespace std; long long n; int main(){ cin>>n; if(n%2!=0){ cout<<(n+1)/2<<endl; }else if(n%2==0){ cout<<n/2+n/2+1<<endl; } return 0; }
- 1
信息
- ID
- 9148
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者