【AHOI 2013】【BZOJ 3236】作业

吉林大学软件工程章节测验 第九章 答案+解析 4.【判断题】估算软件规模有代码行技术和功能点技术两种方法,其中代码行方法估计实现一个功能所需要的源程序行数,其不依赖项目所使用的开发语言,并且具有较好的直观性。3.【单选题】软件项目估算时,若计划人员对每个功能分别按最佳的、可能的、悲观的三种情况给出功能点估计值,记作a, m, b,则估算的期望值E的公式为( )。8.【判断题】在工程网络图中,如果在由起始事件至终止事件所构成的一条路径上,所有事件的最早时刻都和最迟时刻都相同,那么这条路径就是关键路径。4.【单选题】配置管理贯穿软件开发的整个过程。 阅读详情

莫队+树状数组+读入优化 75s+AC(PS:我居然先写的线段树)code:

#include<iostream>
#include<algorithm>
#include<cmath>
#include<cstdio>
#include<cstring>
#define mid (l+r)/2
#define lch i<<1,l,mid
#define rch i<<1|1,mid+1,r
using namespace std;
char * p=(char *)malloc(50000000);
inline int in(){
    int x=0;
    while(*p<'0'||*p>'9')++p;
    while(*p>='0'&&*p<='9')x=x*10+*p++-'0';
    return x;
}
struct hp{
    int l,r,a,b,st,num;
}qst[1000001];
int ans[1000001][2];
int node[400001][2];
int vis[1000001];
int n,m,a[100001],L,R,size;
int cmp(const hp &a,const hp &b)
{
    if ((a.st<b.st)||(a.st==b.st&&a.r<b.r))
      return 1;
    else return 0;
}
int lowbit(int x){return x&(-x); }
inline void bit_ins0(int x,int a)
{
    while (x<=n)
      {node[x][0]+=a; x+=lowbit(x);}
}
inline void bit_ins1(int x,int a)
{
    while (x<=n)
      {node[x][1]+=a; x+=lowbit(x);}
}
 
inline int query0(int x)
{
    int ans=0;
    while (x)
      {
        ans+=node[x][0];
        x-=lowbit(x);     
      }
    return ans;
}
inline int query1(int x)
{
    int ans=0;
    while (x)
      {
        ans+=node[x][1];
        x-=lowbit(x);     
      }
    return ans; 
}
inline void work(int i)
{
    int l=qst[i].l,r=qst[i].r;
    while (L<l)
      {
        bit_ins0(a[L],-1);
        if (vis[a[L]]==1) bit_ins1(a[L],-1);
        vis[a[L]]--;
        L++;
      }
    while (L>l)
      {
        L--;
        bit_ins0(a[L],1);
        if (vis[a[L]]==0) bit_ins1(a[L],1);
        vis[a[L]]++;
      }
    while (R<r)
      {
        R++;
        bit_ins0(a[R],1);
        if (vis[a[R]]==0) bit_ins1(a[R],1);
        vis[a[R]]++;
      }
    while (R>r)
      {
        bit_ins0(a[R],-1);
        if (vis[a[R]]==1) bit_ins1(a[R],-1);
        vis[a[R]]--;
        R--;
      }
    ans[qst[i].num][0]=query0(qst[i].b)-query0(qst[i].a-1);
    ans[qst[i].num][1]=query1(qst[i].b)-query1(qst[i].a-1);
}
int main()
{
    int i,per;
    fread(p,1,50000000,stdin);
    n=in(),m=in();
    for (i=1;i<=n;++i)a[i]=in();
    per=sqrt(n); size=n;
    for (i=1;i<=m;++i)
      {
        qst[i].l=in(),qst[i].r=in(),qst[i].a=in(),qst[i].b=in();
        qst[i].st=(qst[i].l/per)+1;
        qst[i].num=i;
      }
    sort(qst+1,qst+m+1,cmp);
     
    for (i=qst[1].l;i<=qst[1].r;++i)
      {
        bit_ins0(a[i],1);
        if (vis[a[i]]==0) bit_ins1(a[i],1);
        vis[a[i]]++;
      } 
    ans[qst[1].num][0]=query0(qst[1].b)-query0(qst[1].a-1);
    ans[qst[1].num][1]=query1(qst[1].b)-query1(qst[1].a-1);
     
    L=qst[1].l; R=qst[1].r;
    for (i=2;i<=m;++i)
      work(i);
    for (i=1;i<=m;++i)
      printf("%d %d\n",ans[i][0],ans[i][1]);
}


用Python+NumPy手把手实现分数阶傅里叶变换(FRFT),搞定线性调频信号分析 本文详细介绍了如何使用Python和NumPy实现分数阶傅里叶变换(FRFT),特别针对线性调频信号(Chirp信号)分析。通过从零开始的代码实现和可视化案例,展示了FRFT在时变信号处理中的强大能力,帮助工程师和研究人员高效分析频率随时间变化的信号。 阅读详情

相关推荐

[代码开源]基于DistFlow的IEEE33和IEEE69节点最优潮流模型(OPF)实现与性能分析

本文详细介绍了基于DistFlow的IEEE33和IEEE69节点最优潮流模型(OPF)的实现与性能分析。通过代码开源,展示了如何从零搭建电力系统优化模型,解决配电网中的发电成本最小化问题。文章涵盖数据准备、模型实现细节、性能优化建议及常见问题解答,为电力系统研究者提供实用参考。

weixin_29103191的博客 707

P4396 [AHOI2013]作业(莫队+值域分块)

P4396 [AHOI2013]作业(莫队+值域分块)

汤键的博客 379

RV1126开发板性能实测:网络、温度与功耗全解析

本文对RV1126开发板进行了全面的性能实测,重点分析了网络性能、温度表现与功耗特性。测试发现UDP带宽可达500Mbps,但TCP性能受限于协议栈;散热设计对持续性能至关重要,大板子在AI推理和视频推流中表现更稳定。为嵌入式开发者提供了真实的选型参考和优化建议。

d3e4f的博客 266

P4396 [AHOI2013]作业

题意: 长度为n的数列,给定区间[l,r],问这个区间内的数的值在[a,b]之间的数量以及种类数量 题解: 两个方法: 1.莫队+树状数组 用一个二维树状数组来维护,一个表示数的个数,一个表示不同数值的个数 对于第二个问题: 我们根据简单的容斥,将原问题转化为求的等于val∈[1,b]的种数p,val∈[1,a-1]的种数q,答案就是p-q 我们利用树状数组解决,query(x)即为val∈[1,x]的种数,答案就是query(b) - query(a-1) 对于第一个问题,我们也可以用树状数组 但是卡卡

qq_35975367的博客 432

MATLAB实战:5步搞定GNSS单点定位解算(附完整代码)

本文提供了一份基于MATLAB的GNSS单点定位实战指南。通过5个核心步骤,详细讲解了如何从卫星坐标和伪距观测值出发,利用最小二乘迭代算法,构建并实现一个完整的单点定位解算器。文章附有完整代码,并涵盖精度评估与结果分析,适合GNSS初学者和MATLAB用户快速上手实践。

a2b3c4d5e的博客 250

高速DAC设计与实现--AD9122

目录 芯片简介: 功能配置设计 高速DAC软件驱动设计 芯片简介: AD9122 是一款双通道16位高性能数模转换器(DAC),在800MSPS工作条件下其无杂散动态范围(SFDR)高达72dBc,最高可提供1200 MSPS采样速率。 高速DAC--AD9122电路原理图 硬件设计的电路原理图如上图所示,AD9122具备针对直接变频传输应用进行优化的特性,包括复数数字调制以及增益与失调补偿。DAC输出经过优化后可直接与模拟正交调制器无缝接口,便于后期使...

独木舟216的博客 1万+

P4396 [AHOI2013]作业 (莫队 + 值域分块)

题目链接: P4396 [AHOI2013]作业 大致题意 给定一个长度为nnn的序列, 有mmm次询问, 每次询问给出l r a b. 表示询问在区间[l,r][l, r][l,r]内, 值域[a,b][a, b][a,b]之间有多少个数值, 以及有多少个不同数值. 解题思路 莫队 + 值域分块 我们通过莫队做到O(n)O(\sqrt{n})O(n​)维护[l,r][l, r][l,r]的所有数值信息, 在查询时, 通过分块来做到O(n)O(\sqrt{n})O(n​)的查询. ➡️同类题目推荐⬅️ AC

Fau的博客 368

TJA1445/TJA1465 CAN收发器硬件设计与软件配置实战指南

控制器局域网(CAN)总线是汽车电子和工业控制领域实现电子控制单元(ECU)间可靠通信的核心技术。其工作原理是将数字信号转换为差分信号进行抗干扰传输,技术价值在于构建稳定、高效的分布式实时控制系统。随着汽车电子架构向域集中式演进,对CAN总线的通信速率、网络复杂度和静态功耗提出了更高要求,这催生了支持CAN FD协议和智能电源管理的新一代高速CAN收发器。在车载网关、域控制器及工业网络节点等应用场景中,NXP的TJA1445和TJA1465系列收发器凭借其部分组网(Partial Networking)和选

weixin_29655587的博客 409

bzoj 3236: [Ahoi2013]作业 (莫队+分块)

3236: [Ahoi2013]作业 Time Limit: 100 Sec  Memory Limit: 512 MB Submit: 1547  Solved: 635 [Submit][Status][Discuss] Description Input Output Sample Input 3 4 1 2 2 1 2 1 3

clover_hxy的博客 1191

9篇5章2节:NHIS 数据库的常规数据下载

文章概述了 NHIS-Teen、NHPI NHIS 等补充性调查以及 2024 年 NHIS 数据资源的具体内容,包括问卷材料、技术文档和数据模块,为研究者高效、规范地使用 NHIS 数据提供参考框架。

MD Code 1440

自动化Ai Agent全流程实现【设计+代码】

本文探讨了人工智能代理(AI代理)如何通过自动化复杂的业务流程来帮助企业提高效率和降低成本。AI代理具有适应性、智力、自主性和可扩展性等特点,能够处理非结构化信息、在定义参数范围内做出判断、协调多个系统或利益相关者,以及处理变量输入和异常。文章详细介绍了AI代理在文件处理、客户服务、人才招聘和财务运作等领域的应用,并提供了一个逐步实现发票处理自动化的案例。此外,文章还强调了实施AI代理自动化的优势,包括效率提升、成本降低、准确性和可扩展性的改进,并提出了实施最佳实践,如从高影响力流程开始、设计人机交互、优先

FeelTouch Labs 896

[AHOI2013]作业

这个题一看就首选莫队,然而询问的东东·有些坑·,如果裸的莫队要跑140多s(极限数据,我试过,嘿嘿),所以当然要优化了,常规的优化方法是套一个树状数组来维护ans, 不过我要说的不是树状数组而是分块(分块是个好东东,秒杀树状数组,线段树。。。),对数值再分一次块。只要搞一个类似延迟标记的东东,f[],g[],f存每个块中数值个数, g存每个块中数值种类个数。散点暴力,整块直接加上f,g,然后就

TWorstO_DK的博客 544

【深度学习新浪潮】Harness Engineering 入门实战必看|6个从零可跑开源项目,新手快速上手垂域AI工程落地

很多同学入门 AI Agent、做大模型垂域落地时,都会卡在同一个痛点:只会调用模型、写简单Prompt,却不懂如何做约束管控、流程护栏、任务编排、多智能体边界隔离。而这正是的核心价值。不同于纯理论概念,Harness Engineering 更偏向工程实战,新手不用啃复杂论文,从开源项目动手实操是最高效的学习方式。本文从零基础易上手、可本地一键部署、支持二次改造做实战项目。

专注:太空算力、AI infra、异构调度、大模型成本工程 232

Bzoj3236: [Ahoi2013]作业

Bzoj3236: [Ahoi2013]作业 刚学完莫队,不过这题用莫队的复杂度算起来好高啊,居然能过…… 像求逆序对一样用两个树状数组维护区间中每个数值出现的个数,以及每个数是否出现,前者用来求答案1,后者用来求答案2。 在区间伸缩时加入删除最后更新答案即可。 这次压行压的有点厉害,和DeepinC有的一拼了…… 1 #include<algorithm> ...

weixin_30451709的博客 123

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

BZOJ 3236[AHOI2013]作业

题面: 3236: [Ahoi2013]作业 Time Limit:100 SecMemory Limit:512 MBSubmit:1704Solved:685[Submit][Status][Discuss] Description Input Output Sample Input 3 4...

weixin_30819163的博客 119

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

BZOJ 3236 AHOI 2013 作业 莫队+树状数组

BZOJ 3236 AHOI 2013 作业 内存限制:512 MiB 时间限制:10000 ms 标准输入输出 题目类型:传统 评测方式:文本比较 题目大意: 此时己是凌晨两点,刚刚做了Codeforces的小A掏出了英语试卷。英语作业其实不算多,一个小时刚好可以做完。然后是一个小时可以做完的数学作业,接下来是分别都是一个小时可以做完的化学,...

weixin_30808253的博客 147

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

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

BZOJ3236: [AHOI2013]作业

BZOJ3236: [AHOI2013]作业 题目描述 传送门 行,我知道是Please contact lydsy2012@163.com! 传送门2 题目分析 这题两问还是非常,emmmm。 首先第一问非常好解决,随便就可以用各种各样的方法求出来。 考虑第二问,明显可以让人想到莫队。通过在颜色上分块就可以快速解决问题。 离散化还是要离散化的,luogu数据比较毒。 是代码呢 #include...

weixin_30316097的博客 211

BZOJ3236 [Ahoi2013]作业

无限TLE后终于A掉了.... 一看就是数据结构题 没有修改操作,所以可以用莫队算法,用一个树状数组搞定 本来以为是莫队过不了 最后发现原来是自己打萎了..... #include <cstdio> #include <iostream> #include <cstring> #include <algorithm>...

146

【BZOJ 3236】 [Ahoi2013]作业

莫队算法+树状数组~

Regina8023 1578

BZOJ3236: [Ahoi2013]作业

BZOJ3236: [Ahoi2013]作业 由于卡常,这个题变成了权限题。。。 本蒟蒻表示没钱氪金。。。 这里附上洛谷的题面: 洛谷P4396 [AHOI2013]作业 题目描述 此时己是凌晨两点,刚刚做了Codeforces的小A掏出了英语试卷。英语作业其实不算多,一个小时刚好可以做完。然后是一个小时可以做完的数学作业,接下来是分别都是一个小时可以做完的化学,物理,语文.........

weixin_30950237的博客 133

bzoj 3236: [Ahoi2013]作业

3236: [Ahoi2013]作业 Time Limit: 100 Sec  Memory Limit: 512 MB Submit: 1376  Solved: 553 [Submit][Status][Discuss] Description Input Output Sample Input 3 4 1 2 2 1 2 1 3

lethalboy 394

[bzoj3236][AHOI2013]作业

题目大意多次询问[l,r]内权值在[a,b]的数量及种类数。分块数量随便做,我们思考种类数怎么做。 具体见gty的二逼妹子序列题解#include<cstdio> #include<algorithm> #include<cmath> #define fo(i,a,b) for(i=a;i<=b;i++) using namespace std; const int maxn=100000+10,

不来也不去的一只失忆蝴蝶 692

【树套树】【bzoj 3236】: [Ahoi2013]作业

http://www.lydsy.com/JudgeOnline/problem.php?id=3236 开始b

willinglive 915

BZOJ 3236: [Ahoi2013]作业

3236: [Ahoi2013]作业 Time Limit:100 SecMemory Limit:512 MBSubmit:1438Solved:577[Submit][Status][Discuss] Description Input Output Sample Input 3 4 1 2 2 ...

weixin_30477293的博客 88
上一篇: 【BZOJ 2038】【2009 国家集训队】小Z的袜子
下一篇: 分块算法学习记录
Lcomyn
博客等级 码龄12年 14粉丝 74原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值