为什么我的淘淘这么贪吃

P1046 [NOIP2005 普及组] 陶陶摘苹果

尤斯蒂亚 @ 2020-09-20 19:12:52

#include<stdio.h>
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{   int x[10];
    int y,i,k=0;
    for (i=1;i<=10;i++)
    cin >> x[i];

    cin >> y;
    for (i=1;i<=10;i++) 
    if (x[i]<=y+30) k++;

    cout << k;
    return 0;
}

by 起名字重要吗 @ 2020-09-21 21:53:26

数组明显开小了,从a[1]开始输入,最后的\0没位置了,所以错误,把数组开大点吧,再附上我的代码:

#include <bits/stdc++.h>
using namespace std;
int a[15],n,cnt;
int main()
{
    for(int i=1;i<=10;i++)
        cin>>a[i];//读入苹果高度
    cin>>n;//读入陶陶身高
    for(int i=1;i<=10;i++)//一个一个苹果看
        if(n+30>=a[i])//如果陶陶能够着
            cnt++;//能够着的苹果数加一
    cout<<cnt;//输出能够着的苹果数
        return 0;
}

强迫症缩得比较短,凑合着看吧


by pZ_Zq @ 2020-10-04 15:45:07

你把x数组定义大一点,就比如定义在 main 函数外面,定义成25000000,包 AC。


by YUN_0120 @ 2021-08-15 23:19:38

@尤斯蒂亚 数组开大一点就行了,下表就可以从0开始了


by hhwwff @ 2021-08-23 21:30:38

@尤斯蒂亚 两个for循环应该是<10,而不是<=10。


上一页 |