zoukankan      html  css  js  c++  java
  • ACM第二次比赛( C )

    Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u

    Description

    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 Input

    Input
    1
    Output
    1
    Input
    25
    Output
    4

     

     

    程序分析:此题的考点还是在于累加。第一次是1,第二次就是1+2,第三次就是1+(1+2)+3如此循环,所以这也要求了我们应该把每一次答案放在一个数里,对于这个题目我们用数组更能够解决问题,在用一个for循环把要加的数加进来。但是应该注意的是最后我们sum-n>0的时候,我们是加到超过了n的,所以j应该减1.但是如果sum==0,则j的值就是我们要得到的值。

    程序代码:

    #include<cstdio>
    #include<iostream>
    using namespace std;
    int main( )
    {int a[200]={0};
    	int i,n,j,sum=0;
    	a[1]=1;
    	for(i=2;i<200;i++)
    	{
    		for(j=0;j<=i;j++)
    		a[i]+=j;
    	}	
    		
    	scanf("%d",&n);
    	for(j=1;j<=i;j++)
    	{
    		sum+=a[j];
    		if(sum>n)
    		{	printf("%d
    ",j-1);
    		break;
    		}
    		else if(sum==n)
    		{printf("%d
    ",j);
    		break;
    		}
    	}
    	return 0;
    }
  • 相关阅读:
    用DirectX Audio和DirectShow播放声音和音乐(7)
    [转载]如何自学中医
    光照示例
    用DirectX Audio和DirectShow播放声音和音乐(5)
    DirectX 图形接口指南
    程序员的灯下黑:临渊羡鱼和退而织网
    使用DirectInput进行交互(3)
    Win32开发中最易踏上的地雷
    D3D中粒子效果实现示例
    用DirectX Audio和DirectShow播放声音和音乐(3)
  • 原文地址:https://www.cnblogs.com/yilihua/p/4655422.html
Copyright © 2011-2022 走看看