杭州协会网站建设/新乡网站优化公司推荐

杭州协会网站建设,新乡网站优化公司推荐,微信应用开发平台,网络优化推广 网站开发建设int a[1000], b5, c8; swap(b, c); // 交换操作 memset(a, 0, sizeof(a)); // 初始化为0或-1 引导问题 为一个小老鼠准备了M磅的猫粮,准备去和看守仓库的猫做交易,因为仓库里有小老鼠喜欢吃的五香豆,第i个房间有J[i] 磅的五香豆&#xf…

 int a[1000], b=5, c=8;
 swap(b, c);    // 交换操作
 memset(a, 0, sizeof(a)); // 初始化为0或-1

引导问题

为一个小老鼠准备了M磅的猫粮,准备去和看守仓库的猫做交易,因为仓库里有小老鼠喜欢吃的五香豆,第i个房间有J[i] 磅的五香豆,并且需要用F[i]磅的猫粮去交换;求老鼠最多可换多少豆?若五香豆不能全换猫粮,按比例换。

Sample Input 
  5 3 ——M猫粮   N房间
  7 2 ——五香豆  猫粮
  4 3
  5 2
  -1 -1 —— 结束

Sample Output
  13.333

由按比例换,7/2=3.5  4/3=1.333...  5/2=2.5  3.5最大 排序,一次换——7+5+1.3333=13.333


初识贪心

在对问题求解时,总是做出在当前看来是最好的选择

也就是说,不从整体上加以考虑,所作出的仅仅是在某种意义上的局部最优解(是否是全局最优,需要证明)。


例题

1.田忌赛马

每个马跟比自己弱的程度最小的马

1.排序

2.蓝色最大和红色最大比较,看蓝色能不能比过红色,若比不过,拿蓝色最小的跟红色比

3.拿蓝色最大跟红色第二大的比...能比就比,不能就继续拿最差的跟最好的比


反证法上大分~事件序列问题

已知N个事件的发生时刻和结束时刻。

一些在时间上没有重叠的事件,可以构成一个事件序列,如事件{2,8,10}。

事件序列包含的事件数目,称为该事件序列的长度。

请编程找出一个最长的事件序列。

至少存在一个最长事件序列包含最早结束事件(最早结束事件是0)

反证法证明上句:

假设所有最长事件序列都不包含最早结束事件;只要证明这个假设是错的,原命题得证;

任取一个所谓的最长事件序列,把第一个事件去掉,换掉事件0,肯定跟后面都不冲突(因为换上的是最早结束的时间,原来都不冲突,现在更不冲突)

证明完后选中最早结束事件0   后面我做类似的:每次找一个最早结束的事件,只要和前面的不冲突的都选中;


2.搬桌子

一个公司要做调整搬桌子,房间有400个,一边是单号,一边双号;

走廊很窄,只通过1个桌子过;

输入:

第二行:趟数

第三行:房间号:10号搬到20号

每趟搬要10min:不重叠可以同时搬,要10min;重叠要分开搬

法一:与上题的思想差不多,只不过,改成了最早开始事件(找开始最早的)

法二:统计每个区间在时间轴上的重叠次数,并找出最大重叠次数的区间。

#include <bits/stdc++.h>
using namespace std;int main() {int t, i, j, N, P[200];  // t是测试用例的数量,N是每个测试用例的区间数量int s, d, temp, k, MAX;  // s和d是区间的起点和终点,MAX用于记录最大重叠次数cin >> t;for (i = 0; i < t; i++) {// 初始化P数组,用于记录每个时间点的重叠次数for (j = 0; j < 200; j++)P[j] = 0;cin >> N;  // 读取当前测试用例的区间数量for (j = 0; j < N; j++) {cin >> s >> d;  // 读取区间的起点和终点s = (s - 1) / 2;  // 将起点转换为数组索引d = (d - 1) / 2;  // 将终点转换为数组索引// 如果起点大于终点,交换它们if (s > d) {temp = s;s = d;d = temp;}// 在区间[s, d]内的每个时间点增加计数for (k = s; k <= d; k++)P[k]++;}// 找到最大重叠次数MAX = -1;for (j = 0; j < 200; j++)if (P[j] > MAX)MAX = P[j];// 输出最大重叠次数乘以10cout << MAX * 10 << endl;}return 0;
}

3.删数问题

已知一个长度不超过240位的正整数n(其中不含有效字0),去掉其中任意s(s小于n的长度)个数字后,将剩下的数字按原来的左右次序组成一个新的正整数。

给定n和s,请编程输出最小的新正整数。

Sample Input
178543 4
Sample Output
13

法一:从左到右扫描逆序对,删掉左边的数,若没有逆序对,删掉最后一位数

1 7 84 3 —— 1 7 5 4 3 ——1 5 4 3 ——1 4 3 —— 1 3 

1 2 3


4.青蛙的邻居

每个湖泊都有一个青蛙,如果两个湖泊之间有水渠相连,我们认为两个青蛙他们为邻居;

问:你可以画出这个湖泊分布图吗?

Sample Input

3

7 —— 青蛙个数

4 3 1 5 4 2 1 —— 第一个青蛙有4个邻居;第二个青蛙有3个邻居....

6

4 3 1 4 2 0

6

2 3 1 1 2 1 

Sample Output

YES

NO

YES

 用以下知识可解决:


离散数学:可图性判定 

两个概念:

1.度序列:若把图A所有顶点的度数排成一个序列S,则称S为图A的度序列。

度:一个顶点他有几条边,度就是几

图A

2 3 1 1 1 就是度序列

2.序列是可图的:一个非负整数组成的有限序列如果是某个无向图的度序列,则称该序列是可图的。

若度序列2 3 1 1 1可以画出图A,就是可图的;


Havel-Hakimi定理:解决可读性判定

之后再排序:3 2 2 2 1

做一趟,排序一次;只要出现负数,就不可能了,图画不出来;最后全变成0,可以画;

Havel定理的解释——加加减减与图的对应关系_哔哩哔哩_bilibili


特别说明

若要用贪心算法求解某问题的整体最优解,必须首先证明贪心思想在该问题的应用结果就是最优解!!

在使用贪心算法解决问题时,必须首先证明贪心策略能够导致整体最优解。贪心算法通常通过每一步选择局部最优解来构建全局解,但并非所有问题都适合使用贪心算法,因此证明其正确性是关键。

说明理由:

若某货币系统有三种币值,分别为一角、五分和一分;要找1角5分
求最小找币数时,是否可以用贪心法求解?

可以;先用最大的能找几个找几个;

如果将这三种币值改为一种一分、五分和一分;要找1角5分

是否还可以使用贪心法求解?

不行;

因为他不成倍数;

贪心算法的常见操作:

贪心总是要找最大的、最小的、最划算的,往往要排序;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/896142.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大厂出品!三个新的 DeepSeek 平替网站

前几天给大家分享了几个 DeepSeek 免费平替网站&#xff0c;今天又来更新啦。 新增了以下三个平台&#xff1a;火山引擎、知乎直达、百度搜索。 经过实际测试&#xff0c;这几个平台的服务响应速度快&#xff0c;稳定性表现优异&#xff0c;基本不会出现宕机或服务器繁忙的情…

《深度学习实战》第1集:深度学习基础回顾与框架选择

本专栏系列博文旨在帮助读者从深度学习的基础知识逐步进阶到前沿技术&#xff0c;涵盖理论、实战和行业应用。每集聚焦一个核心知识点&#xff0c;并结合实际项目进行实践&#xff0c;避免空谈理论&#xff0c;简洁明快&#xff0c;快速切入代码&#xff0c;所有代码都经过验证…

经典复古嘻哈说唱朋克风格专辑海报标题设计psai英文字体安装包 Punk Of Sad — Ransom Font

Punk Of Sad 将确保您忘记所有简洁的线条和企业润色。这种经典的赎金风格字体是一封写给 DIY 文化的情书&#xff0c;诞生于杂志、演出海报和地下场景的原始能量的剪切和粘贴混乱。每个字母都是不可预测的&#xff0c;都带有叛逆的边缘。 这种字体有三种不同的样式 – Regular…

hot100-滑动窗口

3. 无重复字符的最长子串 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串的长度。 思路&#xff1a;双指针指向不含重复字符的连续字串的头和尾&#xff0c;用集合存储子串中的元素&#xff0c;有重复时&#xff0c;左指针持续右移&#xff0c;无重复后…

MariaDB 历史版本下载地址 —— 筑梦之路

MariaDB 官方yum源里面只有目前在维护的版本&#xff0c;而有时候对于老项目来说还是需要老版本的rpm包&#xff0c;国内很多镜像站都是同步的官方仓库&#xff0c;因此下载老版本也不好找&#xff0c;这里主要记录下从哪里可以下载到历史版本的MariaDB rpm包。 1. 官方归档网…

Linux-Ansible模块进阶

文章目录 Copy和FetchFile模块 Copy和Fetch copy和fetch模块实践 copy模块需要注意的点&#xff1a;在收集日志之前需要对文件先进行改名或者备份fetch模块需要注意的点&#xff1a;复制的源文件的路径必须是文件不能是目录建议全部使用绝对路径&#xff0c;别使用相对路径确保…

网络空间安全(1)web应用程序的发展历程

前言 Web应用程序的发展历程是一部技术创新与社会变革交织的长卷&#xff0c;从简单的文档共享系统到如今复杂、交互式、数据驱动的平台&#xff0c;经历了多个重要阶段。 一、起源与初期发展&#xff08;1989-1995年&#xff09; Web的诞生&#xff1a; 1989年&#xff0c;欧洲…

国产开源PDF解析工具MinerU

前言 PDF的数据解析是一件较困难的事情&#xff0c;几乎所有商家都把PDF转WORD功能做成付费产品。 PDF是基于PostScript子集渲染的&#xff0c;PostScript是一门图灵完备的语言。而WORD需要的渲染&#xff0c;本质上是PDF能力的子集。大模型领域&#xff0c;我们的目标文件格…

Powershell Install deepseek

前言 deepseekAI助手。它具有聊天机器人功能&#xff0c;可以与用户进行自然语言交互&#xff0c;回答问题、提供建议和帮助解决问题。DeepSeek 的特点包括&#xff1a; 强大的语言理解能力&#xff1a;能够理解和生成自然语言&#xff0c;与用户进行流畅的对话。多领域知识&…

网页制作06-html,css,javascript初认识のhtml如何建立超链接

超链接有外部链接、电子邮件链接、锚点链接、空链接、脚本链接 一、内部链接 与自身网站页面有关的链接被称为内部链接 1、创建内部链接 1&#xff09;语法&#xff1a; <a href"链接地址"> …… </a> 2&#xff09;举例应用&#xff1a; 3&#xf…

【算法与数据结构】单调队列

目录 单调队列 使用单调队列维护滑动窗口 具体过程&#xff1a; 代码实现&#xff1a; 复杂度分析&#xff1a; 使用单调队列优化动态规划 例题 单调队列 单调队列(deque)是一种特殊的队列&#xff0c;队列中的元素始终按严格递增或者递减排列。这样就可以保证队头元素…

深度学习每周学习总结Y1(Yolov5 调用官方权重进行检测 )

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客Y1中的内容 &#x1f356; 原作者&#xff1a;K同学啊 | 接辅导、项目定制 ** 注意该训练营出现故意不退押金&#xff0c;恶意揣测偷懒用假的结果冒充真实打卡记录&#xff0c;在提出能够拿到视频录像…

为AI聊天工具添加一个知识系统 之117 详细设计之58 思维导图及观察者效应 之2 概念全景图

&#xff08;说明&#xff1a;本文和上一篇问题基本相同&#xff0c;但换了一个模型 deepseek-r1&#xff09; Q1227、在提出项目“为使用AI聊天工具的聊天者加挂一个专属的知识系统”后&#xff0c;我们已经进行了了大量的讨论-持续了近三个月了。这些讨论整体淋漓尽致体现了…

2012年IMO几何预选题第6题

设有非等腰的 △ A B C \triangle ABC △ABC, O O O 和 I I I 分别为外心和内心. 在边 A C AC AC, A B AB AB 上分别存在两点 E E E 和 F F F, 使得 C D C E A B CDCEAB CDCEAB, B F B D A C BFBDAC BFBDAC. 设 ( B D F ) (BDF) (BDF) 和 ( C D E ) (CDE) (CDE)…

为Eclipse IDE安装插件IBM编程助手watsonx Code Assistant

从Eclipse IDE 安装 从Eclipse IDE 安装插件&#xff1a; _1、在Eclipse IDE 中&#xff0c;单击帮助菜单&#xff0c;然后选择EclipseMarketplace。 _2、根据您计划进行的工作类型选择安装方式&#xff1a; 有关代码建议、代码解释、代码文档和单元测试的集成生成式人工智能&a…

Linux基本指令(三)+ 权限

文章目录 基本指令grep打包和压缩zip/unzipLinux和windows压缩包互传tar&#xff08;重要&#xff09;Linux和Linux压缩包互传 bcuname -r常用的热键关机外壳程序 知识点打包和压缩 Linux中的权限用户权限 基本指令 grep 1. grep可以过滤文本行 2. 把包含9的文本行过滤出来了 …

【部署优化篇十四】【十万字全景拆解:GitHub Actions自动化流水线设计圣经(DeepSeek工业级实践大公开)】

一、从手工作坊到智能工厂:CI/CD的革命之路 想象一下,你所在的公司每天要手工组装1000台手机,每个环节都靠老师傅肉眼检查——这就是没有CI/CD的软件开发现状。GitHub Actions的出现,就像给软件交付装上了特斯拉的超级工厂流水线。 DeepSeek的CI/CD演进史就是一部血泪史:…

【精调】LLaMA-Factory 快速开始1: Meta-Llama-3.1-8B-Instruct

llamafactory-cli train examples/train_lora/llama3_lora_sft.yaml llamafactory-cli chat examples/inference/llama3_lora_sft.yaml llamafactory-cli export examples/merge_lora/llama3_lora_sft.yaml模型下载 git clone https://www.modelscope.cn/LLM-Research/Meta-Lla…

【07】区块链性能

7-1 基础性能优化 7-1-1 区块链性能瓶颈 总述 区块链性能指标 区块链的性能指标主要包括&#xff1a; 吞吐量&#xff1a;在固定时间内处理的交易数量 延时&#xff1a;对交易的响应和处理时间 主流区块链与中心化平台TPS对比 区块链与传统计算的对比 区块链可信且中立…

安全面试2

文章目录 简单描述一下什么是水平越权&#xff0c;什么是垂直越权&#xff0c;我要发现这两类漏洞&#xff0c;那我代码审计要注意什么地方水平越权&#xff1a;垂直越权&#xff1a;水平越权漏洞的审计重点垂直越权漏洞的审计重点 解释一下ssrf漏洞原理攻击场景修复方法 横向移…