解题思路:
这道题是一道规律题,就是一颗树能长多高完全取决于什么时候被修剪。
2 : 2 2
3 : 4 2 4
4 : 6 4 4 6
5 : 8 6 4 6 8
6 :10 8 6 6 8 10
我们发现每增加一棵树,都会使得原来的最高长度增加2。由此我们就可以根据这个规律去输出每棵树的最高长度。
注意事项:
参考代码:
#include<iostream>
#include<vector>
using namespace std;
void f(int fs){
int count = 2 + 2 * (fs - 1);
int c = fs / 2 ;
for(int i = 1;i <= c;i++){
count -= 2;
cout<<count<<endl;
}
if(fs % 2 != 0){
cout<<count - 2<<endl;
c += 1;
}
for(int i = c + 1;i <= fs;i++){
cout<<count<<endl;
count += 2;
}
}
int main(){
int N;
cin>>N;
int c = 2;
if(N == 1)
cout<<0;
else{
f(N);
}
}
0.0分
0 人评分
C语言训练-谁家孩子跑最慢* (C语言代码)浏览:1549 |
C语言训练-角谷猜想 (C++代码)(3N+1问题)浏览:1855 |
C二级辅导-同因查找 (C语言代码)浏览:627 |
简单的a+b (C语言代码)浏览:595 |
上车人数 (C语言代码)浏览:817 |
C语言程序设计教程(第三版)课后习题1.5 (C++代码)浏览:1115 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:593 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:727 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:585 |
1128题解(返回值为数组的情况)浏览:571 |