1. 程式人生 > >第三次周賽B題(CodeForces-492A)

第三次周賽B題(CodeForces-492A)

問題連結:https://vjudge.net/problem/CodeForces-492A

問題簡述:疊金字塔。第一層需要1個cube,第二層需要1+2=3個cube,第三層需要1+2+3=6個cube,第四層1+2+3+4=10個cube。現在有n個cube,問能疊多少層?

AC程式碼:

#include <iostream>
using namespace std;
int main()
{
	long long a[200] = { 0,1 }, b[200] = { 0,1 };
	int n;
	cin >> n;
	for (int i = 2; i <
200; i++) { a[i] = a[i - 1] + i; b[i] = b[i - 1] + a[i]; if (b[i] > n) { cout << i-1 << endl; break; } } }