看到一个题,说123456789中间任意加+或-,123456789的位置不变,结果等于100,刚开始我就想到了坐座位的问题,在123456789之间有8个空位,能放空,+,-三种情况,我用字符串数组保存数据,遍历了一遍,用递归调用方法打印了一遍

package homework;import java.util.ArrayList;
import java.util.List;import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;public class Ch07Work2 {public static int Count=1;//定义数字间符号的坐标public static String [] F={"","+","-"};//要插入的符号
public static void main(String[] args) {//找出所有123456789插入加减 =100//StringBuilder s=new StringBuilder("123456789");List<String> sl=new ArrayList<>();//("1","","2","","3","","4","","5","","6","","7","","8","","9");String[] s=new String[]{"1","","2","","3","","4","","5","","6","","7","","8","","9"};fuhao(s);/*for(int a= 0;a<3;a++)  这个是最笨的,套了8层循环{s[Count]=F[a];Count+=2;for(int b= 0;b<3;b++){s[Count]=F[b];Count+=2;for(int c= 0;c<3;c++){s[Count]=F[c];Count+=2;for(int d= 0;d<3;d++){s[Count]=F[d];Count+=2;for(int e= 0;e<3;e++){s[Count]=F[e];Count+=2;for(int f= 0;f<3;f++){s[Count]=F[f];Count+=2;for(int g= 0;g<3;g++){s[Count]=F[g];Count+=2;for(int h= 0;h<3;h++){s[Count]=F[h];Count+=2;String res=tostring(s);ScriptEngineManager manager = new ScriptEngineManager();ScriptEngine engine = manager.getEngineByName("js");Integer result;try {result = (Integer) engine.eval(res);if(result==100){System.out.println(res+"="+result);}} catch (ScriptException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}Count-=2;}Count-=2;  }   Count-=2;} Count-=2;} Count-=2;} Count-=2;} Count-=2;}Count-=2;}*/}
public static String tostring(String[] s){StringBuilder sbd=new StringBuilder();for(String i:s){sbd.append(i);}return sbd.substring(0);
}public static void fuhao(String[] s){//递归方法if(Count<=15){for(int a= 0;a<3;a++){s[Count]=F[a];Count+=2;fuhao(s);Count-=2;}}else{String res=tostring(s);ScriptEngineManager manager = new ScriptEngineManager();ScriptEngine engine = manager.getEngineByName("js");Integer result;try {result = (Integer) engine.eval(res);if(result==100){System.out.println(res+"="+result);}} catch (ScriptException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}}
}

123456789中间任意加+或-结果等于100相关推荐

  1. 设计算法,在1~9这九个数之间添加任意加减乘除号,使之等于100

    设计算法,在1~9这九个数之间添加任意加减乘除号,使之等于100 题目 分析 某群的一道趣味题,肯定是暴力枚举了,不过稍微要点操作,因为乘除运算会有类似入栈的过程,但是这题是没有括号的,我们完全可以定 ...

  2. Java面试题:在一个递增的数组里面,找出任意两个数的和等于100,编写程序输出这些数对,可以假设数组中不存在重复元素

    本文使用两种算法来实现,分别是二分查找法和插值查找法,发现插值查找法更好,更快地找到需要的数据. 代码如下: package com.moson.search;import java.util.Arr ...

  3. JAVA里面一加到一百等于多少_1加到100计算公式1加到23等于多少

    1加到100计算公式 解法一:(加法结合律百)度 1+2+3+......+100 =(1+100)知+(2+99)+(3+98)+......+(50+51) =101x50 =5050 解法道二专 ...

  4. 1~9中间插入加号或减号使运算结果等于100

    题目:编写一个在1,2,-,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是 100 的程序,并输出所有的可能性. 算法分析 本题算法不算太难,但是编码相对麻烦一些,某一些实现方式分 ...

  5. 关于统计中的百分比之和不等于100的问题(Java)

    问题简述 在计算统计表格百分比的过程中,由于精度问题计算结果值总是出现99.97%或是100.1%不等于100%的情况,最初的方案一般都是通过最后一个值等于1 减去百分比来完成计算,但这种方式存在弊端 ...

  6. Win7 Wininit.exe任意加载/执行(漏洞)

    1.背景: a.Windows关机时,将调用NtShutdownSystem Native API来执行关机动作. b.在WinXp时代,用户执行"关机"后,将由winlogon. ...

  7. 1619 例题 Prime Distance(POJ2689 LOJ10197 UVA10140 提高+/省选-) 线性筛 映射关系 0分 筛出区间内质数 超时0分 求任意区间质数的筛子100分

    总目录 在线测评地址(ybt)   只有1个测试点 在线测评地址(POJ)   无法提交 在线测评地址(LOJ)   只有1个测试点 在线测评地址(LUOGU)   要有UVA账号才能提交 1.0分代 ...

  8. 编写程序,兑换人民币零钞,要求将一张面值为100元人民币兑换成5元、1元和0.5元的零钞组合加起来也是100张,其中每种面值零钞不少于1张

    题目 编写程序,兑换人民币零钞,要求将一张面值为100元人民币兑换成5元.1元和0.5元的零钞组合加起来也是100张,其中每种面值零钞不少于1张 分析 我们可以设x,y,z分别对应面值为5元.1元和五 ...

  9. 红星加星红加星红等于爱星星_如何从Google Reader导出已加星标的项目

    红星加星红加星红等于爱星星 If your reaction to the announced demise of Google Reader was to scream "But my s ...

  10. php 增加白色边框,怎么给视频加白色边框?素材任意加,这工具值得一试!

    原标题:怎么给视频加白色边框?素材任意加,这工具值得一试! 怎么给视频加白色边框?给视频加上合适的素材,有助于视频效果有一个质的提高.迅捷视频剪辑软件拥有海量.精美素材,帮助小伙伴们实现素材任意加.下 ...

最新文章

  1. Linux信号 二 信号处理函数注册
  2. 读《JavaScript dom编程艺术(第2版)》笔记 1-2
  3. 基于事件的异步模式——BackgroundWorker
  4. mysql 商品属性_MySQL产品属性表设计
  5. 一步步教你前端vue项目开发中如何解决跨域问题
  6. matlab如何创建callback函数_如何学好MATLAB GUI
  7. qt中event->globalPos()与pos()
  8. 系统集成项目管理工程师(中级)常用英语汇总
  9. 算法(2)计算出101-200之间的素数
  10. js 格式化UTC日期
  11. jsp实现页面自动跳转
  12. 基于SPH的流体仿真过程
  13. Android开发规范:APP打包规范
  14. IDEA类文件图标变成“J”
  15. 基于STM32智能家居控制系统软件设计及实现
  16. FPGA系统性学习笔记连载_Day19【综合实验】之【数字钟】【Intel Cycle IV FPGA平台验证】
  17. AI医学影像三大技术实战、优劣、经验及发展
  18. cmd远程连接上传下载文件
  19. Ubuntu18.04使用Systemback制作系统镜像并还原(亲测)
  20. 【密码学—菜狗的期末自救企划】

热门文章

  1. 不同局域网内进行网络连接的建立方法
  2. 几个项目管理的小故事
  3. 可扩展机器学习——分类——点击率预测(Click-through Rate Prediction)
  4. Aurora使用技巧详解
  5. 【研究】英文论文阅读——英语poor的研究人员的福利
  6. 鸿蒙os自定义主题,通过鸿蒙自定义属性,来创造一个可以为所欲为的自定义标题组件...
  7. python opencv 实现图像白平衡
  8. Attack State Slight Movement(攻击状态)
  9. 账号密码管理系统html,管理员密码一般是啥
  10. RHEL7虚拟机实验快照