
算法题目
菜鸟柱子
编程小菜
展开
-
数组中找出n个数相加,最接近num的
数学问题 -数组中找出n个数相加,最接近num的有同事提过这个问题,现在有时间了实现下做个整理,主要当时排列组合的概念都不知道是啥了,更不用说实现功能了。已经不知道排列组合,二项式定理,集合的可以先复习下相关概念和公式算法。java实现排列组合https://blog.youkuaiyun.com/xinpz/article/details/109728624目录数学问题 -数组中找出n个数相加,最接近num的一、概述问题:数组中找出n个数相加,最接近num的实现思路:1...原创 2020-11-19 10:05:02 · 5186 阅读 · 0 评论 -
java实现排列组合
数学问题 - java实现排列组合今天遇到一个组合问题,整理学习相关数学算法问题,并做记录。如果和我一样已经忘记数学集合,排列组合问题的,就需要先看下排列组合推导,及公式。排列公式:A(n,m)=n!/(n-m)!组合公式:C(n,m)=n!/m!(n-m)!二项式定理:非空子集=2^n -1目录数学问题 - java实现排列组合一、放回再取问题二、排列问题三、组合问题总结:一、放回再取问题问题1:假设袋子里有编号为1,2,...,m这m个球。现在每次原创 2020-11-16 20:34:28 · 4952 阅读 · 0 评论 -
题14——第几天
【程序14】 题目:输入某年某月某日,判断这一天是这一年的第几天?1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本月的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。import java.util.Calendar;import java.util.Scanner;public class Demo14 { public static void...转载 2019-04-18 15:49:54 · 180 阅读 · 0 评论 -
题15——排序
【程序15】 题目:输入三个整数x,y,z,请把这三个数由小到大输出。1.程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。import java.util.Arrays;import java.util.Scanner;public class Demo15...转载 2019-04-18 15:54:01 · 244 阅读 · 0 评论 -
题16——99 乘法
【程序16】 题目:输出9*9口诀乘法表。1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。出现重复的乘积(全矩形)public class Demo16 { public static void main(String[] args) { for (int i = 1; i <= 9; i++) { for (int j ...转载 2019-04-18 16:35:44 · 168 阅读 · 0 评论 -
题17——猴子吃桃子
【程序17】题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。public class lianxi17 {public static void main(String[] a...转载 2019-05-05 20:22:50 · 285 阅读 · 0 评论 -
题18——比赛组合
【程序18】题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。public class lianxi18 {static char[] m = { 'a', 'b', 'c' };static char[] n = { 'x', 'y'...转载 2019-05-05 20:24:02 · 182 阅读 · 0 评论 -
题19——菱形打印
【程序19】题目:打印出如下图案(菱形) * ******************** *** *public class lianxi19 {public static void main(String[] args) { int H = 7, W = 7;//高和宽必须是相等的奇数...转载 2019-05-05 20:25:17 · 419 阅读 · 0 评论 -
题20 ——数列前n项和
【程序20】题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。public class lianxi20 {public static void main(String[] args) { int x = 2, y = 1, t; double sum = 0; for(int i=1; i<=2...转载 2019-05-05 20:26:29 · 881 阅读 · 0 评论 -
题13——完全平方数
【程序13】 题目:一个整数,它加上100后是一个完全平方数,加上168又是一个完全平方数,请问该数是多少?1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上168后再开方,如果开方后的结果满足如下条件,即是结果。请看具体分析:public class Demo13 { public static void main(String[] args) { ...转载 2019-04-18 15:47:34 · 516 阅读 · 0 评论 -
题12——利润
【程序12】 题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元...转载 2019-04-18 15:45:44 · 222 阅读 · 0 评论 -
题4——质因分解
/* * 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 * 1.程序分析:对n进行分解质因数,应先找到一个最小的质数i,然后按下述步骤完成: * (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n > * i,但n能被i整除,则应打印出i的值,并用n除以i的商,作为新的正整数你,重复执行第一步...原创 2019-04-15 19:48:27 · 297 阅读 · 0 评论 -
题5——三元判断
/* * 题目5:利用条件运算符的嵌套来完成此题:学习成绩=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。 * 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。 */ public static void main(String[] args) { System.out.println("请输入N的值:"); ...原创 2019-04-17 19:41:51 · 275 阅读 · 0 评论 -
题6——最大公约数
【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。1.程序分析:利用辗除法。import java.util.Scanner;public class Demo06 { public static void main(String[] args){ int a,b,m,n; Scanner in=new Scanner(Syst...转载 2019-04-17 20:02:47 · 1373 阅读 · 0 评论 -
题7——字符统计
【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。1.程序分析:利用for循环语句,if条件语句。import java.util.Scanner;public class Demo07 { public static void main(String[] args){ System.out.println("请输入一个字符串...转载 2019-04-17 20:08:18 · 761 阅读 · 0 评论 -
题8——n个数求和
【程序8】 题目:求s = a + aa + aaa + aaaa + aa...a的值,其中a是一个数字。例如2 + 22 + 222 + 2222 + 22222(此时共有5个数相加),几个数相加有键盘控制。1.程序分析:关键是计算出每一项的值。import java.util.Scanner;public class Demo08 { public static void...转载 2019-04-17 20:09:53 · 397 阅读 · 0 评论 -
题9——因子之和
【程序9】 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3。编程找出1000以内的所有完数。public class Demo09 { public static void main(String[] args) { int s; for (int i = 1; i <= 1000; i++) { ...转载 2019-04-17 20:12:56 · 892 阅读 · 0 评论 -
题10——10次反弹
【程序10】 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?public class Demo10 { public static void main(String[] args) { double s = 0; double h = 100; for (in...转载 2019-04-17 20:15:28 · 142 阅读 · 0 评论 -
题11——多少个三位数
【程序11】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去掉不满足条件的排列。 public class Demo11 { public static void main(String[] args) { int count = 0; ...转载 2019-04-18 15:42:01 · 211 阅读 · 0 评论 -
题3——水仙花数
/** * 100-999水仙花数 */ @Test public void printNarcissisticNumber() { /* * 【程序3】 题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 * "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。 */ for...原创 2019-04-15 19:22:38 · 1037 阅读 · 0 评论