题目描述
圣诞树共有 nn 层,从上向下数第 11 层有 11 个星星、第 22 层有 22 个星星、以此类推,排列成下图所示的形状。
星星和星星之间用绳子连接。第 1,2,\cdots, n - 11,2,⋯,n−1 层的每个星星都向下一层最近的两个星星连一段绳子,最后一层的相邻星星之间连一段绳子。
你能算出如果要布置一棵很大(nn 层)的圣诞树,需要买多少段绳子吗?
输入格式
输入一行一个整数 nn,圣诞树的层数。
输出格式
输出一行一个整数,代表圣诞树中绳子的段数。
输入输出样例
输入
2
输出
3
输入
4
输出
15
说明/提示
样例解释
样例 11
22 层的圣诞树只需 33 段绳。
样例 22
参考题图。
数据规模
所有数据满足 1 ≤ n ≤ 10^31≤n≤103。
本题原始满分为 15\text{pts}15pts。
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin >> n;
cout<<n*n-1;
return 0;
}
这段程序是一个用C++编写的简单程序,其功能是读取一个整数 n
,然后输出 n
的平方减去 1 的结果。下面是对程序的逐行解读:
#include<bits/stdc++.h>
这行代码包含了一个头文件,bits/stdc++.h
是一个包含了几乎所有标准C++库的文件,通常在比赛编程中使用,以便快速引入所有的标准库。
using namespace std;
这行代码表示使用标准命名空间,这样就可以直接使用标准库中的成员,而不需要每次都加上 std::
前缀。
int main(){
这是程序的主函数,程序的执行从这里开始。
int n;
定义一个整型变量 n
,用于存储用户输入的整数。
cin >> n;
使用 cin
从标准输入中读取一个整数并赋值给变量 n
。
cout << n*n - 1;
计算 n
的平方(即 n*n
),然后减去 1,并将结果输出到标准输出(通常是显示屏)。
return 0; }
返回 0 表示程序正常结束。
示例运行
如果用户输入 5
,程序将执行以下计算:
- 计算
5 * 5 - 1
,即25 - 1
,结果为24
- 然后程序将输出
24
总结
这段代码的功能就是输入一个整数,输出其平方减去 1 的值。