news 2026/6/10 17:41:55

P13013 [GESP202506 五级] 奖品兑换

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
P13013 [GESP202506 五级] 奖品兑换

时间限制400ms

内存限制512.00M

难度普及/提高−

历史分数100

提交记录 查看题解 题目反馈

标签

GESP

题目背景

为了保证只有时间复杂度正确的代码能够通过本题,时限下降为 400 毫秒。

题目描述

班主任给上课专心听讲、认真完成作业的同学们分别发放了若干张课堂优秀券和作业优秀券。同学们可以使用这两种券找班主任兑换奖品。具体来说,可以使用 a 张课堂优秀券和 b 张作业优秀券兑换一份奖品,或者使用 b 张课堂优秀券和 a 张作业优秀券兑换一份奖品。

现在小 A 有 n 张课堂优秀券和 m 张作业优秀券,他最多能兑换多少份奖品呢?

输入格式

第一行,两个正整数 n,m,分别表示小 A 持有的课堂优秀券和作业优秀券的数量。

第二行,两个正整数 a,b,表示兑换一份奖品所需的两种券的数量。

输出格式

输出共一行,一个整数,表示最多能兑换的奖品份数。

输入输出样例

输入 #1复制

8 8 2 1

输出 #1复制

5

输入 #2复制

314159 2653589 27 1828

输出 #2复制

1599

说明/提示

对于 60% 的测试点,保证 1≤a,b≤100,1≤n,m≤500。

对于所有测试点,保证 1≤a,b≤104,1≤n,m≤109。

第一种做法暴力(得80分):

#include <bits/stdc++.h> using namespace std; #define int long long const int P=1e9+7; const int N=1e5+10; int n,m,a,b,ans; signed main(){ ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin>>n>>m; cin>>a>>b; if(a<b) swap(a,b);//确保 a 较大 while(n>=a || m>=a){ if(n<m)swap(n,m); if(m<b)break; n-=a; m-=b; ans++;//从n,m中选择较大的变量减去较大的花费 } cout<<ans<<endl; return 0; }

第二种做法AC代码:

#include <bits/stdc++.h> #define int long long using namespace std; const int P=1e9+7; const int N=1e5+10; int n,m,a,b,ans; int s,d; signed main(){ cin>>n>>m; cin>>a>>b; if(a<b)swap(a,b); if(a==b){//进行特判 cout<<min(n,m)/a<<endl; return 0; } s=a+b,d=a-b; while(n>=a||m>=a){ if(n<m)swap(n,m); int x=(n-m)/d; if(x==0){//当n-m<d时 int y=m/s; ans+=y*2; n-=y*s,m-=y*s; x=2; } int v=min(n/a,min(m/b,x)); ans+=v,n-=v*a,m-=v*b; if(m<b) break;//不可进行兑换 } cout<<ans<<endl; return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 16:31:43

SKT A.X 3.1:韩国主权AI里程碑,重新定义韩语大模型标准

SKT A.X 3.1&#xff1a;韩国主权AI里程碑&#xff0c;重新定义韩语大模型标准 【免费下载链接】A.X-3.1 项目地址: https://ai.gitcode.com/hf_mirrors/skt/A.X-3.1 导语&#xff1a;韩国AI自主化战略核心成果落地 2025年7月24日&#xff0c;韩国电信巨头SK Telecom正…

作者头像 李华
网站建设 2026/6/10 14:30:44

理解 Aerospike 的 Flexible Storage三种存储引擎怎么玩

1. 存储介质&#xff1a;先把“砖头”讲清楚 Aerospike 支持的存储介质主要有三类&#xff1a;DRAM&#xff08;内存&#xff09; 读写延迟最低&#xff0c;成本也最高NVMe Flash / SSD 非易失性存储&#xff0c;延迟一般在几十到几百微秒容量大、价格相对便宜&#xff0c;是 H…

作者头像 李华
网站建设 2026/6/9 23:59:58

不用记命令也能管容器,Portainer+CPolar 让远程运维变简单

文章目录 前言1. 安装Portainer1.1 访问Portainer Web界面 2. 使用Portainer创建Nginx容器3. 将Web静态站点实现公网访问4. 配置Web站点公网访问地址4.1公网访问Web站点 5. 固定Web静态站点公网地址6. 固定公网地址访问Web静态站点 前言 Portainer 是一款可视化的 Docker 容器…

作者头像 李华
网站建设 2026/6/10 14:15:46

ManySpeech.AliParaformerAsr 使用指南

anySpeech.AliParaformerAsr 是 ManySpeech 语音处理套件中一个专门的语音识别组件&#xff0c;支持paraformer-large、paraformer-seaco-large、sensevoice-small 等模型&#xff0c;其底层借助 Microsoft.ML.OnnxRuntime 对 onnx 模型进行解码&#xff0c;具备诸多优势&#…

作者头像 李华
网站建设 2026/6/10 14:16:05

Webhook.site开源版本完整部署指南:私有化Webhook接收解决方案

Webhook.site开源版本完整部署指南&#xff1a;私有化Webhook接收解决方案 【免费下载链接】webhook.site webhooksite/webhook.site: 是一个简单的 Webhook 接收和回调服务器&#xff0c;它可以接收 HTTP POST 请求并将其转发到指定的回调 URL。适合用于实现简单的 Webhook 接…

作者头像 李华