1 条题解

  • 2
    @ 2024-4-27 15:47:51

    【题目大意】

    小明有x元钱,商场有n件价格不一的商品,小明从第一件开始依次往后看,买得起就买下来,问最后共买了多少件物品。

    【考纲知识点】

    基本运算、输入输出语句(一级)、一维数组的知识(三级)。

    【解题思路】

    因为本题的金额总数在最后读入,所以我们需要用数组 𝑎 来储存每个商品的金额,随后根据题目进行 𝑛次循环进行判断:

    *如果商品 𝑖 的价格 𝑎𝑖比 𝑥小​,就意味着能买得起它,将总金额减去 𝑎𝑖,并将买到的商品总数 𝑎𝑛𝑠 加上 1;

    *如果买不起,​直接跳过。

    【参考程序】

    #include <bits/stdc++.h>
    using namespace std;
    
    int n,x,ans,a[105];
    // x表示开始时小明有x元钱,ans储存购买物品个数,a数组储存每件物品的价格
    int main(){
        cin>>n;
        for (int i=1;i<=n;i++){
            cin>>a[i];
        }
        cin>>x; //按题目要求输入
        for (int i=1;i<=n;i++){
            if (x>=a[i]){    //判断当前有的金额是否可以购买这件物品
                x-=a[i];     //可以购买的话就买,所持金额减少
                ans++;       //购买物品数量加1
            }
        }
        cout<<ans;   //输出最后购买的物品数量
    
        return 0;
    }
    
    • 1

    [GESP样题 三级] 逛商场

    信息

    ID
    561
    时间
    1000ms
    内存
    128MiB
    难度
    5
    标签
    递交数
    243
    已通过
    101
    上传者