零件分组(stick) 贪心 水

E. 零件分组(stick) [ 问题 1800 ] [ 讨论 ]
Description
某工厂生产一批棍状零件,每个零件都有一定的长度(Li)和重量(Wi)。现在为了加工需要,要将它们分成若干组,使每一组的零件都能排成一个长度和重量都不下降(若i<j,则Li≤Lj,Wi≤Wj)的序列。请问至少要分成几组?

Input
第一行为一个整数N(N≤1000),表示零件的个数。第二行有N对正整数,每对正整数表示这些零件的长度和重量,长度和重量均不超过10000。

Output
仅一行,即最少分成的组数。

Samples
Input 复制
5
8 4 3 8 2 3 9 7 3 5
Output
2
思路:
首先按长度将其大致分出一组来,然后对重量进行贪心;

struct ss{
    int l,w;
}q[10001];
short judge[10001]={0};这个存的是按重量分组时当前每一组的最后一个棍子的重量,(把每组最后一个棍子的重量标为一其他的为零。
int cmp(ss a,ss b)
{
    if(a.l==b.l) return a.w<b.w;
    return a.l<b.l;
}
int main() {
    int n;
    cin>>n;
    memset(judge,0,sizeof judge);
    for(int i=1;i<=n;i++)
    {
        cin>>q[i].l>>q[i].w;
    }
    sort(q+1,q+1+n,cmp);
    for(int i=1;i<=n;i++)
    {
        for(int j=q[i].w;j>=1;j--)
        {
            if(judge[j]==1)
            {
                judge[j]=0;
                break;
            }
        }
        judge[q[i].w]=1;
    }就是从后面一个一个往前赶。
    int sum=0;
    for(int i=1;i<=10001;i++)
    {
        if(judge[i]) sum++;前面说了每组的最后一个标一就数一下有几个一就行了。
    }
    cout<<sum;
    return 0;
}

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
引用、、分别是关于配置Nginx Sticky模块的命令行示例。 Nginx Sticky模块是一个第三方模块,用于实现会话粘性。它通过将请求与相同的客户端IP进行关联,可以将多个请求分发给同一台后端服务器,从而实现会话保持。 在配置Nginx Sticky模块时,通常需要进行以下几个步骤: 1. 运行"./configure"命令,指定Nginx的安装路径和其他配置选项,如"--prefix"用于指定安装路径,"--add-module"用于指定Sticky模块的路径。、、中的命令示例中都包含了这一步骤。 2. 执行"make"命令,用于编译Nginx和Sticky模块的源代码。中的命令示例包含了这一步骤。 需要注意的是,具体的配置命令可能会因为不同的环境和需求而有所差异,上述引用中的命令只是示例,并非通用配置。在实际使用中,需要根据自己的具体情况进行相应的配置。 请注意、、是与Nginx Sticky模块配置相关的命令行示例。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Nginx搭载sticky模块保持回话](https://blog.csdn.net/u014225032/article/details/125417815)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Nginx使用sticky模块实现对静态资源的Hash负载均衡](https://blog.csdn.net/dragonpeng2008/article/details/125704501)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值