1037 Magic Coupon (25 分) (水题)

本文探讨了如何使用C++实现对整数数组的排序和乘积计算,通过比较和优先级排序技巧,处理了正负数的特殊情况。核心算法涉及快速排序和条件判断。

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int maxn=1e5+100;
int q[maxn];
int w[maxn];
int cmp(int a,int b)
{
    return a>b;
}
int main()
{
    int n,m;
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
    {
        scanf("%d",&q[i]);
    }
    scanf("%d",&m);
    for(int i=1;i<=m;i++)
    {
        scanf("%d",&w[i]);
    }
    sort(q+1,q+1+n,cmp);
    sort(w+1,w+1+m,cmp);

    int ans=0;
    for(int i=1;i<=min(n,m);i++)
    {
        if(q[i]<0||w[i]<0)
        {
            break;
        }
        ans+=q[i]*w[i];
    }
    sort(q+1,q+1+n);
    sort(w+1,w+1+m);
    for(int i=1;i<=min(n,m);i++)
    {
        if(q[i]>0||w[i]>0)
        {
            break;
        }
        ans+=q[i]*w[i];
    }
    printf("%d\n",ans);
}

### 关于“肥宅快乐”的编程目设计 虽然当前提供的引用并未直接涉及“肥宅快乐”或类似的趣味主,但可以基于这些基础编程概念来构建与之相关的编程目。以下是围绕该主展开的设计思路: #### 目一:计算购买“肥宅快乐”的总花费 假设每瓶“肥宅快乐”的价格为3元,用户可以通过程序输入他们计划购买的数量以及是否有优惠券(如满减)。程序应根据用户的输入计算并输出最终需支付的金额。 ```python price_per_bottle = 3 # 单价 quantity = int(input("请输入您要购买的‘肥宅快乐’数量: ")) coupon_discount = input("是否使用优惠券?(yes/no): ") if coupon_discount.lower() == 'yes': total_cost = price_per_bottle * quantity * 0.9 # 假设优惠券提供10%折扣 else: total_cost = price_per_bottle * quantity print(f"您的总花费为:{total_cost:.2f}元") # 输出保留两位小数的结果[^1] ``` #### 目二:“肥宅快乐”的库存管理系统 创建一个简单的模拟系统,用于管理商店中的“肥宅快乐”库存。允许用户执行以下操作之一:增加库存量、减少库存量或者查询当前剩余库存。 ```python class InventoryManager: def __init__(self, initial_stock=100): self.stock = initial_stock def add_stock(self, amount): self.stock += amount print(f"已添加{amount}件商品,现有库存为 {self.stock}.") def sell_stock(self, amount): if amount > self.stock: print("库存不足!") else: self.stock -= amount print(f"成功售出{amount}件商品,现有库存为 {self.stock}.") def check_stock(self): print(f"当前库存为 {self.stock}.") manager = InventoryManager() action = input("请选择动作 (add/sell/check): ") if action == "add": num_add = int(input("请输入要添加的商品数量: ")) manager.add_stock(num_add) elif action == "sell": num_sell = int(input("请输入要出售的商品数量: ")) manager.sell_stock(num_sell) elif action == "check": manager.check_stock() ``` 上述代码片段展示了如何通过类定义实现基本的对象导向功能[^2]。 --- ### 总结 以上两个例子别涵盖了条件语句的应用和面向对象的基础知识,在实际教学过程中可以根据学生的平调整难度。同时,“肥宅快乐”作为一个贴近生活的案例能够激发学生的学习兴趣。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值