整除分块, CF538 F - A Heap of Heaps

news2024/9/20 10:39:16

一、题目

1、题目描述

2、输入输出

2.1输入

2.2输出

3、原题链接

F - A Heap of Heaps


二、解题报告

1、思路分析

给定v,k,v的父节点p = (v - 2) /  k + 1

我们令P = p - 1,V = V - 2

P = V / k,我们发现这就是一个整除分块问题

即对于一个v,k 的 范围可以划分为根号个区间,每个区间内的k 求出的父节点相同

那么我们利用整除分块和差分数组即可求解

本题还可以利用调和级数枚举+树状数组做到O(N(logN)^2)

2、复杂度

时间复杂度: O(Nsqrt(N))空间复杂度:O(N)

3、代码详解

 ​
#include <bits/stdc++.h>
// #include <ranges>
// #define DEBUG
using i64 = long long;
using u32 = unsigned;
using u64 = unsigned long long;
constexpr int inf32 = 1E9 + 7;
constexpr i64 inf64 = 1E18 + 7;
constexpr double eps = 1e-9;

void solve() {
    int n;
    std::cin >> n;
    std::vector<int> a(n);
    for (int i = 0; i < n; ++ i) std::cin >> a[i];

    std::vector<int> dif(n + 1);
    
    for (int i = 2; i <= n; ++ i) {
        for (int l = 1, r; l <= i - 2; l = r + 1) {
            r = (i - 2) / ((i - 2) / l);
            int p = (i - 2) / r + 1;
            if (a[p - 1] > a[i - 1])
                ++ dif[l], -- dif[r + 1];
        }
        if (a[0] > a[i - 1])
            ++ dif[i - 1];
    }

    for (int i = 1; i < n; ++ i) {
        dif[i] += dif[i - 1];
        std::cout << dif[i] << " \n"[i + 1 == n];
    }
}

auto FIO = []{
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    std::cout.tie(nullptr);
    return 0;
} ();

int main() {
    #ifdef DEBUG
        freopen("in.txt", "r", stdin);
        freopen("out.txt", "w", stdout);
    #endif     

    int t = 1;
    // std::cin >> t;
    while (t --)
        solve();

    return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1974730.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ubuntu22.04之有道词典mini窗口无法拖动问题(二百六十五)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 新书发布&#xff1a;《Android系统多媒体进阶实战》&#x1f680; 优质专栏&#xff1a; Audio工程师进阶系列…

混合域注意力机制(空间+通道)

在计算机视觉任务中&#xff0c;空间域注意力通常关注图像中不同位置的重要性&#xff0c;例如突出图像中的关键对象或区域。而通道域注意力则侧重于不同通道&#xff08;特征图&#xff09;的重要性&#xff0c;决定哪些特征对于任务更具判别力。混合域注意力机制结合了空间域…

FIR低通滤波器

FIR低通滤波器 FIR(Finite Impulse Response)滤波器:有限长单位冲激响应滤波器,又称为非递归型滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。 MATLAB实现…

详细了解架构师

架构师的核心职责是消除不确定性和降低复杂性&#xff01; 架构师画像 架构师的定位 架构设计环 澄清和技术相关的&#xff0c;比如支持百万级别的&#xff0c;架构师需要澄清&#xff0c;可能只有十万级。 架构师的三个核心能力 架构师的三个关键思维 架构设计流程和架构师…

初识MQ——学习MQ之前需要了解的知识点

目录 前言 1. 同步和异步通讯 1.1 同步通讯 1.2 异步通讯 2. MQ技术对比 前言 在现在的大数据时代&#xff0c;高并发的情况越来越普遍&#xff0c;系统一个不注意&#xff0c;就可能崩溃无法访问了。这是开发最不想看到的情况&#xff0c;如果是上班还好&#xff0c;可以…

【C++】—— 类与对象(二)

【C】—— 类与对象&#xff08;二&#xff09; 1、类的默认成员函数2、构造函数2.1、初见构造2.2、深入构造2.3、初始化列表2.3.1、什么是初始化列表2.3.2、初始化列表和函数体关系2.3.3、必须使用初始化列表的情况2.3.3.1、 c o n s t const const 成员变量2.3.3.2、引用成员…

AS400==tutorial for Beginners

系统AS400 语言RPGLE 参考视频&#xff1a; https://www.youtube.com/watch?vFqgwYsp7mjk&listPL3W4xRdnQJHVWWmYX1Klji7QUk_PQhq0t&index5 Lesson 1 | Introduction to As-400 and setting up As-400 Environment. 客户端软件TN5250 Terminal Emulation for Window…

MyBatis全方位指南:从注解到XML文件的数据库操作

目录 一.什么是MyBatis 入门程序初体验 二.MyBatis基本操作CRUD ▐ 增(Insert) 返回主键 ▐ 删(Delete) ▐ 改(Update) ▐ 查(Select) 起别名 结果映射 开启驼峰命名(推荐) 三.MyBatis XML配置文件 ▐ 增(Insert) ▐ 删(Delete) ▐ 改(Update) ▐ 查(Select) …

PostgreSQL(二十三)TOAST技术

目录 一、TOAST简介 二、TOAST的存储方式 1、存储方式概述 2、实验&#xff1a;创建TOAST表 三、TOAST的4种压缩策略 1、策略说明 2、TOAST表额外的三个字段 四、TOAST表的计算方式 1、说明 2、实验&#xff1a;计算表大小 五、TOAST表的特点 1、优点 2、缺点 3、…

【KAN】【API教程】get_fun

抽取某个激活函数的样子 from kan import * import matplotlib.pyplot as plt # create a KAN: 2D inputs, 1D output, and 5 hidden neurons. cubic spline (k3), 5 grid intervals (grid5). model KAN(width[2,5,1], grid5, k3, seed0) x torch.normal(0,1,size(100,2)) m…

给虚拟机Ubuntu扩展硬盘且不丢数据

1.Ubuntu关机状态下先扩展&#xff0c;如扩展20GB 2.进入ubuntu&#xff0c;切换root登录&#xff0c;必须是root全选&#xff0c;否则启动不了分区工具gparted 将新的20GB创建好后&#xff0c;选择ext4,primary&#xff1b; 3.永久挂载 我的主目录在/并挂载到/dev/sda1 从图…

C++解决:早餐组合

前言 应该都知道我之前沉默了很长一段时间&#xff0c;现在慢慢想明白了&#xff0c;会继续创作&#xff0c;真的非常感谢大家对我这个幼稚小孩的支持与鼓励。 有朋友私信问我退的原因&#xff0c;在这里和大家简要说一下【狗头】 我认识一位开学初三的学长&#xff0c;他和…

H81002S 1.7mm网络变压器:BMS汽车蓝牙接收器中的超薄共模电感科技

华强盛导读&#xff1a;在当今这个日新月异的汽车科技领域&#xff0c;每一处细节都蕴含着创新与突破。作为电动汽车心脏的电池管理系统&#xff08;BMS&#xff09;&#xff0c;其高效稳定的运行不仅关乎续航与安全&#xff0c;更是智能化驾驶体验的基石。而在这背后&#xff…

有那些AI数字人制作软件?

AI视频生成&#xff1a;小说文案智能分镜智能识别角色和场景批量Ai绘图自动配音添加音乐一键合成视频百万播放量https://aitools.jurilu.com/ 之前由于工作需要&#xff0c;要录制1 个真人讲PPT的视频&#xff0c;作为典型I人&#xff0c;本人露面是不可能的。 于是打起了数字人…

二维码门楼牌管理应用平台建设:打造高效运维新生态

文章目录 前言一、系统运维概述二、菜单管理&#xff1a;个性化服务的关键三、参数管理&#xff1a;优化系统性能的关键四、字典管理&#xff1a;数据标准化的基石五、邮件管理&#xff1a;沟通协作的桥梁六、任务调度&#xff1a;自动化工作的核心七、短信管理&#xff1a;及时…

头发健康知识一

头发重要性: 头发是人第二张脸,影响人容貌 形象和气质.头皮基本结构 角质层,颗粒层,有挤层,基底层4个细胞层组成,含有大量毛囊和皮脂腺和汗腺.头屑是什么? 头屑为角质细胞的新陈代谢脱落的死细胞,每天都会有十几万角质细胞脱落 (正常的代谢周期为28天). 当基底层细胞受损时…

32.x86游戏实战-使用物品call

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 本次游戏没法给 内容参考于&#xff1a;微尘网络安全 工具下载&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd6tw3 提…

MySql审计平台

安装方式&#xff1a; cookieY/Yearning: &#x1f433; A most popular sql audit platform for mysql (github.com) 对数据库的一系列后台操作 AI助手 - AI助手提供SQL优化建议&#xff0c;帮助用户优化SQL语句&#xff0c;以获得更好的性能。同时AI助手还提供文本到SQL的…

手把手教你OpenCV常见滤波(高斯,中值,均值)C++

目录 1 图像处理中的高斯函数 1.1一维高斯函数 1.2二维高斯函数 1.3 代码 1.4 结果 2 低通滤波之均值滤波器 2.1、空间滤波基础 2.1.1线性空间滤波原理 2.1.2 相关与卷积 2.2、平滑滤波之均值滤波器 2.2.1原理 2.2.2 c opencv代码 2.2.3 结果 3 中值滤波 3.1 c …

LC 42.接雨水

42.接雨水 给定n个非负整数表示每个宽度为1的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 示例 1&#xff1a; 输入&#xff1a; height [0,1,0,2,1,0,1,3,2,1,2,1] 输出&#xff1a; 6 解释&#xff1a; 上面是由数组 [0,1,0,2,1,0,1,3…