1419B - Stairs
思维:
我们可以发现,nice stairs的长度为1,3,7,15... 不难发现,长度变化每次*2+1,而每次长度的nice stairs是等差数列,所以当长度为n时,一共有 个正方形
#include <iostream>
using namespace std;
long long n;
int main () {
int T;
cin >> T;
while (T--) {
cin >> n;
int ans = 0;
long long cnt = 1;
while (n >= cnt*(cnt+1)/2) {
n -= cnt*(cnt+1)/2;
ans++;
cnt = cnt*2+1;
}
cout << ans << endl;
}
return 0;
}
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步