深入解析:CodeForces479A-Expression(数学+枚举)

news/2025/9/27 9:25:16/文章来源:https://www.cnblogs.com/tlnshuju/p/19114751

深入解析:CodeForces479A-Expression(数学+枚举)

2025-09-27 09:20  tlnshuju  阅读(0)  评论(0)    收藏  举报

题目描述

皮特亚在学校读书,他特别热爱数学。最近他的班级正在学习算术表达式。上节课老师在黑板上写了三个正整数 a,b,ca,b,ca,b,c

题目要求在这些数字之间插入加号 + 和乘号 *,还可以使用括号,使得最终表达式的结果尽可能大。

举个例子:假设老师在黑板上写了 1,2,31,2,31,2,3 三个数字。以下是几种插入运算符和括号的方式:

  • 1+2×3=71+2\times3=71+2×3=7
  • 1×(2+3)=51\times(2+3)=51×(2+3)=5
  • 1×2×3=61\times2\times3=61×2×3=6
  • (1+2)×3=9(1+2)\times3=9(1+2)×3=9

注意运算符只能插入在 aaabbb 之间,以及 bbbccc 之间,也就是说不能交换数字的顺序。

例如在这个例子中,你不能得到 (1+3)×2(1+3)\times2(1+3)×2 这样的表达式。

显然,在这个例子中能获得的最大值是 999

你的任务是:给定 a,b,ca,b,ca,b,c,输出你能获得的最大值。

输入格式

输入包含三个整数 a,b,ca,b,ca,b,c,每个数字独占一行。

输出格式

输出你能获得的表达式的最大值。

样例 #1

输入

1
2
3

输出

9

样例 #2

输入

2
10
3

输出

60

提示

数据范围:1≤a,b,c≤101 \leq a,b,c \leq 101a,b,c10

提交链接

Expression

思路分析

枚举 a∼ba \sim bab之间的符号、 b∼cb \sim cbc 之间的符号。

  1. a+b+ca + b + ca+b+c
  2. a∗b∗ca * b * cabc
  3. a∗b+ca * b + cab+c
  4. a+b∗ca + b * ca+bc

对于 333444 这两种情况,考虑括号的位置,产生两种新的情况:

  1. a∗(b+c)a * (b + c)a(b+c)
  2. (a+b)∗c(a + b) * c(a+b)c

对于 666 种情况求最大值。

参考代码

#include<bits/stdc++.h>using namespace std;int main(){int a , b , c;cin >> a >> b >> c;int mx = 0;/*求所有情况中的最大值*/mx = max(mx , a + b + c);/*max():求两者中的最大值*/mx = max(mx , a * b * c);mx = max(mx , a + b * c);mx = max(mx , (a + b) * c);mx = max(mx , a * b + c);mx = max(mx , a * (b + c));cout << mx;return 0;}

思维进阶:

只需要求1、2、5、61、2、5、61256 这四种情况即可。

555 是由 333 的得来的,分析 式子 555 和式子 333 的关系:

式子5−式子3=a∗(b+c)−(a∗b+c)=a∗b+a∗c−a∗b−c=a∗c−c=c∗(a−1)式子 5 - 式子 3 = a * (b + c) - (a * b + c) = a * b + a * c - a * b - c = a *c - c = c * (a - 1) 式子5式子3=a(b+c)(ab+c)=ab+acabc=acc=c(a1)

数据范围:1≤a,b,c≤101 \leq a,b,c \leq 101a,b,c10,所以 a−1≥0a - 1≥ 0a10 ,即 式子 555 ≥ 式子 333,只考虑式子 555 即可。

同理,对于式子 444 和式子 666,只考虑式子 666 即可。

参考代码

#include<bits/stdc++.h>using namespace std;int main(){int a , b , c;cin >> a >> b >> c;int mx = 0;/*求所有情况中的最大值*/mx = max(mx , a + b + c);/*max():求两者中的最大值*/mx = max(mx , a * b * c);//mx = max(mx , a + b * c);mx = max(mx , (a + b) * c);//mx = max(mx , a * b + c);mx = max(mx , a * (b + c));cout << mx;return 0;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919295.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

完整教程:编程语言综合教程:Java、Python、C++、Go 全面解析

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

英语_阅读_Robot

People often ask smartphones questions and expect quick answers. 人们经常向智能手机提问,并期望迅速得到答案。 So what makes humans trust smart machines? Researchers want to know. 那么,是什么让人类信任…

网站怎么做不违法怎样怎样优化网站建设

1.鞋子到了 2.网络一天没有好 3. 又吸烟了,难受 4. 单双杠&#xff1a;60 5. 洗澡&#xff1a;no 6. 仰卧起坐&#xff1a;100 7. 洗脚/刷牙 8.曾的车 9.老梁关世界 总结&#xff1a;今天还好吧&#xff0c;但我还是很想znn&#xff01;&#xff01; 转载于:https://www.cnblo…

做网站后台要学什么自己做视频网站 在优酷推广

前一天晚上&#xff0c;用360清理缓存文件后&#xff0c;早上起来一看快捷方式的箭头图标不见了&#xff0c;左下角变成了一片白色。试了很多方法&#xff0c;比如说删除iconcache.db&#xff0c;然后重启资源管理器等等&#xff0c;发现没有用。然后&#xff0c;装上360桌面助…

模仿Teamcenter(UIHealthDetector) 实现 系统托盘

模仿Teamcenter(UIHealthDetector) 实现包位置: com.teamcenter.rac.common.health.UIHealthDetector (com.teamcenter.rac.common_xxxx.jar) 环境:eclipse4.15 + java 8 + windowbuilder项目结构项目主要代码 pac…

一个纯净的自动微分框架—autograd

本文介绍了一个可以基于CPU和numpy的自动微分计算框架。如果只是需要使用自动微分计算的功能,就可以直接在CPU环境下简便的部署,快捷的完成环境搭建。技术背景 自动微分是一个在深度学习等计算领域非常常用的一个工具…

商城网站建设论文如何用2级域名做网站

简单来说&#xff0c;就是接受前端微信小程序发来的数据保存到数据库&#xff0c;这是我写的第二个接口&#xff0c;相比前一个要稍微简单一些&#xff0c;而且因为前端页面也是我写的&#xff0c;参数类型自然是无缝对接_ 前端页面大概长这个样子 先用apifox模拟发送请求测试…

PHP 8.2 vs PHP 8.3 对比:新功能、性能提升和迁移技巧

PHP 8.2 vs PHP 8.3 对比:新功能、性能提升和迁移技巧 个人目前正在使用 8.2,官方其实在去年也停止维护了。为什么还在使用,就是因为 PHP 社区生态还没完全跟上。但是 PHP 一直在快速演进,PHP 8.3 发布后又带来了不…

安徽网站建设的基本步骤wordpress微信绑定域名

往往&#xff0c;我们一提到指针函数和函数指针的时候&#xff0c;就有很多人弄不懂。下面就由小编详细为大家介绍C语言中函数指针&#xff0c;指针函数和函数指针之间的区别。c语言指针函数定义&#xff1a;函数指针是指向函数的指针变量。 因此“函数指针”本身首先应是指针变…

医院 网站源码腾讯云服务器优惠

mplab ide中使用c语言编程,PIC单片机的C语言使用——在MPLAB-IDE中使用HitechC编译器.doc...-CSDN博客

使用油猴脚本去除浏览器搜索的URL后缀,减少广告

使用油猴脚本去除浏览器搜索的URL后缀,减少广告今天碰到了一件事,我在浏览器里搜索"adobe",它显示的URL是“https://www.bing.com/search?q=adobe&qs=n&form=QBRE&sp=-1&lq=0&pq=ado…

浅谈并分享一种较为高效的学习方法

浅谈并分享一种较为高效的学习方法,适用于一般大学内较为吃力的朋友、阅读书籍、学习专业课程、自学内容等普通群体,可能对于迷茫考入一般大学的朋友有较好帮助,学神不喜请绕道。 若本文对你有所帮助,那我编写发布…

深入解析:PyTorch张量切片的陷阱:视图与副本

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

英语_阅读_Industry 4.0_待读

“Industry 4.0” is a mix of low-cost and high-power computers, high-speed communication and artificial intelligence. “工业4.0”是低成本高性能计算机、高速通信和人工智能的结合。 This will produce smart…

站酷网官网登录营销方案模板范文

在当今高度发达的制造业中&#xff0c;精密机械零件加工企业扮演着至关重要的角色&#xff0c;以其精湛的工艺和严谨的态度&#xff0c;为制造业的各个领域提供着关键的支撑。 一、高精度制造&#xff0c;奠定产品质量基础 精密机械零件加工企业以其精湛的加工技术&#xff0c;…

Python获取CPU和内存使用率

首先,确保已安装psutil库。如果尚未安装,请运行以下命令进行安装: pip install psutil 安装完成后,我们就可以使用psutil库来测量CPU和内存使用率了。以下是一个简单的示例代码: import psutil import timedef ge…

解决Python requests库POST请求参数顺序问题

在Python的世界里,用requests库发个POST请求也一样,有时候你得确保参数的顺序得守规矩,不然服务器可能理你都不理。那怎么保持POST请求参数的顺序呢?咱们得换个法子:用 collections.OrderedDict来拯救世界。 Orde…

使用Tabs选项卡组件快速搭建鸿蒙APP框架

ArkUI提供了很多布局组件,其中Tabs选项卡组件可以用于快速搭建鸿蒙APP框架,本文通过案例研究Tabs构建鸿蒙原生应用框架的方法和步骤。大家好,我是潘Sir,持续分享IT技术,帮你少走弯路。《鸿蒙应用开发从入门到项目…

深入解析:实战:基于 BRPC+Etcd 打造轻量级 RPC 服务——从注册到调用的核心架构与基础实现

深入解析:实战:基于 BRPC+Etcd 打造轻量级 RPC 服务——从注册到调用的核心架构与基础实现pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !impor…

完整教程:从另一个视角看Transformer:注意力机制就是可微分的k-NN算法

完整教程:从另一个视角看Transformer:注意力机制就是可微分的k-NN算法pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: …