算法提高 连接乘积

时间限制:1.0s 内存限制:256.0MB

问题描述

  192这个数很厉害,用它分别乘以1、2、3,会得到:

  192 x 1 = 192

  192 x 2 = 384

  192 x 3 = 576

  把这三个乘积连起来,得到192384576,正好是一个1~9的全排列

  我们把上面的运算定义为连接乘积:

  m x (1 … n) = k(其中m > 0 且 n > 1,对于上例,m = 192、n = 3、k = 192384576)

  即k是把m分别乘以1到n的乘积连接起来得到的,则称k为m和n的连接乘积。

  按字典序输出所有不同的连接乘积k,满足k是1~9的全排列

输出格式

  每个k占一行

样例输出

显然,结果中应包含一行:

192384576

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; public class 连接乘积 {
public static List<Integer> list = new ArrayList<Integer>();
public static void main(String[] args) {
// TODO Auto-generated method stub
char[] chs = {'1','2','3','4','5','6','7','8','9'};
//f(chs,0);
//Collections.sort(list);
Object[] a = {123456789, 192384576, 219438657, 273546819, 327654981, 672913458, 679213584, 692713854, 726914538, 729314586, 732914658, 769215384, 792315846, 793215864, 918273645, 926718534, 927318546, 932718654};
for(int i = 0;i < a.length;i++){
System.out.println(a[i]);
}
}
public static void f(char[] a,int k){
if(k == a.length){
auth(a);
return;
} for(int i = k;i < a.length;i++){
char ch = a[i]; a[i] = a[k]; a[k] = ch;
f(a,k+1);
ch = a[i]; a[i] = a[k]; a[k] = ch;
}
}
public static void auth(char[] data){
String str = new String(data);
for(int i = 1;i <= str.length();i++){
String t = str.substring(0, i);
int n = Integer.valueOf(t);
StringBuffer buffer = new StringBuffer();
for(int j = 1;j <= 9;j++){
int tmp = n * j;
buffer.append(String.valueOf(tmp));
if(buffer.toString().equals(str) && j > 1){
list.add(Integer.valueOf(buffer.toString()));
break;
}else if(buffer.toString().equals("0") || hasR(buffer.toString())){
break;
}
}
}
}
public static boolean hasR(String str){
char[] chs = str.toCharArray();
Arrays.sort(chs);
for(int i = 0;i < chs.length - 1;i++){
if(chs[i] == chs[i+1])
return true;
}
return false;
} }

Java实现 蓝桥杯VIP 算法提高 连接乘积的更多相关文章

  1. Java实现 蓝桥杯VIP 算法提高 最小乘积(提高型)

    算法提高 最小乘积(提高型) 时间限制:1.0s 内存限制:512.0MB 问题描述 给两组数,各n个. 请调整每组数的排列顺序,使得两组数据相同下标元素对应相乘,然后相加的和最小.要求程序输出这个最 ...

  2. Java实现 蓝桥杯VIP 算法提高 传染病控制

    算法提高 传染病控制 时间限制:1.0s 内存限制:512.0MB 问题描述 近来,一种新的传染病肆虐全球.蓬莱国也发现了零星感染者,为防止该病在蓬莱国大范围流行,该国政府决定不惜一切代价控制传染病的 ...

  3. Java实现 蓝桥杯VIP 算法提高 多项式输出

    算法提高 多项式输出 时间限制:1.0s 内存限制:512.0MB 问题描述 一元n 次多项式可用如下的表达式表示: f(x)=a[n]xn+a[n-1]x(n-1)+-+a[1]x+a[0], a[ ...

  4. Java实现 蓝桥杯VIP 算法提高 研究兔子的土豪

    试题 算法提高 研究兔子的土豪 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 某天,HWD老师开始研究兔子,因为他是个土豪 ,所以他居然一下子买了一个可以容纳10^18代兔子的巨大 ...

  5. Java实现 蓝桥杯VIP 算法训练 连接字符串

    算法训练 连接字符串 时间限制:1.0s 内存限制:512.0MB 编程将两个字符串连接起来.例如country与side相连接成为countryside. 输入两行,每行一个字符串(只包含小写字母, ...

  6. Java实现 蓝桥杯VIP 算法提高 3-2求存款

    算法提高 3-2求存款 时间限制:1.0s 内存限制:256.0MB 问题描述 见计算机程序设计基础(乔林)P50第5题. 接受两个数,一个是用户一年期定期存款金额,一个是按照百分比格式表示的利率,计 ...

  7. Java实现 蓝桥杯VIP 算法提高 3-3求圆面积表面积体积

    算法提高 3-3求圆面积表面积体积 时间限制:1.0s 内存限制:256.0MB 问题描述 接受用户输⼊的数值,输出以该值为半径的(1)圆面积,(2)球体表面积,(3)球体体积.pi 取值3.1415 ...

  8. Java实现 蓝桥杯VIP 算法提高 5-3日历

    算法提高 5-3日历 时间限制:1.0s 内存限制:256.0MB 问题描述 已知2007年1月1日为星期一.设计一函数按照下述格式打印2007年以后(含)某年某月的日历,2007年以前的拒绝打印.为 ...

  9. Java实现 蓝桥杯VIP 算法提高 11-2删除重复元素

    算法提高 11-2删除重复元素 时间限制:10.0s 内存限制:256.0MB 问题描述 为库设计新函数DelPack,删除输入字符串中所有的重复元素.不连续的重复元素也要删除. 要求写成函数,函数内 ...

随机推荐

  1. Autojs - 用 JavaScript 实现自己的安卓手机自动化工具脚本

    我是风筝,公众号「古时的风筝」,一个不只有技术的技术公众号,一个在程序圈混迹多年,主业 Java,另外 Python.React 也玩儿的 6 的斜杠开发者. Spring Cloud 系列文章已经完 ...

  2. 栈溢出(Stack Overflow)

    调用栈(Call Stack)描述的时函数之间的调用关系.它由多个栈帧(Stack Frame)组成,每个栈帧对应着一个未运行完的函数.栈帧中保存了该函数的返回地址和局部变量,因而不能再执行完毕后找到 ...

  3. Java网络小结

    1,定位 IP对机器的定位 端口对软件的定位(65535) URL对软件上每一份资源的定位 2,TCP和UDP TCP 安全,性能低 ①ServerSocket②Socket UDP不安全,性能高 ① ...

  4. Django使用channel实现websocket

    channel 什么是channel? channel是第三方工具包,对于不支持websocket协议的框架可以借助此包实现websocket 安装 终端安装: pip3 install channe ...

  5. 编译nginx的时候报错 需要安装PCRE

    ./configure --prefix=/mynginx/ 本地编译nginx的时候 报错 提示需要安装PCRE 错误信息: ./configure: error: the HTTP rewrite ...

  6. 如何搭建一个WEB服务器项目(二)—— 对数据库表进行基本的增删改查操作

    使用HibernateTemplate进行增删改查操作 观前提示:本系列文章有关服务器以及后端程序这些概念,我写的全是自己的理解,并不一定正确,希望不要误人子弟.欢迎各位大佬来评论区提出问题或者是指出 ...

  7. Java Concurrent包初探

    同步容器: Vector/Hashtable:jdk1.0就已经存在,jdk1.2改写实现List/Map接口.作为ArrayList/HashMap在并发场景中的替代类出现.注意:Hashtable ...

  8. nginx之启停操作及配置文件语法检测

    nginx的启停操作 ----nginx  启动 ----nginx -s stop 停止 ----nginx -s reload 重新加载 nginx -t 修改配置文件之后进行语法检验

  9. mysql 一台服务器中装两个mysql

    个人经验: 服务器中已有mysql5.0 现要安装mysql5.5 下载安装包,安装后,mysql5.5中没有my.ini文件,就在我自己的电脑上复制了mysql5.5的my.ini文件进去. 1.在 ...

  10. HDU6035 Colorful Tree

    题目链接:https://vjudge.net/problem/HDU-6035 题目大意: 多样例输入. 对于每一个样例,给出 n \((2 \le n \le 200000)\) 个结点的一棵树, ...