【HDU1051】Wooden Sticks 花样贪心算法

用逐飞STC32G库做个智能小车:编码器测速、PWM调电机、ADC读电池电压(完整项目) 本文详细介绍了如何使用逐飞科技的STC32G12K128开源库构建智能小车项目,涵盖编码器测速、PWM电机控制和电池电压监测等核心功能。通过硬件选型、开发环境搭建、代码实现及调试技巧的全流程讲解,帮助开发者快速掌握基于STC32G的嵌入式系统开发,实现高性能的智能小车控制。 阅读详情

Wooden Sticks

Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)

Total Submission(s) : 7   Accepted Submission(s) : 4

Font: Times New Roman | Verdana | Georgia

Font Size: ← →

Problem Description

There is a pile of n wooden sticks. The length and weight of each stick are known in advance. The sticks are to be processed by a woodworking machine in one by one fashion. It needs some time, called setup time, for the machine to prepare processing a stick. The setup times are associated with cleaning operations and changing tools and shapes in the machine. The setup times of the woodworking machine are given as follows:

(a) The setup time for the first wooden stick is 1 minute.
(b) Right after processing a stick of length l and weight w , the machine will need no setup time for a stick of length l' and weight w' if l<=l' and w<=w'. Otherwise, it will need 1 minute for setup.

You are to find the minimum setup time to process a given pile of n wooden sticks. For example, if you have five sticks whose pairs of length and weight are (4,9), (5,2), (2,1), (3,5), and (1,4), then the minimum setup time should be 2 minutes since there is a sequence of pairs (1,4), (3,5), (4,9), (2,1), (5,2).

Input

The input consists of T test cases. The number of test cases (T) is given in the first line of the input file. Each test case consists of two lines: The first line has an integer n , 1<=n<=5000, that represents the number of wooden sticks in the test case, and the second line contains n 2 positive integers l1, w1, l2, w2, ..., ln, wn, each of magnitude at most 10000 , where li and wi are the length and weight of the i th wooden stick, respectively. The 2n integers are delimited by one or more spaces.

Output

The output should contain the minimum setup time in minutes, one per line.

Sample Input

3 
5 
4 9 5 2 2 1 3 5 1 4 
3 
2 2 1 1 2 2 
3 
1 3 2 2 3 1

Sample Output

2
1
3
#include<bits/stdc++.h>//懒 万能头文件 
#include<iostream>
using namespace std;
const int maxn=5001;
struct array{
	int l,w;
}a[maxn];
//对输入的木棒按照长度排序,长度相等则按重量 
int cmp(array x,array y){
	if(x.l==y.l)
		return x.w<=y.w;
	return x.l<=y.l;
}
int main(){
	int t,n;
	bool vis[maxn];//标记已遍历过的木棒 
	cin>>t;
	while(t--){
		cin>>n;
		for(i=0;i<n;i++)
			cin>>a[i].l>>a[i].w;
		sort(a,a+n,cmp);
		memset(vis,false,sizeof(vis));
		vis[0]=true;
		int flag,i,j,st=0,cnt=0; 
		while(st<n){//好好理解while循环
			++cnt;//记录子序列的个数 
			for(i=st+1,j=st,flag=1;i<n;i++){
				if(vis[i])	continue;
				if(a[j].w<=a[i].w){
					vis[i]=true;
					j=i;
				}
				else	if(flag){
					flag=0;
					st=i;//只标记未遍历的第一根木棒 
				}
			}
			if(flag)	break;//所有木棒都遍历过了 
		}
		cout<<cnt<<endl;
	}
	return 0;
}

 

【YOLO系列】YOLOv4详解:模型结构、损失函数、训练方法及代码实现 摘要:YOLOv4在目标检测领域实现了精度与速度的平衡,通过CSPDarknet53骨干网络、SPP+PANet特征融合及CIoU损失函数等创新,在MS COCO数据集达到65.7% AP50,V100显卡实现62FPS实时检测。核心优化包括Mosaic数据增强、自对抗训练和解耦头结构,显著提升小目标检测和遮挡场景鲁棒性。代码实现采用CSP模块和SPP多尺度池化,兼顾计算效率与检测性能,为工业落地提供高效解决方案。(149字) 阅读详情

相关推荐

RK3568嵌入式Linux多屏显示开发指南

摘要:本篇RK3568嵌入式Linux多屏显示开发指南详细介绍了基于Qt应用层的实现方案。文章首先概述了技术架构,说明从Qt应用到硬件显示的完整流程。然后提供了两种实现方案:推荐使用Qt内置多屏支持方案,包含完整的C++代码示例和配置文件说明;对于需要精细控制的场景,给出了基于libdrm API的底层实现方案。最后重点讨论了屏幕旋转处理和多屏协同工作模式的关键技术要点,包括扩展桌面、镜像模式等实现方法。

froxy的专栏 1573

HDU-Wooden Sticks(贪心)

Wooden Sticks There is a pile of n wooden sticks. The length and weight of each stick are known in advance. The sticks are to be processed by a woodworking machine in one by one fashion. It needs som...

1287

CMU开源NavRL:深度强化学习如何破解无人机动态避障难题?

卡内基梅隆大学(CMU)开源了NavRL框架,利用深度强化学习解决无人机在复杂环境中的动态避障难题。该框架通过创新的状态表示、多目标奖励函数设计以及独立的安全屏障机制,使无人机能够通过仿真训练自主学会灵活、安全的导航策略,并成功实现从仿真到真实环境的零样本迁移。

hope8的博客 720

HDU Wooden Sticks

Wooden Sticks http://acm.hdu.edu.cn/game/entry/problem/show.php?chapterid=1&amp;sectionid=3&amp;problemid=16 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java...

weixin_33774308的博客 137

惊呆了!Oracle 11g从入门到放弃的保姆级指南(新手必看)

本文为Oracle 11g数据库新手提供了一份详尽的入门指南。内容涵盖从安装配置、SQL*Plus工具使用、核心的SQL增删改查操作,到事务、索引等进阶概念的解析。文章旨在帮助初学者避开常见陷阱,快速掌握这一经典关系型数据库管理系统的基本操作与核心技能,实现从入门到上手。

ooo22的博客 267

Librepilot _64位window10环境下的搭建及一些坑的解决办法

  刚入IT行业的小菜鸟,在window上折腾了四天的librepilot地面控制站的搭建,想着这么辛苦不能白费了,看网上相关资料少得可怜,唯一一个详细教程还是在32位环境下,一大堆坑,所以把自己的经验写下来,供大家一起参考。 参考的原文是:https://www.cnblogs.com/jasonchan1202/p/7809937.html的博客,但是执行下来才发现这个博客对64位系统极其不...

weixin_41426339的博客 2728

HDU NO.1051 Wooden Sticks(区间贪心)

问题描述: 给n根木棍的长度和重量。根据要求求出制造木棍的最短时间。制造第一个木棍需要1分钟,若是接着要制造的木棍重量和长度都比此木棍长就不需要的时间,若是没有,则再需要1分钟。求时间最小为多少。 题目链接: 思路: 首先按照长短进行排序,紧接着比较重量,已经拍好循序的做一下标记,然后再进行第二轮... 代码: #include #include #include #include

411

LAMMPS ReaxFF模拟后处理:如何用Python精准追踪C-N键的断裂与形成?

本文详细介绍了如何利用Python对LAMMPS ReaxFF模拟结果进行后处理,精准追踪C-N键的断裂与形成过程。通过解析键级输出文件、构建原子类型映射字典,并实现C-N键的统计与可视化,为材料科学和催化反应研究提供了高效的数据分析解决方案。文章特别强调了ReaxFF力场在断键分析中的关键作用,并提供了完整的Python代码实现。

weixin_28706923的博客 356

HDU - Wooden Sticks(贪心)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1051Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Problem Description There is a pile of n wooden sticks. The length...

ityanger的技术栈 2422

【通信协议】I2C总线(一主多从)

I2C总线(一主多从)之软件模拟代码详解

m0_75090944的博客 9842

地震勘探原理---地震预处理

3.1 为什么说要对数据进行振幅补偿?具体来说,地震波在传播过程中会遇到各种各样的地质条件,例如不同的岩层、土壤、水层等,这些介质的密度、速度等特性不同,因而对地震波的能量消耗也有所不同。在传播距离较远的情况下,能量损失可能会导致接收到的地震信号振幅变小。相反,在传播距离较近的情况下,能量损失可能较小,导致接收到的地震信号振幅变大。如果不对数据进行振幅补偿,这种振幅不均衡会导致地震数据分析和解释的误差和不确定性增加,可能产生错误的结论。

DARRENANJIAN的博客 3274

HDU Wooden Sticks (贪心)

Wooden Sticks Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submission(s) : 19   Accepted Submission(s) : 7 Font: Times New Roman | Verdana | Georgia Fon

MY Blog 2040

关于Sybase ASE数据库的license以及试用版过期的问题的解决方案

当用户从Sybase官网上下载了ASE15.0.2以后,如果选择了安装Express Edition或者Developer Edition,基本上不会碰到什么问题,除了有些功能受限以下。 但大多数可能选择了Enterprise Edition for Evaluation类型,即企业版试用。都会碰到这样的问题,即一个月以后,license过期,无法启动server。于是很郁闷,可能大部分人,会选...

iihero@优快云 791

hdu1051 Wooden Sticks 【贪心+java】

Wooden Sticks Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 25552Accepted Submission(s): 10348 Problem Description ...

qq_35634181的博客 558

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

HDU-1051 Wooden Sticks(简单的贪心策略)

HDU-1051 Wooden Sticks(简单的贪心策略) Wooden Sticks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 30840 Accepted Submission(s): 12534 Problem Description There is a pile of n wooden sticks. The length

aconacon的博客 329

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

hdu1051 Wooden sticks (贪心)

hdu1051 题目大意:当后面的木棍的长度和宽度都比前面的长时,是不消耗时间的,否则消耗1min时间。 基本思路:贪心,可以想象每次一连串的木棍消耗1min,显然,先将木棍的长度和宽度排序(长度优先或者宽度优先结果一样), 每个最小的宽度和长度都对应一连串的可以通过的木棍,值得注意的是,每次通过木棍后,都要标记一下, 防止下次遍历时再找到。 #include #include #inc

竹丙丙丙丙 364

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

HDU 1051 Wooden Sticks (贪心)

Wooden Sticks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 14126    Accepted Submission(s): 5842 Problem Description There is a

攀大小熊猫的专栏 1332

HDU 1051 Wooden Sticks

Wooden Sticks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 21402 Accepted Submission(s): 8636 Problem Description There is a pile of n wooden sticks. The length and weight of each stick are

Ever_glow的博客 964

hdu 1051 Wooden Sticks(贪心)

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1051 经典的贪心题,按照l,w排好序后进行扫描标记,注意逻辑即可。 #include #include #include #include using namespace std; struct stick{ int l,w,tag; bool operator <(const

theArcticOcean 656

hdu1051 Wooden Sticks

题目大意:         有一堆木棍要放到机器里面处理,第一根放进去的木棍需要1分钟的调整机器的时间,如果后续放进的木根的长度比它长且重量比它重,则不需要重新调整机器,否则要花1分钟时间来再次调整。给出这一堆木根的各自的长度和重量,求需要的最少的时间。 解题思路:         考虑可以将木根排序,以长为第一要素,长度相同时参考重量,贪心算法,按升序排列。由于要标记木根是否已经被

fyy607的专栏 783

HDU1051 Wooden Sticks【贪心】

题目大意: 有N根木棍,每根木棍的长度和质量是已知的,机器要处理这N根木棍,处理时间和木棍的长度和 权重有关。第一根木棍的处理时间为1min,之后处理的木棍如果长度大于等于前一根木棍的长度 并且权重也大于等于前一根木棍的长度,就不需要处理时间;否则就需要1min的处理时间。问: 最小的处理时间为多少。 思路: 贪心思想。先将木棍按长度从小到大排列,如果长度一致,则按权重从小到大排列。然后根据题目 要求,如果后边的木棍长度和权重都大于前者,则不需要处理时间,否则加1min处理时间。

程序员充电站(itcharge) 1228

寒假集训 Day2 F Wooden Sticks HDU1051:木条排序

1.12F题 HDU-1051 题目大意: n个具有l、w权值的木条,找出尽可能多的上升至序列,木条 i 比木条 j 大当且仅当 li > lj 并且 wi > wj时。 Sample Input 3 5 4 9 5 2 2 1 3 5 1 4 3 2 2 1 1 2 2 3 1 3 2 2 3 1 Sample Output 2 1 3 解题思路

Hagtaril 312

贪心算法—杭电1051 Wooden Sticks

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

笨鸟 1010

HDU1051 Wooden Sticks

Wooden Sticks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 16395    Accepted Submission(s): 6731 Problem Description There is a

likilli的博客 450

hdu 1051 Wooden Sticks

http://acm.hdu.edu.cn/showproblem.php?pid=1051 这个题直接用贪心做。 题意就是一个机器重置一次要一分钟,只要长度和重量都比前一次小则不用重置机器,可以直接加工。求重置最少的次数。 首先对它排序,然后一个一个找满足条件的,并标记这个已经被加工了,被加工的不需要在加工。 AC代码: #include #include

蚕豆儿 844

HDOJ HDU 1051 Wooden Sticks

HDOJ HDU 1051 Wooden Sticks题目 点此查看 HDOJ HDU 1051 Wooden Sticks 分类 贪心 题意 用机器加工 n 个木棍 每个木棍都有 长度 和 重量 每次技巧调整需要 1 单位时间 (初始时 也需要 1 单位时间 ) 当 下一个 木棍 的质量的长度和质量都大于 上一个木棍时 机器不需调整 求 最少调整时间

Gy_1096440940的博客 404
上一篇: LaTex常用命令介绍
下一篇: 【HDU2037】今年暑假不AC 贪心算法
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

123我是木头人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值