牛客网——代理服务器 贪心算法证明

清华大学2009年机试-代理服务器-1082 清华大学2009年机试-代理服务器-1082 贪心算法 阅读详情

链接:https://www.nowcoder.com/questionTerminal/1284469ee94a4762848816a42281a9e0?toCommentId=2997714
来源:牛客网
 

做的时候总感觉贪心得不到最优解,没想到竟然过了。。

讨论区好像没有证明,我就照着模板写了一个证明(第一次写证明可能说的不是很清楚,老哥们有更精炼的证明希望可以发一下)

 

证明如下:

假设有一个列表存储所有代理服务器IP,称为proxy,另一个列表存储要访问的服务器IP序列,称为target。

从头到尾遍历target列表,并记录其中代理服务器IP出现的情况。当proxy中的每一个IP都出现一次(我称其为一个周期),下一次再出现代理服务器IP时就必须要更换代理服务器。

所以我们的贪心策略就是,每次都选择在一个周期中最后出现的代理服务器作为切换的目标代理服务器,比如说初始代理服务器就是目标服务器列表的第一个周期中最后一个代理服务器。

假设贪心算法结果为A,如果A不是最优,那么一定存在一个最优解O,O和A至多前k-1个选择相同,从第k个选择开始不同。

这里的第k个选择就是第k次切换代理服务器时选择作为替换目标的代理服务器IP。

假设对于A,A第k次切换选择的是第s个代理,而O中第k次选择第s’个代理。我们再构建一个解O’,其前k-1个选择与O相同,k之后的选择也与O相同,只有第k个选择变为第s个代理。

由于在第k个位置选择第s个代理,其切换的必须位置在选择s‘时之后,所以其切换的次数和O相同,O’仍为最优解,但是O’与A的共同选择有k个,这与我们的前提最多k-1个共同选择相冲突。从此向后递推可得出A为最优解。

代理服务器--清华大学机试(贪心算法求解) 题目描述: 使用代理服务器能够在一定程度上隐藏客户端信息,从而保护用户在互联网上的隐私。我们知道n个代理服务器的IP地址,现在要用它们去访问m个服务器。这 m 个服务器的 IP 地址和访问顺序也已经给出。系统在同一时刻只能使用一个代理服务器,并要求不能用代理服务器去访问和它 IP地址相同的服务器(不然客户端信息很有可能就会被泄露)。在这样的条件下,找到一种使用代理服务器的方案,使得代理服务器切换的... 阅读详情

相关推荐

到底什么叫贪心策略(内含几个经典贪心样例和三大图论算法)


 昨天和前天写完了分治和dp,感觉收获真的挺大的,复习绝不是简单的重复记忆,而是将所学知识融会贯通的过程,分析各种思想的异同,这些都是在平时学习和刷题的时候没有认真考虑的问题好了,扯远了今天分析一下到底什么叫贪心策略怎么理解贪心:贪心在解决问题上是目光短浅的,仅仅根据当前的已知信息就做出选择,并且一旦做了选择,就不再更改比如01背包问题,用贪心的话是不可解决的,因为...

Y先森0.0 2万+

【牛客网】代理服务器

链接:https://www.nowcoder.com/questionTerminal/1284469ee94a4762848816a42281a9e0来源:牛客网[编程题]代理服务器热度指数:4643时间限制:1秒空间限制:65536K算法知识视频讲解    使用代理服务器能够在一定程度上隐藏客户端信息,从而保护用户在互联网上的隐私。我们知道n个代理服务器的IP地址,现在要用它们去访问m个服务...

bound2020的博客 1520

零中频架构实战:用Matlab模拟AD9361收发信号(附完整代码)

本文详细介绍了如何使用Matlab模拟AD9361射频收发器的零中频架构,解决镜像干扰等关键挑战。通过完整的代码示例和系统级建模方法,帮助工程师掌握RFIC设计中的自适应校准算法和性能优化技巧,特别适用于SDR系统开发。

weixin_30733003的博客 542

Java异常(转)https://www.nowcoder.com/questionTerminal/9e4e6d1f6bc2456aaaaa2dff4c94f9ab?toCommentId=5330

1.Exception(异常) :是程序本身可以处理的异常。  2.Error(错误): 是程序无法处理的错误。这些错误表示故障发生于虚拟机自身、或者发生在虚拟机试图执行应用时,一般不需要程序处理。 3.检查异常(编译器要求必须处置的异常) :  除了Error,RuntimeException及其子类以外,其他的Exception类及其子类都属于可查异常。这种异常的特点是Java编译器会检查

sinat_28381177的博客 4769

直流电机双闭环调速系统MATLAB仿真

Chopper-Fed DC Motor Drive This example shows a Chopper-Fed DC Motor Drive. Description The DC motor is fed by the DC source through a chopper which consists of GTO thyristor and free-wheeling diode ...

飞行动力的博客 2万+

验证码破解2.0:Python+CV大模型搞定滑块/点选验证

核心创新:基于YOLOv8+SAM CV大模型的端到端验证码破解方案,无需人工设计特征,适配多种验证码类型;核心价值高成功率:滑块验证≥95%,点选验证≥90%,远超传统CV方案;低延迟:单验证码破解≤2秒,满足高并发采集需求;行为模拟:生成符合人类操作的轨迹,绕过行为检测;易扩展:统一架构支持新增验证码类型,仅需少量标注数据微调;技术要点采用YOLOv8实现快速目标检测,SAM实现像素级分割;生成物理规律的人类轨迹,模拟真实操作行为;

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1261

代理服务器-贪心算法

上文链接:https://blog.youkuaiyun.com/slient_love/article/details/104311852 代理服务器-贪心算法 题目描述 使用代理服务器能够在一定程度上隐藏客户端信息,从而保护用户在互联网上的隐私。我们知道n个代理服务器的IP地址,现在要用它们去访问m个服务器。这 m 个服务器的 IP 地址和访问顺序也已经给出。系统在同一时刻只能使用一个代理服务器,并要求不...

slient_love的博客 970

复现论文《Analysis of circulating current mechanism of Grid-forming offshore wind farm based on DRU-HVDC》

该论文研究了基于二极管整流单元(DRU)和低频交流(LFAC)输电的构网型(GFM)海上风电场并网系统中环流的产生机理。由于 DRU 不可控,系统电压与频率依赖于风力发电机(WT)的网侧变流器,当多台 WT 并联运行时,因输出电压幅值、相位、输出阻抗或频率不匹配,会产生基频环流,导致系统损耗增加与稳定性下降。论文通过理论建模与 MATLAB/Simulink 仿真,分析了四种不平衡工况下的环流机理,并指出幅值不平衡和阻抗不平衡引起无功环流,相位不平衡引起有功环流,频率不平衡则引起环流振荡,为后续环流抑制研究

huanghm88的专栏 104

贪心算法题目

区间的元素选择 牛客网:挑选代表 题目描述 我们有很多区域,每个区域都是从a到b的闭区间,现在我们要从每个区间中挑选至少2个数,那么最少挑选多少个? 输入描述: 第一行是NNN(N&lt;10000N&lt;10000N<10000),表示有NNN个区间,之间可以重复 然后每一行是aia_iai​,bib_ibi​,持续NNN行,表示现在区间。均小于100000 输出描述: ...

weixin_42564710的博客 999

ZYNQ 网络通信的四种实现方案

一,ZYNQ MIO以RGMII 接口连接外部PHY芯片实现LWIP网络通信。 二,ZYNQ PS 的 ENET0/ENET1 通过 EMIO 的方式扩展至 PL,在 PL 中通过 RGMII 接口连接扩展子卡实现 LWIP 网络通信。 在PL中搭建了1个AXI 1G/2.5G Ethernet Subsystem以及1个AXI Direct Memory Access IP 核。这两个 IP核均通过AXI 总线经S_AXI_HP0 口与PS 连接,PS 通过AXI 总线对其进行配置和控..

wangjie36的博客 1万+

EtherCAT主站SOEM -- 24 -- 基于STM32F767IGT6搭建自己的SOEM-EtherCAT主站

以上就是EtherCAT主站SOEM – 23 – 基于STM32F767IGT6搭建自己的SOEM-EtherCAT主站的内容。有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。创作不容,如果文档对您有帮助,记得给个赞。

常驻客栈的博客--嵌入式EtherCAT 3556

贪心算法小记——代理服务器

贪心策略用于求解最优化问题,基本原理是:总是选择当前状态中最优的策略。 当然,每一个局部最优加起来可能并不等于全局最优。 这也是使用贪心前最需要搞清楚的问题:确定某个状态以前的过程不会影响以后的状态。 代理服务器:题目链接 使用代理服务器能够在一定程度上隐藏客户端信息,从而保护用户在互联网上的隐私。我们知道n个代理服务器的IP地址,现在要用它们去访问m个服务器。这 m 个服务器的 IP 地址和访问...

好多鱼 373

CH-x01&ICU-x0201-问答专题

CH201在近距离30cm和远距离1.8m左右测距误差是最大的,误差可能>3 cm。在中间部分测距误差是<2cm的,因为考虑到安装测试治具也存在误差,所以整个范围设置在±3cm。

nicole088的专栏 379

清华机试oj——代理服务器

题目描述 使用代理服务器能够在一定程度上隐藏客户端信息,从而保护用户在互联网上的隐私。我们知道n个代理服务器的IP地址,现在要用它们去访问m个服务器。这 m 个服务器的 IP 地址和访问顺序也已经给出。系统在同一时刻只能使用一个代理服务器,并要求不能用代理服务器去访问和它 IP地址相同的服务器(不然客户端信息很有可能就会被泄露)。在这样的条件下,找到一种使用代理服务器的方案,使得代理服务器切换的次...

进阶中的程序员吃吃的博客 1522

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

牛客网---贪心算法(python实现)

不贪心如何拿Offer一:股票交易的最大收益:二:分糖果问题: 一:股票交易的最大收益: 假定你知道某只股票每一天价格的变动。 你最多可以同时持有一只股票。但你可以无限次的交易(买进和卖出均无手续费)。 请设计一个函数,计算你所能获得的最大收益。 根据题意我们可以分析出来,只要是明天比今天涨了,我们就要这个收益。(贪心) class Solution: def maxProfit(self , prices ): res = 0 length = len(price

一夜奈何梁山 937

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

牛客网 NC207078 交换 贪心算法

先将数组排序,我们就得到每个数排序后的位置。然后对原始的数组进行遍历,如果它的位置和排序后的位置不一致,则将其交换到排序后的位置。

Curren的博客 632

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

计算机历年考研复试上机题------代理服务器

题目传送门 这道题是清华复试的一道题 直接上题面: 题目描述 使用代理服务器能够在一定程度上隐藏客户端信息,从而保护用户在互联网上的隐私。我们知道n个代理服务器的IP地址,现在要用它们去访问m个服务器。这 m 个服务器的 IP 地址和访问顺序也已经给出。系统在同一时刻只能使用一个代理服务器,并要求不能用代理服务器去访问和它 IP地址相同的服务器(不然客户端信息很有可能就会...

燃烧的火骷髅 690

牛客编程题--必刷101之贪心算法

贪⼼算法可以认为是动态规划算法的⼀个特例

qq_36317312的博客 1998

牛客——贪心算法

文章目录1.分糖果问题2.主持人调度(一)3.主持人调度(二)4.合并区间(类似有一天考试的题,找最小不交叉区间)5.6.7.8.9.1.1.1.1.1.1. 1.分糖果问题 class Solution: def candy(self , arr: List[int]) -> int: # write code here n=len(arr) ans=[1]*n for i in range(n-1):

哦啦啦啊哦哦 731

牛客算法竞赛入门课第一节习题题解-铺地毯

牛客算法竞赛入门课第一节习题 NC16593 铺地毯 链接:https://ac.nowcoder.com/acm/problem/16593 来源:牛客网 题目描述 为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯。一共有n张地毯,编号从1到n。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。地毯铺设完成后,组织者想知道覆盖地面某个点的最上面的那张地毯的编号。注意:在矩形地毯边界和四个顶点上的点也算

xyl_lyx的博客 830

【C】贪心算法

所谓的“贪心算法”,就是每一次面临选择时,选择最优、最先、最X的一项,反正就是突出一个“最”字。比如有1,4,3,2,让你选两个数,令选出来的数最大,你肯定按照每次选择都选择,剩余数中最大的一个数,第一次选择4,剩下还有1,3,2,这时傻子都会选择3啊,从而得出在1,4,3,2这四个数中,选出的两数和是最大的。此时,你就不知不觉地运用到了贪心算法,以最大选择为贪心。 那么,“贪心算法”真正用到编

编程记录,亲测有效 2万+

牛客网刷题--代理服务器、反序输出

牛客网刷题–代理服务器 使用贪心算法思想。 总是寻找局部最优解。对于左侧的每一个服务器,string a[n],依次与当下的右侧IP地址string b[m] 进行比较,注意每一次比较并不是从头开始的,而是用一个变量server记录每一次寻找最优解(即在出现相同IP地址之前IP地址数最多)时所在的位置。(表述得不好) 这个算法中寻找局部最优解的思想就是,遍历左侧的服务器,对于每个服务器地址,记录他...

everysigleday的博客 252

贪心算法_题目1082:代理服务器

时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:910 解决:272 题目描述:     使用代理服务器能够在一定程度上隐藏客户端信息,从而保护用户在互联网上的隐私。我们知道n个代理服务器的IP地址,现在要用它们去访问m个服务器。这 m 个服务器的 IP 地址和访问顺序也已经给出。系统在同一时刻只能使用一个代理服务器,并要求不能用代理服务器

Denallo的专栏 3949

算法笔记之 贪心算法 (题目1082:代理服务器)

题目描述: 使用代理服务器能够在一定程度上隐藏客户端信息,从而保护用户在互联网上的隐私。我们知道n个代理服务器的IP地址,现在要用它们去访问m个服务器。这 m 个服务器的 IP 地址和访问顺序也已经给出。系统在同一时刻只能使用一个代理服务器,并要求不能用代理服务器去访问和它 IP地址相同的服务器(不然客户端信息很有可能就会被泄露)。在这样的条件下,找到一种使用代理服务器的方案,使得代理...

thewebcode 318

贪心算法----几个基本例题

题目一:   最优装载问题,给出n个物体,第i个物体重量为wi。选择尽量多的物体,使得总重量不超过C。   经过前面的学习很容易想到贪心策略,那就是每次选重量最轻的物体,那么物体数就最多。   代码: public class 最优装载问题 { public static void main(String[] args) { Scanner sc = new...

weixin_30734435的博客 655
上一篇: Vscode+Chrome调试直接读取本地文件解决方案
下一篇: 廖雪峰Python习题——函数的参数
LazzyDoog
博客等级 码龄10年 0粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值