当前位置: 首页 > ai >正文

找银子 题解(c++)

题目 

 

思路

首先,这道题乍一看,应该可以用搜索来做。

但是,搜索会不会超时间限制呢?

为了防止时间超限,我们可以换一种做法。

先创立两个二维数组,一个是输入的数组a,一个是数组b。

假设 i 行 j 列的数是 a [ i ] [ j ],和b [ i ] [ j ]

输入的时候判断:如果 a [ i ] [ j ]<300,那么 a [ i ] [ j ] = a [ i ] [ j ] /2。

然后,b [ i ] [ j ] = a [ i ] [ j ].

如果学过小学奥数:标数法

那么,你会很好理解:

一排一排、从左到右的去处理:

走到 a [ i ] [ j ] 这处银子时,得到的银子总量为 a [ i ] [ j ] + max( b [ i - 1 ] [ j ] , b [ i ] [ j - 1 ]).将这个数存在 b [ i ] [ j ]中。

最后,只要输出 b [ n ] [ m ] 就好了

相信标数法你们都学过,因为它很简单,所以这里就不多解释这样写的原因了。

AC代码:

#include <bits/stdc++.h>
using namespace std;
int n,m;
int a[110][110];
int b[110][110];
int main()
{cin>>n>>m;for(int i = 1;i<=n;i++){for(int j = 1;j<=m;j++){cin>>a[i][j];if(a[i][j]<300) a[i][j] /= 2;b[i][j] = a[i][j];}}for(int i = 1;i<=n;i++){for(int j = 1;j<=m;j++){b[i][j] += max(b[i-1][j],b[i][j-1]);}}cout<<b[n][m];return 0;
}

http://www.xdnf.cn/news/5426.html

相关文章:

  • EdgeOne Pages MCP 入门教程
  • 午前下单晚饭前到?亚马逊在珀斯实现!
  • 信息系统项目管理师-软考高级(软考高项)​​​​​​​​​​​2025最新(十六)
  • 【并发编程】Redisson 的分布式锁
  • 基于大核感知与非膨胀卷积的SPPF改进—融合UniRepLK的YOLOv8目标检测创新架构
  • [Java实战]Spring Boot 整合 Thymeleaf (十)
  • c++的模板和泛型编程
  • C++:流插入、流提取操作符
  • Java volatile关键字深度解析与源码实现
  • 极新携手火山引擎,共探AI时代生态共建的破局点与增长引擎
  • 解锁c++模板:从入门到精通
  • vue 中的数据代理
  • go-gin
  • 多模态大语言模型arxiv论文略读(六十九)
  • 【C语言指针超详解(四)】--字符指针变量,数组指针变量,二维数组传参的本质,函数指针变量,函数指针数组,转移表
  • .NET MAUI 基础知识
  • 6.空气质量检测和语音播报
  • Nginx 源码安装成服务
  • Python与矢量网络分析仪3671E:自动化测试(Vscode)
  • 基于PySyft与TensorFlow的医疗数据协同分析系统实现教程
  • 红黑树的线程安全的做法
  • 黑名单中的随机数-leetcode710
  • sunset:Solstice靶场
  • 动态规划之背包问题总结(Java)
  • 微服务架构-限流、熔断:Alibaba Sentinel入门
  • TIME - MoE 模型代码 4——Time-MoE-main/run_eval.py
  • 前端密码加密:保护用户数据的第一道防线
  • 《微服务设计》笔记
  • CSS:盒子阴影与渐变完全解析:从基础语法到创意应用
  • MySQL数据库容灾设计案例与SQL实现