简单编程题目Java语言

1、煤球数目

有一堆煤球,堆成三角棱锥形。具体:
第一层放1个,
第二层3个(排列成三角形),
第三层6个(排列成三角形),
第四层10个(排列成三角形),
….
如果一共有100层,共有多少个煤球?

请填表示煤球总数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

解答:这其实是一道计算1+3+6+……+5050=?这个式子的和的题目。

public static void main(String[] args) {
	// TODO Auto-generated method stub
	int sum = 0;
	int[] a = new int[101];
	for(int i=1;i<=100;i++){
		a[i] = a[i-1]+i;
		sum +=  + a[i];
	}
  System.out.println(sum);
}

}

2、生日蜡烛

某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
解答:用双重循环即可解答

	 public static void main(String[] args) {
	// TODO Auto-generated method stub

	for(int i=1;i<100;i++){     //i是开始过生日的年龄
		int sum = 0;
		for(int j=i;j<100;j++){   //j是到现在的年龄
			sum = sum + j;
			if(sum==236){
				System.out.println(i);
				System.out.println(j);
			}
		}
	}

}
输出26
    33

正确答案为26岁。

3、猜年龄

小明带两个妹妹参加元宵灯会。别人问她们多大了,她们调皮地说:“我们俩的年龄之积是年龄之和的6倍”。小明又补充说:“她们可不是双胞胎,年龄差肯定也不超过8岁啊。”
请你写出:小明的较小的妹妹的年龄。
注意: 只写一个人的年龄数字,请通过浏览器提交答案。不要书写任何多余的内容。
解答:

public class Guessage {
	public static void  age(){
for(int i=1;i<100;i++){
	for(int j=i+1;j<100;j++){
		int a=i*j;
		int b=6*(i+j);
		if(a==b&&j-i<8&&j-i!=0){
			System.out.println(i);
		}	
	}
}
}

public static void main(String[] args) {
	age();// TODO Auto-generated method stub

}

}
输出10

4、dfs问题 凑算式

凑算式这里写图片描述
这个算式中AI代表19的数字,不同的字母代表不同的数字。
比如:
6+8/3+952/714 就是一种解法,
5+3/1+972/486 是另一种解法。
这个算式一共有多少种解法?
注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。
解答:用dfs找出1到9的全排列,再根据条件对其进行剪枝即可。

public class Caculation {
static int num[] = new int[10];//存储全排列的数组
static boolean visit[] = new boolean[10];//游标
static int count = 0;

static void solve(){
	 if (num[1] + 
	            (double)num[2]/num[3] + 
	            (double)(num[4]*100+num[5]*10+num[6])/(num[7]*100+num[8]*10+num[9])
	            == 10){
		count++;
	}
}
	static void dfs(int index){
		if(index==10){
			solve();
			return;
		}
		for(int i=1;i<10;i++){
			if(visit[i]==false){
				visit[i]=true;
				num[index]=i;
				dfs(index+1);
				visit[i]=false;
			}
		}
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		dfs(1);
		System.out.println(count);
}

输出:29

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值