这个应该怎么去实现?

问题描述

用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"与"5"不能相连.用Java这个应该怎么写?

解决方案

public class Test8{ /** * 排列 用1、2、2、3、4、5这六个数字,打印出所有不同的排列, 如:512234、412345等,要求:"4" * 不能在第三位,"3"与"5"不能相连. * * @param sb * 符合条件的数字 * @param list * 输入的数字 * @param index * 第几位 * @param k * 已经用过的数组下标 * * @return */ public static Object a2(StringBuffer sb, String[] list, int index, String k) { String[] objs = list; for (int i = 0; i < objs.length; i++) {// int ff = 0;// // 是否第一次,第一次不需要判断是否用过// if (!k.equals("-1"))// {// String[] iss = k.split(",");// for (int j = 0; j < iss.length; j++)// {// // 判断该数字是否已经用过了// if (iss[j].equals(i + ""))// {// ff = 1;// break;// }// }// }// if (ff == 1)// {// // 用过的数字不能再用,重新计算// continue;// } sb.append(objs[i] + ","); if (list.length - 1 == index) { String[] end = sb.toString().split(","); int temp = 0; for (int j = 0; j < end.length; j++) { // 3,5不能相临 if (j != end.length - 1 && "3".equals(end[j]) && "5".equals(end[j + 1])) { temp = 1; break; } } // 4不能在第3位 if (!"4".equals(end[2]) && temp == 0) { System.out.println(sb.toString()); } sb.delete(sb.length() - 2, sb.length()); continue; } else { a2(sb, objs, ++index, k + "," + i); } --index; sb.delete(sb.length() - 2, sb.length()); } return ""; } public static void main(String[] args) { String in = "1,2,2,3,4,5"; String[] objs = in.split(","); StringBuffer sb = new StringBuffer(); a2(sb, objs, 0, "-1"); }}// 注释掉的的部分是为不可重复的,一个数字只能出现一次。// 1,2,3,4,5,6,,不会出现:1,2,3,4,5,5
解决方案二:
for (int i = 122345; i <= 543221; i++) { String tmp = "" + i; if (tmp.matches("[1-6]{2}[12235][1-6]{3}") && tmp.replaceAll("(\d)(?=\d*\1)|35|53", "").length() == 6 ) { System.out.println(i); } }

时间: 2024-07-31 10:32:50

这个应该怎么去实现?的相关文章

极致的 Hybrid 混合式开发(去啊App Hybrid 实战)

该文章来自于阿里巴巴技术协会(ATA)精选文章. IO 优化 今天 去啊 App 5.1.1 已经发布了,航旅 Hybrid 混合架构有了更进一步的落地,这轮优化目标是搞定H5真正的"无缝秒出". 先来看效果,去啊App 2G 网络下购买国际机票,30秒完成,除了搜索入口页,列表往下到付款页的前端都是H5 Page,大家感受一下: 目测性能是可观的.尽管H5包的离线化隔绝了弱网对秒出的干扰,设备本地 IO 耗时也是不能忽视的,算上zip的解压缩,仅在设备本地 IO 完全一个 HTML(

安卓应用开发-安卓开发中红米手机拍照发出去后为啥旋转了90度

问题描述 安卓开发中红米手机拍照发出去后为啥旋转了90度 10C 开发过程中,做了一个类似微信朋友圈的东西,拍照上传图片的时候,在红米手机上遇到了这个问题,本来是正着拍摄,发出去后在朋友圈显示的是旋转了90度的,如图所示,键盘旋转了90度 解决方案 跟手机有关,手机拍照默认横屏 解决方案二: 我也是红米,做移动开发时拍照是正常的

用HBBuilder的时候进不去

问题描述 用HBBuilder的时候进不去 提示:java was started but returned exit code=13,我是JAVA出问题了吗?以前一直可以的 解决方案 http://ask.dcloud.net.cn/question/5577 解决方案二: 估计是你配置的java插件提示jdk版本的问题

svg-我copy一个网页 它的icomoon的图标弄不下来 想请教去哪下这几个字体库

问题描述 我copy一个网页 它的icomoon的图标弄不下来 想请教去哪下这几个字体库 @font-face { font-family:'icomoon'; src:url(IcoMoon-Free-master/icomoon-MBT.eot); src:url(IcoMoon-Free-master/icomoon-MBT.eot?#iefix) format(""embedded-opentype"")url(IcoMoon-Free-master/ico

怎么通过java去调用并执行shell脚本以及问题总结

该文章来自阿里巴巴技术协会(ATA)精选集 背景 我们在开发过程中,大部分是java开发, 而在文本处理过程中,主要就是脚本进行开发. java开发的特点就是我们可以很早地进行TDDL, METAQ 等等地对接: 而脚本开发的特点就是在进行批处理的时候非常方便. 前阵子我遇到这么一个需求场景: 对抓取的数据进行打包, 后来又遇到我要通过脚本进行抓取,比如nodejs下基于phantomjs的casperjs爬虫. 解决方法 对于第一个问题:java抓取,并且把结果打包.  那么比较直接的做法就是

图像去雾算法matlab问题

问题描述 图像去雾算法matlab问题 请问用暗通道方法去雾,怎么求得投射图,具体的方法是什么,怎样去雾简单一些,本科毕业做的,有没有简单的方法能达到去雾的效果,不用特别好可以看出来有去雾就行 解决方案 http://www.ilovematlab.cn/thread-177571-1-1.html 解决方案二: 去雾的基本原理就是增加图像对比度,增加缘的锐度,使用有包含对比度的色彩模型就有这种效果.

密封舱-MFC用fscanf去读取字符串,字符串中间不能有空格么?

问题描述 MFC用fscanf去读取字符串,字符串中间不能有空格么? MFC用fscanf去读取字符串,字符串中间不能有空格么?如果有空格,用%s怎么才能正确读取呢? 解决方案 看你的格式限定符怎么写的,你可以自定义分割字符

sql-我要写一个java程序,去链接oracle数据库,如果获取链接的时间超过1分钟,就抛出异常,请问怎么实现?

问题描述 我要写一个java程序,去链接oracle数据库,如果获取链接的时间超过1分钟,就抛出异常,请问怎么实现? 我要写一个java程序,去链接oracle数据库,如果获取链接的时间超过1分钟,就抛出异常,请问怎么实现? 解决方案 http://blog.chinaunix.net/uid-20752328-id-3451931.html 这里有一篇文章可以解决你的问题你可以点击进去看看; 如果回答对您有帮助请采纳 解决方案二: 说明数据整理不合理吧 解决方案三: 你应该优化数据库结构,或你

一种LTE天线的去耦合分析

 为了满足LTE在高数据率和高系统容量方面的需求,LTE系统支持多天线MIMO(Multiple Input Multiple Output)技术,在发射端和接收端同时使用多个天线进行接收和发射,将不可避免地引起多个天线之间的相互耦合,导致天线之间的相关性减小,从而降低通信容量,而且也会降低天线的辐射效率.这种耦合在移动终端天线上表现得尤为明显.通常为了降低天线之间的耦合,要求增大天线之间的距离,而移动终端有限的空间又不能满足此要求,尤其是在700 MHz左右的频段,几个天线之间的电气距离通常只

google进不去怎么办?

  我们知道已经很久不能打开谷歌主页了,google进不去怎么办?有什么方法尅强制进入呢?下面小编为大家带来谷歌打不开最新有效解决办法. 目前像大家常访问的google.com以及google.com.hk均无法正常访问,另外包括GMAIL邮箱也是如此,并且有大量网友遇到此问题,小编针对此问题做了小研究,为了各位小伙伴可以顺利打开谷歌搜索,大家随小编细说吧. google无法访问原因: 如果说google.com服务器在美国,这一点也不令人意外,但是谷歌香港(google.com.hk)服务器由