Codeforces Round #280 (Div. 2)-A. Vanya and Cubes_html/css_WEB-ITnose

WBOY
發布: 2016-06-24 11:53:07
原創
1096 人瀏覽過

Vanya and Cubes

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

Vanya got n cubes. He decided to build a pyramid from them. Vanya wants to build the pyramid as follows: the top level of the pyramid must consist of 1 cube, the second level must consist of 1?+?2?=?3 cubes, the third level must have 1?+?2?+?3?=?6 cubes, and so on. Thus, the i-th level of the pyramid must have 1?+?2?+?...?+?(i?-?1)?+?i cubes.

Vanya wants to know what is the maximum height of the pyramid that he can make using the given cubes.

Input

The first line contains integer n (1?≤?n?≤?104) ? the number of cubes given to Vanya.

Output

Print the maximum possible height of the pyramid in the single line.

Sample test(s)

input

output

input

25
登入後複製

output

Note

Illustration to the second sample:








题意:最高层有1个 cube, 第二层有1?+?2?=?3 个cubes, 第三层有1?+?2?+?3?=?6 个 cubes, 依次递增. 然而, 第i层必须有 1?+?2?+?...?+?(i?-?1)?+?i 个 cubes.给一个n,问n个cube最多可以构成多少层。


分析;水题,直接找规律的题。看了一眼,感觉太水,就没敢暴力。。。瞬间想起了以前跟tourist学的一个方法,把个n的区间,都预处理成最高层数,然后查询就是O(1)的了。可惜了,边玩边水,硬是水了一个小时。。。最后看别人的代码,直接暴力也不超时。只能说,数据太弱了。




AC代码:

#include <cstdio>#include <algorithm>using namespace std;int a[10005];int main(){//  freopen("in.txt", "r", stdin);    int foo = 0;    int sum = 0;    for(int i=1; ; i++){        int t = foo;        if(sum > 10000) break;        foo += i;        for(int j=0; j<foo sum j a i-1 foo int n while printf return>  <br>  <br>  <p></p>  <p><br> </p>  <p>切记,下次不能在水题上浪费时间了。。。</p>  <p><br> </p>  <p><br> </p> </foo></algorithm></cstdio>
登入後複製
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板