长春理工大学第十四届程序设计竞赛(重现赛)H
H .Arithmetic Sequence
题目链接:https://ac.nowcoder.com/acm/contest/912/H
题目
数竞选手小r最喜欢做的题型是数列大题,并且每一道都能得到满分。
你可能不相信,但其实他发现了一个结论:只要是数列,无论是给了通项还是给了递推式,无论定义多复杂,都可以被搞成等差数列。这样,只要他精通了等差数列,他就能做出任何数列题目。
等差数列是数列的一种。在等差数列中,任何相邻两项的差相等,该差值称为公差。例如数列3,5,7,9,11,13,⋯就是一个等差数列。 在这个数列中,从第二项起,每项与其前一项之差都等于2,即公差为2。
小r熟知等差数列的各种公式:如果一个等差数列的首项标为a1,公差标为d,那么该等差数列第n项的表达式为
an=a1+(n−1)d
等差数列的任意两项之间存在关系
an=am+(n−m)d
和为Sn,首项a1,末项 an,公差d,项数n,同时可得
Sn=a1+a2+a3+⋯+an=∑n−1i=0(a1+id)=n(a1+an)2=n[2a1+(n−1)d]2
为什么他这么熟练呢?因为小r在小时候就发现这个公式了。在他三年级的时候,他的老师让学生们做从1加到100的习题。小r很快发现数列的规律,用上面的公式得出了5050的答案。于是小r在后来编写你的教科书的时候,经常把如上公式写成一个等差数列的和等于其首项与末项的和乘以项数除以2。
顺便一提,小r在证明上面的公式时,使用了自创的伪证法,先做假设再证明,为世人所称道:
先证n=1时该公式成立:等式左边=a1,等式右边=a1+a12=a1(需注意在此时首项和末项均为a1),两边相等,得证。
再假设n=k时该公式成立,有Sk=(a1+ak)k2=[2a1+(k−1)d]k2。
现在证明n=k+1时该公式成立:
Sk+1=Sk+ak+1=(2a1+(k−1)d)k2+a1+kd
=2a1k+2a1+k2d+kd2=(2a1+kd)(k+1)2=(a1+ak+1)(k+1)2,
因为ak+1=a1+kd,所以,得证。
看到这里,你不由得发出赞叹:为什么小r这么强呢?
然而,强如小r,是不屑于计算一些琐碎的计算的。现在小r给了你一个数X,要求你搞出一个等差数列a使得
Sn=a1+a2+a3+⋯+an=∑n−1i=0(a1+id)=n(a1+an)2=X
输入描述:
输入一个数X,含义见题目描述。
输入保证X在int范围[−231∼231−1]
内。
输出描述:
输出两行,第一行输出一个正整数n,代表你将要给出的数列长度。注意n不能太大,否则会导致输出超限、超时或运行时错误。
第二行输出符合题目要求的数列,每个数之间用空格隔开,含义见题目描述
要求输出的所有数范围在int内,否则视为答案错误。
示例1
输入
6
输出
3
1 2 3
示例2
输入
49
输出
7
1 3 5 7 9 11 13
思路
只要满足是等差数列即可,判断是奇数还是偶数,奇数输出两个n/2即可,偶数输出n/2,n-(n/2)即可,其实最简单的方法就是把该数输出就行,一个数的数列也可以构成等差数列。
#include<bits/stdc++.h>
using namespace std;
int main()
{ int n;
cin>>n;
cout<<2<<endl;
if(n%2==0)
cout<<n/2<<' '<<n/2<<endl;
else
cout<<n/2<<' '<<n-(n/2)<<endl;
return 0;
}
长春理工大学第十四届程序设计竞赛(重现赛)H的更多相关文章
- 长春理工大学第十四届程序设计竞赛(重现赛)M.Orx Zone
链接:https://ac.nowcoder.com/acm/contest/912/M 题意: Daenerys Stormborn, 风暴中出生的丹尼莉丝,the Unburnt, 烧不死的,Qu ...
- 长春理工大学第十四届程序设计竞赛(重现赛)L.Homework Stream
链接:https://ac.nowcoder.com/acm/contest/912/L 题意: 作为大珩班尖子生,小r每天有很多作业要完成,例如工图.工图和工图. 很显然,做作业是要有顺序的.作业之 ...
- 长春理工大学第十四届程序设计竞赛(重现赛)J.Printout
链接:https://ac.nowcoder.com/acm/contest/912/J 题意: 小r为了打校赛,他打算去打字社打印一份包含世界上所有算法的模板. 到了打字社,小r一看价格:总打印页数 ...
- 长春理工大学第十四届程序设计竞赛(重现赛)I.Fate Grand Order
链接:https://ac.nowcoder.com/acm/contest/912/I 题意: Fate Grand Order是型月社发行的角色扮演类手机游戏,是著名的氪金抽卡"垃圾&q ...
- 长春理工大学第十四届程序设计竞赛(重现赛)H.Arithmetic Sequence
题意: 数竞选手小r最喜欢做的题型是数列大题,并且每一道都能得到满分. 你可能不相信,但其实他发现了一个结论:只要是数列,无论是给了通项还是给了递推式,无论定义多复杂,都可以被搞成等差数列.这样,只要 ...
- 长春理工大学第十四届程序设计竞赛(重现赛)F.Successione di Fixoracci
链接:https://ac.nowcoder.com/acm/contest/912/F 题意: 动态规划(Dynamic programming,简称dp)是一种通过把原问题分解为相对简单的子问题的 ...
- 长春理工大学第十四届程序设计竞赛(重现赛)B.Bowling Game
链接:https://ac.nowcoder.com/acm/contest/912/B 题意: 链接:https://ac.nowcoder.com/acm/contest/912/B来源:牛客网 ...
- 长春理工大学第十四届程序设计竞赛(重现赛)J
J.Printout 题目:链接:https://ac.nowcoder.com/acm/contest/912/J 题目: 小r为了打校赛,他打算去打字社打印一份包含世界上所有算法的模板. 到了打字 ...
- 长春理工大学第十四届程序设计竞赛(重现赛)I
I.Fate Grand Order 题目链接:https://ac.nowcoder.com/acm/contest/912/I 题目: Fate Grand Order是型月社发行的角色扮演类手机 ...
- 长春理工大学第十四届程序设计竞赛(重现赛)L
L.Homework Stream 题目链接:https://ac.nowcoder.com/acm/contest/912/L 题目 作为大珩班尖子生,小r每天有很多作业要完成,例如工图.工图和工图 ...
随机推荐
- 使用CMD实现批量重命名[转]
关键字:cmd DOS 批处理 批量 重命名 作者:lifesinger地址:http://www.cnblogs.com/txw1958/archive/2012/12/24/cmd-batch-r ...
- WPF下字体模糊的问题
原文:WPF下字体模糊的问题 一直以来,发现WPF中的小字体下的文字变得比较模糊,比如: WPF与Winform字体显示比较: 为了看到更清楚,我们放大点显示: 放得更大些: 中文.日文等亚洲文字的 ...
- QPainter的坐标系系统的转换
声明:本文原创于yafeilinux的百度博客,http://hi.baidu.com/yafeilinux 转载请注明出处. 我看了这篇文章很好很容易理解.如果看了Qt助手之后更加的形象. 前面一节 ...
- ASP.NET Core Razor 标签助手 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core Razor 标签助手 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core Razor 标签助手 上一章节我们介绍了视图导入,学习了 ...
- Git学习笔记(两)
删除文件 假设需要从Git删除文件,我们必须从删除列表中的跟踪文件(从临时区域中删除).然后提交.可以使用git rm工作订单完成.联合司令部从工作区删除指定的文件.以后就不会出如今未跟踪文件清单中. ...
- scipy —— 丰富的子包(io、cluster)
io,顾名思义,input/output,输入输出接口: 1. io Input and output (scipy.io) - SciPy v0.18.1 Reference Guide wavfi ...
- sql 循环 随机数创建数据
--循环 WHILE @i<40 BEGIN …… end --随机数 SET @money=rand()*100000 例子: DECLARE @i INT DECLARE @money MO ...
- VC++ 使用预编译头
一.使用默认的预编译头 要使用预编译头,我们必须指定一个头文件,这个头文件包含我们不会经常改变的代码和其他的头文件,然后我们用这个头文件来生成一个预编译头文件(.pch文件),想必大家都知 ...
- Win8 Metro(C#)数字图像处理--2.75灰度图像的形态学算法
原文:Win8 Metro(C#)数字图像处理--2.75灰度图像的形态学算法 前面章节中介绍了二值图像的形态学算法,这里讲一下灰度图的形态学算法,主要是公式,代码略. 1,膨胀算法 2,腐蚀算法 3 ...
- System.InvalidOperationException: 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序。
今天在写导入Excel表格的代码,运行时却报异常,异常信息: System.InvalidOperationException: 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0 ...