IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> Java——抽签、生日蜡烛 -> 正文阅读

[数据结构与算法]Java——抽签、生日蜡烛

目录

抽签

生日蜡烛


抽签

你的朋友提议玩一个游戏:将写有数字的 n 个纸片放入口袋中,你可以从口袋中抽取 4 次纸

片,每次记下纸片上的数字后都将其放回口袋中。如果这 4 个数字的和是 m,就是你赢,否

则就是你的朋友赢。你挑战了好几回,结果一次也没赢过,于是怒而撕破口袋,取出所有纸

片,检查自己是否真的有赢的可能性。请你编写一个程序,判断当纸片上所写的数字是 k1,

k2, , kn时,是否存在抽取 4 次和为 m 的方案。如果存在,输出 Yes;否则,输出 No

【限制条件】

l 1 n ?50

l 1 m ?108

l 1 ki ?10

【输入】

n = 3

m = 10

k = {1, 3, 5}

【输出】

Yes(例如4次抽取的结果是1135,和就是10

【输入】

n = 3

m = 9

k = {1, 3, 5}

【输出】

No(不存在和为9的抽取方案)

【输出格式】

3

10

1 3 5

【输出格式】

NO

import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		int n,m;
		int k[] = new int[50];
		Scanner sc = new Scanner(System.in);
		n = sc.nextInt();
		m = sc.nextInt(); 
		for(int i = 0;i < n;i++) {
			k[i] = sc.nextInt();
		}
		boolean f = false;//是否找到和为m的组合的标记
		// 通过四重循环枚举所有方案
		for(int a = 0;a < n;a++) {
			for(int b = 0;b < n;b++) {
				for(int c = 0;c < n;c++) {
					for(int d = 0;d < n;d++) {
						if(k[a] + k[b] + k[c] + k[d] == m) {
							f = true;
					}
				}
			}
		}
	}
		if(f)
			System.out.println("Yes");
		else
			System.out.println("NO");
		return;
	}
}

生日蜡烛

某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。
现在算起来,他一共吹熄了236根蜡烛。
请问,他从多少岁开始过生日party的?

public class Main {
	public static void main(String[] args) {
		for(int i = 1;i < 100;i++) {//假设他可以活100岁,遍历1~100岁
			//假设从第i年开始吹蜡烛
			int s = i;//吹蜡烛总数
			int n = i;//今年吹的蜡烛数
			while(true){
				n++;
				s=s+n;
				if(s == 236) {
					System.out.print(i);
					break;
				}
				if(s > 236)
					break;
			}
		}
	}
}
public class Main {
	public static void main(String[] args) {
		for(int i = 1;i < 100;i++) {//假设他可以活100岁,遍历1~100岁
			int s = 0;//吹蜡烛总数
			for(int n = i;n < 100;n++) {
				if(s < 236) {
					s += n;
				}else if(s == 236) {
					System.out.println(i);
					return;
				}else {
					break;
				}
			}
		}
	}
}

【答案】26?

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2022-03-11 22:26:29  更:2022-03-11 22:29:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 14:28:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码