Advertisement

2022年上海11月月赛丙组T2

阅读量:

2022年上海11月月赛丙组T2

搭积木

内存限制: 256 Mb时间限制: 1000 ms

搭积木

题目描述

小爱同学致力于用积木搭建一座金字塔形状的建筑模型。为确保建筑的稳固性良好,在搭建过程中,默认要求每层比上一层多放置一块积木以增强支撑力与稳定性。

金字塔的第 1 层需要放 1 块积木

金字塔的第 2 层需要放 2 块积木

金字塔的第 3 层需要放 3 块积木

金字塔的第 i 层需要放 i 块积木

现在小爱拿到了 n 块积木,请问他最高可以搭出多少层的金字塔?

输入格式

输入一个正整数 n,表示小爱手中的积木数量

输出格式

输出一个正整数,表示小爱最高能搭的金字塔层数

数据范围

对于 50% 的数据,1≤n≤1,000
对于 100% 的数据,1≤n≤1,000,000,000

思路:

while循环枚举,累加和最后判断与n的大小。

代码:

复制代码
    #include<bits/stdc++.h>
    using namespace std;
    
    int main(){
    	long long a=0,i=1,n;
    	cin>>n;
    	while(a<=n){
    		a=a+i;
    		i++;	
    	}
    	cout<<i-2<<endl;
    }

全部评论 (0)

还没有任何评论哟~