永发信息网

C语言 吃糖果

答案:2  悬赏:20  手机版
解决时间 2021-11-22 14:55
C语言 吃糖果
最佳答案
是,你程序的问题就是 int num[maxn];这句话,这句话会造成堆栈溢出,它分配不了这么大的空间。

解决方法:
我觉得这个题目的考点就在这个大空间的上面。我还没有编,不过我觉得你可以考虑不存储这个大的数组,只处理当前输入的数字。

你可以观察一下给的两组数据,第一组4 1 1 , 4比剩下的数的和要大两个,所以如果把4当成一个,其他全部当成一个,那一边拿一个会导致4这边,最少剩一个,也就是先拿会剩一个。
所以,我觉得可以下这个结论,这对数中最大的数,比除他以外的其他数的和大2,那就是no。其他的我觉得都是yes。

所以,可以这么编。
输入n
for i = 1 ~ n
{
max;
sum;
输入kind
for j = 1~ kind
{
输入当前的数input
max 用来找到这堆数中最大的数
sum 用来记录总和。不过要注意sum也可能超,如果可以申明__int64类型就很简单了
}
if( (max - (sum-max)) >=2 ) 输出 no
else 输出 yes
}
全部回答
我测试了几次,把你的#define maxn 定义的值改小了一点,我改成了100,程序可以正常运行了...估计1000000太大了吧,建议数组长度不要太大,语法上是没什么错,但是程序很可能就崩溃了,像你这个一样..你试试吧,把1000000改小一点!追问可是题目有要求啊。。。追答那就再看下你的算法在逻辑上有错没,顺便检查一下数组有没有越界!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
士尔其现在气温怎么样?
绿豆瓣怎么做好吃,绿豆瓣的吃法
三龙电玩地址在什么地方,想过去办事,
java JFrame窗体已有组件的代码修改
大庆到内蒙古锡林郭勒坐火车怎么走
小心翼翼和银光闪闪的意思是什么
可以帮我p下高考成绩吗
韩束墨菊经过国家激素检测吗
中国最大的泳衣面料市场在哪?
即墨到吉林通化火票多少钱,几个小时到
A GUCC1 人气明星眼镜 全框板材眼镜架 复古眼
三星数码相机ES78价格多少
长虹电视系统设置里面型号是ud49d6000i-6089
负债45万,我该怎么办
有种糖上面有个杏仁叫什么名字
推荐资讯
江门市交管局处理交通违法办证中心地址在哪,
一个淘宝店,可以同时卖几千块的商品跟十块的
小时候有一篇课文是讲云的谁知道
一个10安的墙上插座接了一个16安的排插,上边
八字合婚:男1993年3.15和女1996年1.04配吗?
南京消费水平高不高?
短文第四自然段突出河蚌努力思考的词语是什么
谚语或歇后语填空 1.欢庆六一联欢会上,我们
羌族刺绣的传承人物
福寿街地址在哪,我要去那里办事
微型隔膜泵/微型真空泵它的工作原理是什
皮肤补水用的喷雾器里面需装什么水呀?急切想
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?