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\n",j-1);
		break;
		}
		else if(sum==n)
		{printf("%d\n",j);
		break;
		}
	}
	return 0;
}
时间: 2024-11-08 19:21:39

ACM第二次比赛( C )的相关文章

Sdut 2165 Crack Mathmen(数论)(山东省ACM第二届省赛E 题)

Crack Mathmen TimeLimit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描写叙述 Since mathmen take security very seriously, theycommunicate in encrypted messages. They cipher their texts in this way: for everycharacther c in the message, they replace c wit

HDU ACM 1285 确定比赛名次

确定比赛名次,算很简单的拓扑排序了.领接矩阵表示. #include<iostream> using namespace std; int map[501][501]; int degree[501]; int main() { int i,j,k; int n,m,p1,p2; bool f; while(cin>>n>>m) { memset(map,0,sizeof(map)); memset(degree,0,sizeof(degree)); for(i=1;i

ACM第二站————归并排序

转载请注明出处,谢谢!http://www.cnblogs.com/Asimple/p/5459664.html 归并排序————二分的思想 以中间的数为基准,每次排序都将比其小[升序排](大[降序排])的数放在前面,将比其大(小)的数放在后面. 一直重复,知道只有一个数的时候,自然有序. 最后合并分好的有序区间. 总体就是:组间无序,组内有序. 代码如下[升序]: #include <stdlib.h>#include <stdio.h>#define MAX 1000001 i

ACM第二题 生理周期

人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰.在高峰这天,人会在相应的方面表现出色.例如,智力周期的高峰,人会思维敏捷,精力容易高度集中.因为三个周期的周长不同,所以通常三个周期的高峰不会落在同一天.对于每个人,我们想知道何时三个高峰落在同一天.对于每个周期,我们会给出从当前年份的第一天开始,到出现高峰的天数(不一定是第一次高峰出现的时间).你的任务是给定一个从当年第一天开始数的天数,输出从给定时间开始(不包括给定时间)下一

实验楼第二期比赛

题目 文件夹中有三个 csv 数据文件,每个数据文件的格式和描述如下: shiyanlou_user.csv:1000 名实验楼用户数据,包含两列,用户 ID 和用户名 shiyanlou_course.csv:10 门实验楼课程数据,包含两列,课程 ID 和课程名 shiyanlou_usercourse.csv:100 条用户课程学习记录,包含三列,用户 ID,课程 ID 和学习时间(分钟) 目标 创建后的数据库需要满足以下需求: MySQL 服务处于运行状态 新的数据库名称为 shiyan

洛谷2018寒假集训tg第二次比赛第二题Princess Principal题解

这算不算泄题啊...被kkk发现会咕咕咕吧. 题目大意:给定一个数列a,与常数n,m,k然后有m个询问,每个询问给定l,r.问在a[l]到a[r]中最少分成几段,使每段的和不超过k,如果无解,输出Chtholly 样例: input: 5 5 72 3 2 3 43 34 45 51 52 4 output: 11122 解答: 首先观察数据范围,n<=1e+6 可能的复杂度为O(mlogn).暴力能搞30分吧. 其实这题还是很妙的.我们先考虑暴力:对于[L,R],设个res,对[l,r]从左往

剪辑的楼天城的ACM之路

楼天城楼教主的acm心路历程(剪辑) 利用假期空闲之时,将这几年GCJ,ACM,TopCoder 参加的一些重要比赛作个回顾.昨天是GCJ2006 的回忆,今天时间上更早一些吧,我现在还清晰记得3 年前,我刚刚参加ACM 时参加北京赛区2005 和杭州赛区2005 的情况.2005 年ACM-ICPC——酸甜苦辣我进入清华大学开始本科学习的时间是2004 年8 月,在进入清华大学的第一年里,由于基础课学习比较紧张,再加上计算机系不允许大一学生自带电脑,我没有参加2004 年的ACM 比赛.不过在

[ACM] POJ 3071 Football (概率DP)

Football Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2875   Accepted: 1462 Description Consider a single-elimination football tournament involving 2n teams, denoted 1, 2, -, 2n. In each round of the tournament, all teams still in the

【总结】&quot;浪潮杯&quot;第七届ACM山东省省赛山师场总结

翻了翻blog 还能看到去年的省赛第一战的帖子 也是ACM第一战的帖子 很感慨也很愤懑 更多的应该是遗憾.?喵个咪 哥还没退役 还能再战(图:扶老夫起来) Just second 这次的总结帖挺惭愧的.时隔一个月才写.从比完赛后到现在,几个周事情太多太多了--送行 考试 实训 送行 送行--过的我都悲观了=,= 还是正八景回忆省赛细节吧-- 老规矩,十成的总结,吃喝拉撒睡占九成,比赛占一成.精华都在那一成,想看的直接快进好嘞>> 不要点啦,那不是超链接(无奈脸 其实这次比赛挺匆忙的,因为第一天