Tian Ji -- The Horse Racing hdu1052 贪心算法

KruskalAlgorithm(克鲁斯卡尔算法) KruskalAlgorithm介绍 克鲁斯卡尔(Kruskal)算法,是用来求加权连通图的最小生成树的算法。 基本思想:按照权值从小到大的顺序选择 n-1 条边,并保证这 n-1 条边不构成回路 具体做法:首先构造一个只含 n 个顶点的森林,然后依权值从小到大从连通网中选择边加入到森林中,并使森林中不产生回路,直至森林变成一棵树为止 最小生成树 (Minimum Cost Spanning Tree),简称 MST。给定一个带权的无向连通图,如何选取一棵生成树,使树上所有边上权的总和为最小,这叫最小生 阅读详情

http://acm.hdu.edu.cn/showproblem.php?pid=1052

赢了赚200,输了输200,平了就没钱。

贪心策略:若赢就比,若输就换最弱,若平再贪心。

先对两个组排序, 如果田忌最快的马比齐王最快的马快,直接拼掉;如果田忌最快的马比齐王慢,用田忌最慢的马拼齐王最快的马。

如果田忌最慢的马比齐王最慢的马快,直接拼掉,如果田忌最慢的马比齐王慢,用田忌最慢的马拼齐王最快的马。

如果田忌和齐王最快和最慢的马都相同,用田忌最慢的马拼齐王最快的马。

可证明:田忌最快的马和齐王最快的马相等时拿最慢的马来和齐王最快的马比有最优解。(这个,想一想就会明白的。)

#include <iostream>
#include <algorithm>
using namespace std;
#define N 1005
int tj[N],king[N];

int main(){
#ifndef ONLINE_JUDGE
	freopen("1052in.txt","r",stdin);
#endif
	int n,i,j,p,q,k;
	while (scanf("%d",&n)!=EOF&&n){
		for (i=0;i<n;i++)
			scanf("%d",&tj[i]);
		for (i=0;i<n;i++)
			scanf("%d",&king[i]);
		sort(tj,tj+n);
		sort(king,king+n);
		i=p=0;
		j=q=n-1;
		k=0;
		while (i<=j){
			if (king[i]<tj[p]){
				k++;
				i++;
				p++;
			}
			else if (king[i]>tj[p]){
				k--;
				p++;
				j--;
			}
			else if (king[j]<tj[q]){
				k++;
				j--;
				q--;
			}
			else if (king[j]>tj[q]){
				k--;
				j--;
				p++;
			}
			else {
				if (king[j]!=tj[p])
					k--;
				p++;
				j--;
			}
		}
		printf("%d\n",k*200);
	}
	return 0;
}


数据结构——克鲁斯卡尔(Kruskal)算法 克鲁斯卡尔算法是求连通网的最小生成树的另一种方法。与普里姆算法不同,它的时间复杂度为O(eloge)(e为边数),适合于求边稀疏的网的最小生成树 。克鲁斯卡尔算法从另一途径求网的最小生成树。其基本思想是:假设连通网G,令最小生成树的初始状态为只有n个顶点而无边的非连通图T,概述图中每个顶点自成一个连通分量。在E中选择代价最小的边,若该边依附的顶点分别在T中不同的连通分量上,则将此边加入到T中;否则,舍去此边而选择下一条代价最小的边。 阅读详情

相关推荐

Unity嵌套ScrollView滑动冲突解决方案:ExecuteEvents.Execute事件透传

在Unity UGUI中,竖向与横向ScrollView嵌套时出现滑动失效,本质是EventSystem事件分发机制的拦截限制。其原理在于PointerDown被外层捕获后,后续PointerMove默认不向下透传;ExecuteEvents.Execute提供了一条绕过常规冒泡流程的官方事件旁路,支持低延迟、方向自适应的精准透传。该技术具备高兼容性与零侵入特性,广泛应用于电商商品页、内容流卡片组、多级导航等需‘列表中嵌套轮播/标签’的真实场景,是解决UGUI嵌套滚动问题的核心工程实践方案。

weixin_33164198的博客 633

克鲁斯卡尔算法(Kruskal算法)求最小生成树

克鲁斯卡尔算法(Kruskal算法)求最小生成树 首先说一下最常见的两种求最小生成树的算法:克鲁斯卡尔算法和普里姆算法 求最小生成树之普里姆算法。该算法从顶点的角度为出发点,时间复杂度为O(n2),更适合与解决边的绸密度更高的连通网。 本文所介绍的克鲁斯卡尔算法,从边的角度求网的最小生成树,时间复杂度为O(eloge)。和普里姆算法恰恰相反,更适合于求边稀疏的网的最小生成树。 对于任意一个连通网的最小生成树来说,在要求总的权值最小的情况下,最直接的想法就是将连通网中的所有边按照权值大小进行升序排序,从小到大

L-Dreams的博客 4447

NLP自然语言处理:神经网络语言模型(NNLM)

目录 一、传统语言模型 1.1 稀疏性 1.2泛化能力差 二、神经网络语言模型 2.1 前馈神经网络模型(FFLM) 2.2 循环神经网络模型(RNNLM) 2.2.1循环神经网络模型示例 2.2.2RNN语言模型训练过程 2.2.3RNN语言模型反向传播 2.2.4语言模型评估 语言模型的构建目的是为了对语言中的各要素的分布进行估计,具有较长的研究历史和广泛...

陈宸的博客 1万+

最小生成树 —— Kruskal 克鲁斯卡尔算法

算法是一种用来在加权连通图中寻找最小生成树的算法,其操作对象是。1. 从加权图中的找出;初始时,所有边都不属于最小生成树,最小生成树为。2. 从不属于最小生成树的边中,判断最小边及其连接的两个顶点加入到最小生成树。a)若不形成环路,则将此最小边及其连接的顶点并入最小生成树;b)若形成环路,则永远不再看此边,然后从剩下的且不属于最小生成树的边中,寻找权值最小的边。3. 重复上述步骤,直至所有顶点均连接在一起,并没有形成环路时,最小生成树就找到了。

qq_64485082的博客 1万+

【电脑技巧】CPU正常运行时间过长,怎么解决?

目录 问题描述 解决方案 1、问题描述 不少同志都遇到过这样的问题:按【Ctrl + alt + delete】打开任务管理器,切到“性能”选项卡下,发现自己电脑的CPU正常运行时间竟然为好几十天!很多人担心这会不会影响电脑的寿命?于是很想知道这是怎么回事,以及如何解决这个问题。 我在此解答一下,这是由于你的电脑开启了“快速启动”这一选项的缘故,只要把这一选项关闭,问题就解决了。 2、解决方案 怎样关闭“快速启动”呢?按照如下的步骤来即可。 顺便声明一下,笔者的电脑配置: 使用电脑:联想Yoga 14

橄榄树下的孩子 3万+

使用单片机开发PWM的案例&相关项目源码

该项目使用STM32单片机生成PWM信号,通过改变PWM的占空比来控制连接在PWM输出引脚(如PA0)上的LED的亮度。在主循环中,通过改变比较值,PWM信号的占空比在0%到100%之间变化,从而实现LED亮度的渐变效果。这个项目是一个基础的PWM控制示例,通过学习和实践这个项目,可以掌握PWM的基本原理和使用方法,并为进一步开发和应用打下良好的基础。该项目实现了使用STM32单片机产生PWM信号,并通过改变PWM的占空比来控制LED的亮度。配置PWM输出引脚(如PA0),确保其模式为PWM输出。

清风明月 643

Kruskal算法

并查集、图的存储、贪心思想为了保证学习效果,请保证已经掌握前置知识之后,再来学习本章节!如果在阅读中遇到困难,也可以回到前面章节查阅。

10247D的博客 9650

人工蜂群优化算法(ABC)详解:原理、实现与应用

人工蜂群算法(Artificial Bee Colony, ABC)是Karaboga于2005年提出的一种群体智能优化算法,其灵感来源于蜜蜂群体在自然界中高效的采蜜行为。该算法通过模拟雇佣蜂、观察蜂和侦察蜂三种角色的分工协作来寻找最优解。在ABC算法中,每个潜在的解决方案被视为一个“食物源”,其质量由适应度函数评估。雇佣蜂负责在已知优质食物源附近进行局部开采;观察蜂根据雇佣蜂分享的信息,以一定概率选择并跟进优质食物源;侦察蜂则随机探索新区域,防止种群陷入局部最优。

qq_42212808的博客 393

《贪心算法》— HDU 1052 Tian Ji -- The Horse Racing

Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 30760Accepted Submission(s): 9317 Problem Descriptio...

69小石头的博客 606

文章ACCEPT之后填写内容教程-Springer-Verlag即施普林格

1. 确认corresponding author通讯作者机构是否正确(最好细分到系,如搜不到系只填大学也可)这些信息因为在投稿的时候都填过,所以一般都没问题,可确认并继续。2. Co-Author: 这篇文章有没有其他作者,如果有就选yes,并确认投稿时所填的作者姓名和机构是否正确。这个也是如果前期都填对了就不用修改。3. Research funders: 问文章的研究有没有资助,没有就选no,有就选yes,并填写机构名称和grant/contact numbers。

ZhangJiqun&191cm&85kg 4786

Sigrity System Explorer ViaWizard模式进行过孔建模和仿真分析操作指导

点击TVac_lower tdvac_lower,自动跳转到2D时域曲线,查看最小低电平穿过VIL(ac)max电压的延时,结果如下。点击TVac_high tdvac_high,自动跳转到2D时域曲线,查看最小高电平穿过VIH(ac)min电压的延时,结果如下。点击max Vix_Rise,自动跳转到2D时域曲线,查看上升边PN交叉点与参考电压VREF(dc)的偏差,结果如下。Threshold:阈值,软件自带3个模板,default,Tr01,Tr02,本例选择Default。

weixin_54787054的博客 571

hdu 1052 Tian Ji -- The Horse Racing 贪心算法

Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 11496    Accepted Submission(s): 3218 Problem Description

yangshuolll的专栏 7893

120、NPU的Mythic M1076:模拟存算一体NPU

这篇文章分享了作者调试Mythic M1076模拟存算一体NPU的实战经验,主要包含以下要点: 硬件设计陷阱:参考电压输入必须使用低ESR电容,普通贴片电容会导致模拟计算阵列工作异常。 核心技术原理: 采用真正的存算一体架构,将权重存储为模拟电压 使用浮栅晶体管存储权重,通过电流叠加实现乘法运算 包含108个计算单元阵列(Tile),每个256×256规模 使用注意事项: 编程模型特殊,需要依赖SDK自动映射网络层 存在6-8位有效精度限制,需用量化感知训练 功耗特性独特,静态偏置电流占主要功耗 调试手段有

m0_50546716的博客 122

Tian Ji -- The Horse Racing HDU - 1052 贪心算法 vector

原题 Problem Description Here is a famous story in Chinese history. “That was about 2300 years ago. General Tian Ji was a high official in the country Qi. He likes to play horse racing with the king and others.” “Both of Tian and the king have three horses i

qq_45750017的博客 226

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

hdu1052Tian Ji -- The Horse Racing(贪心算法)

Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 17656    Accepted Submission(s): 5120 Problem Description

我是小菜鸟啊。。。每天努力一点点。。。 701

假人有限元模型

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

HDU hdu 1052 Tian Ji -- The Horse Racing 贪心算法

下面的代码时间超时,因为使用了对Integer排序: import java.util.Arrays; import java.util.Comparator; import java.util.Iterator; import java.util.Map; import java.util.Scanner; import java.util.Set; import java.util.Tree

Beyond The Sky 629

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

hdu 1052 Tian Ji -- The Horse Racing 贪心算法

贪心初学参考:点击打开链接 先将田忌跟齐王的马的速度数组进行一次冒泡排序 1、如果田忌最快的马比齐王最快的马快,则比之 2、如果田忌最快的马比齐王最快的马慢,则用田最慢的马跟齐最快的马比  //这是贪心的第一步 3、如果田忌最快的马的速度与齐威王最快的马速度相等 3.1、如果田忌最慢的比齐威王最慢的快,则比之                         //这

KJBU2 790

hdu 1052 Tian Ji -- The Horse Racing(贪心算法)

本题链接:点击打开链接     Tian Ji -- The Horse Racing   Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 30233    Accepted Submission(s): 9117     ...

怒╯ér╭飞 577

HDU 1052 Tian Ji -- The Horse Racing(贪心算法)

asfas

luoxn28的专栏 659

[ACM_HDU_1052]Tian Ji -- The Horse Racing(贪心算法)

Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 9786 Accepted Submission(s): 2718 Description Here is a famo...

tansitongba 206

hdu1052-Tian Ji -- The Horse Racing

http://acm.hdu.edu.cn/showproblem.php?pid=1052 这题容易被题目里面所说的二分匹配误导,其实就是利用贪心的思想来做; 下面解释是直接转的,因为我怕我描写的可能不是很清楚,下面那个描写很详细,逻辑也非常缜密 /* HDU 1052 一、如果a的最慢速度大于b的最慢,则直接a的最慢与b的最慢比赛,赢一场; 二、如果a的最慢速度小于b的最慢,则用

bo-jwolf的专栏 958

hdu1052——Tian Ji -- The Horse Racing

Tian Ji -- The Horse Racing Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 19020    Accepted Submission(s): 5557 Problem Description H

Alex 1229
上一篇: 今年暑假不AC hdu2037 事件序列问题
下一篇: 畅通工程 hdu1232 并查集
花酱_
博客等级 码龄14年 30粉丝 100原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值