随机给定10个小于10的数字(出现的数字可能重复),从其中取出3个各不相同的数字可组合出多个不同的3位数,请输出这些3位数中最大的那个3位数
来源:互联网 发布:沪深300指数数据下载 编辑:程序博客网 时间:2024/05/02 20:07
随机给定10个小于10的数字(出现的数字可能重复),从其中取出3个各不相同的数字可组合出多个不同的3位数,请输出这些3位数中最大的那个3位数
方法一思路:找出10个数中不重复的3个数,取出这三个数组合后的最大值保存到数组中,之后从保存的数组中查找最大值
<script>//方法一: function getmax(n0,n1,n2,n3,n4,n5,n6,n7,n8,n9){ var arr = [n0,n1,n2,n3,n4,n5,n6,n7,n8,n9]; var newarr = []; var b = []; var endmax = 0; for (i = 0; i < arr.length; i++) { for (j = 0; j < arr.length; j++) { if (arr[i] == arr[j]) continue; for (k = 0; k < arr.length; k++) { if (arr[k] == arr[i] || arr[k] == arr[j]) continue; //console.log(arr[k],arr[i],arr[j]); newarr = []; newarr = [arr[i],arr[j],arr[k]]; var max =0;var centernum; max = arr[i] > arr[j] ? arr[i] : arr[j]; max = max > arr[k] ? max : arr[k]; min = arr[i] < arr[j] ? arr[i] : arr[j]; min = min < arr[k] ? min : arr[k]; for(var c=0;c<3;c++){ if(newarr[c] < max && newarr[c] > min) { centernum = newarr[c]; break; } } b.push(max*100+centernum*10+min); } } } for(var m = 0;m<b.length;m++){ if(m ==0 ) endmax = b[0]; if(m!=0 && endmax < b[m]) endmax = b[m]; } return endmax; }</script>
随机给定10个小于10的数字(出现的数字可能重复),从其中取出3个各不相同的数字可组合出多个不同的3位数,请输出这些3位数中最大的那个3位数
方法二思路:循环查找出这十个数中的最大值,将其存到数组中,然后组合即为最大值
<script>//方法二: function getmax3(n0,n1,n2,n3,n4,n5,n6,n7,n8,n9){ var arr = [n0,n1,n2,n3,n4,n5,n6,n7,n8,n9]; var max = 0; var maxarr = []; //获取最大数 for(var c = 0;c<3;c++){ if(c != 0){ max = 0;//下次循环开始要清空max的值 for(var j = 0;j < arr.length;j++){ var flag = 0; for(var m = 0;m < maxarr.length;m++){ if(arr[j] == maxarr[m]) flag=1;//当前值是否是已存在的最大值 } if(!flag){ if(arr[j] > max) max = arr[j]; } } maxarr.push(max); }else{ for(var i = 0;i < arr.length;i++){ if(arr[i] > max) max = arr[i]; } maxarr.push(max); } } return maxarr[0]*100+maxarr[1]*10+maxarr[2]; }</script>
总结:方法二思路较为简单,只需多加注意注释内容即可
0 0
- 随机给定10个小于10的数字(出现的数字可能重复),从其中取出3个各不相同的数字可组合出多个不同的3位数,请输出这些3位数中最大的那个3位数
- /*算法从9个数中取出3个3位数其中两个3位数相加等于另一个3位数其中每位数字不能重复,c语言怎么实现*/
- 指定数字的输出位数
- 1-9九个数字组成一个九位数 如果从左边起取出1个数字,需要能被1整除,取出两个数字组成的数能被2整除,取出三个数字组成的数能被3整除,依次类推
- 基础算法题(1)—— 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的四位数?
- 生成时间格式加随机四位数的数字组合
- 有4个数,组成不同的3位数,每个数各个位数字不同,求这些数的个数
- 随机生成固定位数的数字
- Python实现无重复数字的多位数全部输出
- C++数字按指定的位数输出
- 输出四位数各位上的数字
- C++数字按指定的位数输出
- [Asp.net] 随机生成300个不重复的 纯数字8位数
- Python删除四位数字典中带有重复数字的
- 编程实现:一个四位数它的数字组合的最大四位数 减去数字组合的最小四位数等于它本身
- 数字问题---位数上的数字
- web前端js中随机生成指定位数的字母数字、组合字符串可选择字母大小写
- 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?请输出所有组合
- Qt线程的简单使用
- FreeMarker和velocity入门
- 一个简单的Android木马病毒的分析
- JSPatch – 动态更新iOS APP
- MFC/ODBC 记录集只读的问题
- 随机给定10个小于10的数字(出现的数字可能重复),从其中取出3个各不相同的数字可组合出多个不同的3位数,请输出这些3位数中最大的那个3位数
- 修改easyui日期控件只显示年月,并且只能选择年月
- jvm 学习
- Spark学习1-wordcount
- 进程pid,ppid;进程uid,euid;用户uid,guid
- 多线程下载
- jeasyui在页面显式创建dialog并兼容IE8
- Eclipse中Java项目打包——外部jar包位置 ,生成jar包位置,mf文件书写等问题
- 广义表简述