题目

给定一个数组arr,你可以在每个数字之前决定+或者但是必须所有数字都参与
再给定一个数target,请问最后算出target的方法数是多少?

每一个数都参与运算,运算符号只有±,最终能得出target即可,求多少个方法可以实现?

暴力破解-递归

±两种方式都试一试,如果某一种方式得得数最后是0,那么方法数+1

package demo;public class Three {public int target_methods(int[] arr,int index,int target) {if(index==arr.length) {//          当一轮下来,数用完了,target=0,就说明这个方法可以,返回1return target==0 ? 1:0;}
//      因为不知道加减是否行得通,所以都试一下,如果+不成功就是0,-成功就是1
//      该实数的方法数的相加return target_methods(arr, index+1, target+arr[index])+target_methods(arr, index+1, target-arr[index]);}public int math_methods(int[]arr,int target) {//      从下标0开始return target_methods(arr, 0, target);}public static void main(String[] args) {Three three=new Three();int[] arr= {2,1,-1};int target=4;System.out.println(three.math_methods(arr, target));}}

算法3-加减号得数方法数相关推荐

  1. 【Android 安全】DEX 加密 ( 多 DEX 加载 | 65535 方法数限制和 MultiDex 配置 | PathClassLoader 类加载源码分析 | DexPathList )

    文章目录 一.65535 方法数限制和 MultiDex 配置 二.多 DEX 加载引入 三.PathClassLoader 类加载源码分析 四.BaseDexClassLoader 类加载源码分析 ...

  2. 算法53----换钱的最小次数和方法数【动态规划】

    一.题目:换钱的最小次数 给定数组arr,arr中所有的值都为正数且不重复.每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个整数aim代表要找的钱数,求组成aim的最少货币数. 举个 ...

  3. 算法进阶面试题07——求子数组的最大异或和(前缀树)、换钱的方法数(递归改dp最全套路解说)、纸牌博弈、机器人行走问题

    第一题 给定一个数组,求子数组的最大异或和. 一个数组的异或和为,数组中所有的数异或起来的结果. 简单的前缀树应用 暴力方法: 先计算必须以i结尾的子数组的异或和,然后再计算机i+1的,以此类推... ...

  4. 【算法-Java实现】 换钱的方法数(暴力递归法)

    [算法-Java实现] 换钱的方法数(暴力递归法) 文章目录 [算法-Java实现] 换钱的方法数(暴力递归法) 一.问题描述: 二.问题解答: **举例:** **思路:==暴力递归==** 三.算 ...

  5. 算法:使用单词表拼接字符串的方法数

    题目描述 假设所有字符都是小写字母. 长字符串是str arr是去重的单词表, 每个单词都不是空字符串且可以使用任意次 使用arr中的单词有多少种拼接str的方式,返回方法数. 题目解析 从左到右尝试 ...

  6. Android 使用android-support-multidex解决Dex超出方法数的限制问题,让你的应用不再爆棚

    时之沙: http://blog.csdn.net/t12x3456 随着应用不断迭代,业务线的扩展,应用越来越大(比如集成了各种第三方sdk或者公共支持的jar包,项目耦合性高,重复作用的类越来越多 ...

  7. 由Android 65K方法数限制引发的思考

    前言 没想到,65536真的很小. 1 Unable to execute dex: method ID not in [0, 0xffff]: 65536 PS:本文只是纯探索一下这个65K的来源, ...

  8. 方法数超了65535 无法安装的解决方案

    错误:Conversion to Dalvik format failed:Unable toexecute dex: method ID not in [0, 0xffff]: 65536 作为一名 ...

  9. Android开发笔记(一百七十九)避免方法数过多的问题

    一个大规模的App工程,往往引入了数量繁多的第三方开发库,其中既有官方的Jetpack库,也有第三方厂商的开源包.有时候运行这种App会报错"Cannot fit requested cla ...

最新文章

  1. ubuntu12.04 启动mysql_Ubuntu 12.04 MySQL改utf-8 启动不了
  2. Java 5~11各个版本新特性史上最全总结
  3. 两个条件一个为false就运行_Python入门基础实例讲解——两个数字比大小,并输出最大值...
  4. Windows 7技巧之Telnet组件消失之迷
  5. 文件上传速度查询方法
  6. 深度解读鸿蒙轻内核CPU占用率
  7. Java基础(四)——异常、断言、日志
  8. 字节跳动又启动期权回购了,这次价格142美元,较上一轮回购价涨8%
  9. 搭建最简单的Drool框架
  10. link标签的用法及link属性大全
  11. 硬盘分区被格式化了如何恢复
  12. Matlab基于主分量的人脸重建显示
  13. selenium+java打开新标签页方法
  14. 关于react-router-dom 6.0.1的基础写法 解决Error A <Route> is only ever to be used as the child of <Routes>
  15. Java发送SMS短信
  16. body 没有被撑开_flex布局被子元素撑开如何保持内容不超出容器的方法
  17. EXCEL列乱序后内容重新对应
  18. 给定一个函数做其最佳平方逼近c语言,第三章 函数逼近 — 最佳平方逼近.
  19. Cesium源码解读系列(一):GeoJsonDataSource如何处理geojson格式的数据
  20. mysql查找语句报错_MYSQL报错注入-WEB资讯专栏-DMOZ中文网站分类目录-免费收录各类优秀网站的中文网站目录....

热门文章

  1. Linux-Ubuntu中Google浏览器更新和桌面重启
  2. 宝塔部署chevereto图床
  3. 【C++】17.map和set的模拟实现
  4. 华硕(ASUS)TUF GAMING B460M+intel i7 10700f+00GB SSD固态硬盘 黑苹果EFI引导文件
  5. 电子科大信软互+班 程算I 2022级机考真题
  6. (一) nvidia jetson orin nvcsi tegra-capture-vi camera相关内容梳理 之 vi相关代码分析
  7. 什么是工业机器人的运动轴
  8. 二叉树先、中、后遍历递归+非递归
  9. 小白如何用U盘安装系统
  10. python 复数补充