[USACO10OCT]汽水机Soda Machine

题意翻译

为了满足fj所有的N(1<=n<=50000)头奶牛的需求,fj新买了一台汽水机。他想找到一个最完美的位置来安放它。

奶牛的牧场可以被表示为一个一维数轴,第i个奶牛被放牧的区间是[Ai...Bi](包含端点),fj可以把汽水机放在[1..1,000,000,000]。

因为奶牛们都懒得要死,她们想尽可能的少移动。她们希望汽水机被放在自己的放牧区间内。

遗憾的是,fj并不总能满足所有奶牛的要求,所以他想请你帮忙算出他能满足的奶牛数目

题目描述

To meet the ever-growing demands of his N (1 &lt;= N &lt;= 50,000) cows, Farmer John has bought them a new soda machine. He wants to figure out the perfect place to install the machine.

The field in which the cows graze can be represented as a one-dimensional number line. Cow i grazes in the range A_i..B_i (1 &lt;= A_i &lt;= B_i; A_i &lt;= B_i &lt;= 1,000,000,000) (a range that includes its endpoints), and FJ can place the soda machine at any integer point in the range 1..1,000,000,000. Since cows are extremely lazy and try to move as little as possible, each cow would like to have the soda machine installed within her grazing range.

Sadly, it is not always possible to satisfy every cow's desires. Thus FJ would like to know the largest number of cows that can be satisfied.

To demonstrate the issue, consider four cows with grazing ranges 3..5, 4..8, 1..2, and 5..10; below is a schematic of their grazing ranges:


         1   2   3   4   5   6   7   8   9  10  11  12  13
         |---|---|---|---|---|---|---|---|---|---|---|---|-...
                 aaaaaaaaa
                     bbbbbbbbbbbbbbbbb
         ccccc           ddddddddddddddddddddd

As can be seen, the first, second and fourth cows share the point 5, but the third cow's grazing range is disjoint. Thus, a maximum of 3 cows can have the soda machine within their grazing range.

有N个人要去膜拜JZ,他们不知道JZ会出现在哪里,因此每个人有一个活动范围,只要JZ出现在这个范围内就能被膜拜,

伟大的JZ当然希望膜拜他的人越多越好,但是JZ不能分身,因此只能选择一个位置出现,他最多可以被多少人膜拜呢,

这个简单的问题JZ当然交给你了

输入格式

* Line 1: A single integer: N

* Lines 2..N+1: Line i+1 contains two space-separated integers: A_i and B_i

输出格式

* Line 1: A single integer representing the largest number of cows whose grazing intervals can all contain the soda machine.

输入输出样例

输入 #1
4 
3 5 
4 8 
1 2 
5 10 
输出 #1
3 

说明/提示

If the soda machine is placed at location 5, cows 1, 2, and 4 can be satisfied. It is impossible to satisfy all four cows.

【解题思路】

区间差分

【code】

 1 #include <cstdio>
 2 #include <iostream>
 3 #include <algorithm>
 4 using namespace std;
 5 int n,ans=-1<<30,sum;
 6 struct Node{
 7     int x;
 8     int y;
 9 }a[100005];
10 bool cmp(const Node &a,const Node &b){
11     if(a.x==b.x)return a.y>b.y;
12     return a.x<b.x;
13 }
14 int main(){
15     //freopen("3028.in","r",stdin);
16     //freopen("3028.out","w",stdout);
17     scanf("%d",&n);
18     int s,t;
19     for(register int i=1;i<=n;i++){
20         scanf("%d%d",&s,&t);
21         a[i].x=s;
22         a[i+n].x=t;
23         a[i].y=1;
24         a[i+n].y=-1;
25     }
26     sort(a+1,a+n*2+1,cmp);
27     for(register int i=1;i<=n*2;i++){
28         sum+=a[i].y;
29         ans=max(ans,sum);
30     }
31     printf("%d\n",ans);
32     return 0;
33 }

 

转载于:https://www.cnblogs.com/66dzb/p/11581942.html

内容概要:本文详细介绍了个基于MATLAB实现的SWT-SVM故障诊断分类预测项目,通过平稳小波变换(SWT)进行信号去噪与多尺度特征提取,结合支持向量(SVM)实现械设备故障的智能分类。项目涵盖从数据采集、预处理、SWT分解、特征提取与降维(如PCA)、模型训练与优化(含交叉验证、网格搜索、贝叶斯优化)、性能评估(混淆矩阵、ROC曲线、F1分数等)到结果可视化与GUI界面开发的完整流程。系统具备高可解释性、强鲁棒性和良好工程集成能力,适用于多行业设备健康监测,并提供完整的代码实现与部署方案。; 适合人群:具备定MATLAB编程基础,熟悉信号处理与器学习算法的高校研究生、科研人员及工业领域从事设备故障诊断、智能运维的工程师和技术人员。; 使用场景及目标:①应用于智能制造、风电、轨道交通、石化、航空航天等领域的设备故障早期检测与健康状态评估;②构建端到端的智能诊断pipeline,提升诊断准确率与自动化水平;③通过GUI交互界面实现数据导入、模型训练、实时预测与结果导出,服务于科研教学与工业实际部署。; 阅读建议:建议读者结合文中提供的完整MATLAB代码与GUI设计,逐步复现各模块功能,重点关注SWT参数选择、特征降维策略、SVM超参数优化及模型评估方法。在实践过程中调试信号处理流程与分类性能,深入理解算法原理与工程落地的关键环节。
【Copula光伏功率预测】基于单调广义学习系统(MBLS)和Copula理论的时空概率预测模型(Matlab代码实现)内容概要:本文介绍了个基于单调广义学习系统(MBLS)和Copula理论的时空概率预测模型,用于光伏功率预测,并提供了Matlab代码实现。该模型结合了MBLS在函数逼近和学习能力方面的优势,以及Copula理论在处理多变量非高斯分布和捕捉变量间复杂相关性结构的能力,能够有效处理光伏出力的不确定性与时空相关性,从而提高预测精度和可靠性。此外,文档还列举了多个相关的科研方向和技术应用实例,如风电预测、虚拟电厂调度、风光制氢合成氨系统优化、多目标优化算法等,展示了其在电力系统、能源、优化调度等多个领域的广泛应用前景。; 适合人群:具备定编程基础,尤其是熟悉Matlab编程语言,从事能源、电力系统、优化调度、器学习等相关领域研究的科研人员和研究生。; 使用场景及目标:①应用于光伏发电功率的高精度时空概率预测,为电网调度、能源管理和市场交易提供决策支持;②作为研究Copula理论和MBLS算法在复杂非线性系统建模中应用的案例,促进相关算法的改进与创;③结合文中提到的其他优化算法(如多目标优化、智能优化算法)和应用场景(如虚拟电厂、综合能源系统),构建更复杂的系统优化与决策模型。; 阅读建议:此资源不仅提供了具体的代码实现,还涵盖了丰富的科研背景和应用方向。建议读者在学习过程中,不仅要理解MBLS和Copula理论的核心思与实现细节,还应结合文中提及的其他技术(如优化算法、深度学习模型)进行横向对比和综合应用,以拓宽研究视野。同时,鼓励读者基于提供的代码框架,针对具体问题进行参数调整和模型改进,通过实践加深对理论的理解。
### Linux下的段错误产生的原因及调试方法在深入探讨Linux下段错误的产生原因与调试方法之前,我们先来理解下“段错误”(Segmentation Fault)的基本概念。段错误,通常由信号SIGSEGV触发,是操作系统检测到程序试图访问它不应该访问的内存区域时所引发的种异常。这种异常可能源于多种情况,包括但不限于尝试访问空指针、越界读写内存或执行非法指令等。#### 、段错误产生的原因1. **访问空指针**:当程序中的某个指针被设置为NULL或0,并且程序员在未检查其有效性的情况下就进行解引用操作时,就会触发段错误。例如,在代码片段中,`unsigned char* ptr = 0x00; *ptr = 0x00;` 这样的操作会直接导致段错误,因为`ptr`指向的是无效地址。2. **内存越界**:这是最常见的段错误原因之。在C/C++编程中,数组或动态分配的内存如果被超出边界访问,也会导致段错误。这通常发生在程序员没有正确处理边界条件,或者对内存管理不当的情况下。3. **非法指令**:尽管不常见,但执行未定义或非法的指令也可能触发段错误。#### 二、调试方法面对段错误,有效的调试是解决问题的关键。以下是些常用的调试技巧:1. **使用GDB进行调试**:GDB(GNU调试器)是Linux环境下强大的调试工具,可以帮助开发者定位和分析程序运行时的问题。通过GDB,可以在程序崩溃时获取调用栈信息,查看变量状态,以及步进执行代码。如上文所示,使用`gdb ./a.out`命令后,GDB会在程序崩溃处暂停,显示错误发生的具体位置和上下文环境。2. **利用Core Dump文件**:当进程因某些信号终止时,默认行为是产生个Core Dump文件,这是个包含进程终止时刻内存快照的文件。通过分析Core Dump文件,可以更深入地了解程序的状态和导致崩溃
【复现】单级式高效率光伏微逆并网-双有源DAB微逆变器Plecs仿真内容概要:本文档是份综合性科研技术资源集合,涵盖多个工程与科学领域的仿真与优化研究,重点包括基于Plecs和Simulink的单级式高效率光伏微逆并网系统仿真,特别是双有源DAB微逆变器的设计与实现。此外,文档还涉及能源系统如风光制氢合成氨系统的优化调度、虚拟电厂多时间尺度调度、微电网能源管理、储能配置、电力电子控制(如SVPWM、UDQ-PWM)以及多种智能优化算法(如麻雀优化算法、NSGA-II、APO等)在路径规划、故障诊断、负荷预测等场景的应用。所有研究均配有Matlab或Python代码实现,部分为顶级SCI论文复现,强调理论与仿真实践的结合。; 适合人群:具备定科研基础的研究生、博士生及从事电力电子、能源系统、智能优化算法等领域研究的科研人员和技术工程师。; 使用场景及目标:①开展光伏微逆系统、微电网、氢能系统等能源方向的仿真建模与优化研究;②复现高水平期刊论文算法与模型,提升科研能力;③利用提供的代码资源加速项目开发与实验验证;④学习多目标优化、智能控制、信号处理等关键技术在实际系统中的应用。; 阅读建议:建议按主题分类系统性地浏览文档内容,优先关注与自身研究方向相关的仿真案例和算法实现,结合网盘中的完整资源进行代码调试与模型验证,注重从算法原理到仿真实现的全过程理解,以达到最佳学习与研究效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值