Java 计算数组数字组合最值

拼多多2021笔试真题集 多多的数字组合 多多的字符变换 多多的求和计算 多多的骰子组合 第一题 多多的数字组合 多多君最近在研究某种数字组合: 定义为:每个数字的十进制表示中(0~9),每个数位各不相同且各个数位之和等于N。 满足条件的数字可能很多,找到其中的最小值即可。 输入描述: 共一行,一个正整数N,如题意所示,表示组合中数字不同数位之和。 (1 <= N <= 1,000) 输出描述: 共一行,一个整数,表示该组合中的最小值。 如果组合中没有任何符合条件的数字,那么输出-1即可。 输入例子1: 5 输出例子1: 5 例子说明1: 符合条件的数字有:5,14,23,32,41 阅读详情

输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的和最大的一个。例如输入数组{6, 72, 309},则输出这3个能排成的最小数字为309672,能排出的最大数字为726309。

没什么难度,例行练手。全排列然后组合再求最值

public class Test {
    private int count = 0, max, min;
    public static void main (String[] args) {
        int[] arr = {6, 72, 309};
        new Test().arithmetic(arr);
    }

    private void arithmetic(int[] arr){
        rank(arr, 0);
        System.out.println("Max : " + max + "\nMin : " + min);
    }

    private void rank(int[] arr, int index){
        if(index == arr.length-1){
            check(arr);
        }else{
            for(int i = index ; i <= arr.length-1; i++){
                arr[index] = arr[index] + arr[i] - (arr[i] = arr[index]);
                rank(arr, index+1);
                arr[index] = arr[index] + arr[i] - (arr[i] = arr[index]);
            }
        }
    }

    private void check(int[] arr){
        StringBuilder sb = new StringBuilder();
        for(int n : arr) sb.append(n);
        int n = Integer.valueOf(sb.toString());
        max = count == 0 ? n : (n > max ? n : max);
        min = count == 0 ? n : (n < min ? n : min);
        count++;
    }
}


求数组中和为给定数的所有组合 import java.util.Arrays; public class Test { public static void main(String[] args) { String str = "6,2,7,3,8,1,9,4"; double sum = 12; diguiSum(str, sum); } public static void diguiSum(Stri... 阅读详情

相关推荐

Java利用递归算法统计1-6的数组排列组合数

Java利用递归算法统计1-6的数组排列组合数 1、设计源码 /** * @Title:ArrayCombination.java * @Package:com.you.data * @Description:数组组合 * @Author: 游海东 * @date: 2014年3月16日 下午10:37:37 * @Version V1.2.3 */ package co

游海东的技术专栏 4526

面试:java数组内的最大组合数?

给定一个任意长度的java数组,求数组内的数能组合出来的最大整数比如说{9,98,123,32} 最大就是 99832123 import java.util.Arrays; import java.util.Comparator; class Test { public static void main(String args[]) { int[] arr = ...

weixin_43770982的博客 563

在一个数组中查找任意个数和为m的的组合

最近比较郁闷,遇到几次类似的题目了,现在打算总结一下,防止以后又忘了 1、最简单的一种是在一个数组中查找两个数和为m的所有组合 直接计算即可,比较简单 2、剑指offer上一题目 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和...

清风自来 9932

给定一个任意长度的java数组,求数组内的数能组合出来的最大整数

给定一个任意长度的java数组,求数组内的数能组合出来的最大整数。 在美团的电话面试一面中被问到这样的问题,当时最先想到的是用全排列,然后挑出最大的一个,虽然问题可以解决,但是太暴力而且时间复杂度太大。后来想到可以通过快排直接排好序,输出就是最大值。时间复杂度也可以接受。

wu1217的博客 5987

求最大的组合数:用不同的数字组合,找到最大的那一个组合

缘由 昨天去某公司笔试的压轴题。 这玩意说穿了一点像魔术(昨天又看了一遍致命魔术)。一旦说穿了就觉得...自己很傻。所以强烈建议各位自己做一做。 题干 求最大的组合数(E) 对输入的若干个数,输出其能组合成的最大的那个数。例如,有四个数123、124、56和90,可以组成的数是 1231245690、1241235690、5612312490、9012312456 和 90561

zy825316的专栏 6486

【G4基础08】GPS-2-Macro Commands宏命令

GPS-2

adelall的博客 3738

java实现求最大子数组和

leetCode算法题

weixin_61876893的博客 1166

Ansys Zemax导入CAD文件避坑指南:STL/STEP/IGES格式选择与性能优化

本文深度解析了在Ansys Zemax中导入CAD文件的核心要点与性能优化策略。针对STL、STEP、IGES等主流格式,详细对比了其几何表示、精度与适用场景差异,并提供了基于模型特征的格式选择决策树。文章重点分享了体元、弦公差等高级参数的调优技巧,以及处理复杂装配体和避免精度陷阱的实战指南,旨在帮助光学工程师提升仿真效率与结果可靠性。

weixin_29202687的博客 436

给定一个数组,求数组中元素组合的最大数

/把StringBuilder转换成String。//将每个数字装换成字符串,再装到String类型的数组中。//将排序后的字符串连接起来。public class 最大数 {

FY13175的博客 422

AI量化投资开源平台——Qlib(微矿)的学习使用笔记(随缘更新)

Qlib 涵盖了量化投资的全过程,为用户的 AI 算法提供了高性能的底层基础架构,从框架设计上让用户可以更容易地应用 AI 算法来辅助解决量化投资的各个关键问题(例如 Alpha 预测,风险预测,市场动态性建模)。本文旨在记录一些面向初学者的基础内容。

in_void的博客 3133

anaconda安装-超详细版

文章目录一、anaconda安装1.1 anaconda安装地址1.2 安装详细步骤检验安装是否成功更改conda源(后续安装第三方库可以加快速度) 一、anaconda安装 Anaconda 是一个用于科学计算的 Python 发行版,支持 Linux, Mac, Windows, 包含了众多流行的科学计算、数据分析的 Python 包。装anaconda,就不需要单独装python了。 anaconda优点: 1、anaconda里面集成了很多关于python科学计算的第三方库,主要是安装方便,而p

in546的博客 25万+

java计算数组的个数字_Java 计算数组数字组合最值

输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的和最大的一个。例如输入数组{6, 72, 309},则输出这3个能排成的最小数字为309672,能排出的最大数字为726309。没什么难度,例行练手。全排列然后组合再求最值public class Test {private int count = 0, max, min;public static void main (S...

weixin_42384267的博客 319

(算法)求数组中数字组合(可多值组合)相加最接近目标数的组合(可能多个)

  今天没事,撸一道算法题   题目要求: 给出一个升序排序的可能重复值的数字数组和一个目标值 其中目标值大于数组中最小数,求数组中数字组合(可多值组合)相加最接近目标数的组合(可能多个) 不考虑空间复杂度,效率最优的算法; 样例: 数组为[3,4,8],目标值为9,最接近组合为[8];   这道题我的解题思路是:    1.先得到数组的全部不重复不为空的子集    2.将子集的和作为key,子集的元素作为value存进map    3.将子集的和与给定值

秃头计划——启动! 1万+

建模simulink - 手把手教你搭建xpc平台

概述xpc半实物仿真目标是个基于RTW对低端实时仿真和开发平台,可将计算机或者工控机转变为一个实时系统,不需要第三方操作系统对支持,在计算机上配置输入输入出设备就能和外部交换信息,进行硬件...

不只会拍照的程序猿 7087

【GameFramework框架内置模块】2、数据节点(Data Node)

这一篇讲数据节点DataNode,基本开发程序都会有类似数据节点作用的东西,数据节点的作用其实就是保存游戏运行时的一些缓存数据,比如用户登录信息、用户名、任务节点等等。数据一般会有增删改查这四种操作,在运行时的数据一般是使用单例或者静态属性,将数据存储在内存中而数据节点也是将数据存储在内存中,但是不用序列化数据,比使用单例或者静态属性要容易维护的多,特别时它的树形结构可以让我们很好的组织我们的数据结构,方便做增删改查操作。数据节点DataNode模块的数据的存储方式是以树形结构存储。

优快云博客专家,Unity3D高级软件工程师,《Unity 3D从入门到实战》作者。 3185

MarsCode算法题之二分数字组合

这道题我觉得有困难的地方就是如何确定递推公式那一部分,需要一点思考。

2301_79318558的博客 1944

使用PyTorch和TextCNN实现英文长文本诗歌文本分类

在这个过程中,我们了解了如何进行文本数据预处理、构建TextCNN模型,并进行训练与评估。首先,我们需要将文本文件加载到内存中,并将每个诗歌作为一个样本。然后,我们需要将每个样本转换为数字表示,这可以通过将词汇表中的每个词语映射到一个唯一的整数来实现。此外,我们还需要将每个样本的长度统一为固定值,以便于模型输入。通过这个示例,我们可以学习如何构建一个简单但有效的文本分类模型,并在具体的应用场景中进行训练和预测。该模型通过使用多个不同尺寸的卷积核来捕捉文本中的不同长度的信息,并通过最大池化操作提取关键特征。

loop_syntax648的博客 254

在整数数组中找出和为目标值的数字组合

在一个整数数组(没有重复数字)中,找出和为目标值的数字 public String test(int[] n,int dest){ List<String> list = new ArrayList<String>(); List<String> tmp = new ArrayList<String>(); StringBuffer b...

my9988的博客 3034

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Java:数字组合问题

给定一个有n个正整数的数组A和一个整数sum,求选择数组A中部分数字和为sum的方案数。 当两种选取方案有一个数字的下标不一样,我们就认为是不同的组成方案。 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = ne...

程序旋儿 467

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Java计算数组中元素的总和

数组元素的总和是指数组中所有元素(或数字)的总和。数组元素可以是整数(int)或十进制数字(float或double)。 方法1:使用for循环 这是一种传统且最常用的方法,其中使用for循环来迭代数组。 在每次迭代中,将当前数组元素添加到一个保存数组元素总和的变量中。 在循环开始之前,此变量被初始化为0。例如, ​ public class ArraySumCalculator { public static void main(String[] args) { int[] array .

allway2的博客 4万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

计算一组数字中最小的若干个数字(Java数组和栈实现)

问题 如果有若干个数字,输入其中所有最小的数字。 例如,输入1 2 3 1 2 1 4 5,则输出1 1 1 思路 思路1: 最简单的思路是排序,按从小到大排序后,第一个就是最小的数字,然后从第一个往后遍历,等于最小数字的输出即可。但是这种方案需要两层循环,时间复杂度是O(n^2),应该寻求更快的方案。 思路2: 想一下人如果去干这件事怎么实现,首先是找到最小的值,然后找与最小值相同的数字即可,这...

编程副队长 1046

java 数字组合_java解决数字组合问题

问题描述:输入1~9以内的几个数字,输出这些数字的多重组合。输入:1,2,3输出:123121323123问题分析:当输入为1输出1当输入为1 2输出1212当输入为1 2 3输出123121323123那么可以分析如下当输入1 2 3 4时做了以下处理把上面结果拷贝123121323123123121323123然后在上面的基础上加上4即结果为12312132312312312132312...

weixin_29947319的博客 950

Java 计算排列_java如何进行排列组合运算

import java.util.Stack;/*** 数学排列公式工具类*/public class ArrangementUtil {public static Stack stack = new Stack();private static int count = 0;public static void main(String[] args) {int array[] = {1, 2, 3...

weixin_35916663的博客 1151

Java语言实现随意组合

Java语言实现随意组合 设计题目 小明被绑架到X星球的巫师W那里。当时,W正在玩弄两组数据 (2 3 5 8) 和 (1 4 6 7),他命令小明从一组数据中分别取数与另一组中的数配对,共配成4对 (组中的每个数必被用到)。 小明的配法是:{(8,7),(5,6),(3,4),(2,1)} 巫师凝视片刻,突然说这个配法太棒了! 因为: 每个配对中的数字组成两位数,求平方和,无论正倒,居然相等: 87^2 + 56^2 + 34^2 + 21^2 = 12302 78^2 + 65^2 + 43^2 + 1

qq_45772965的博客 3292
上一篇: Java自动探测文件的字符编码
下一篇: Java把字符串转Unicode
KingLearnJava
博客等级 码龄12年 93粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值