牛客网暑期ACM多校训练营(第四场) - J Hash Function (并查集)

SqlSugar 是 .NET 开源的 ORM 框架,由 Fructose 大数据技术团队维护和更新,开箱即用最易用的 ORM 低代码 高性能 超级简单 功能全面 [多数据库兼容] SqlSugar 是 .NET 开源的 ORM 框架,由 Fructose 大数据技术团队维护和更新,开箱即用最易用的 ORM。[低代码] [高性能] [超级简单] [功能全面] [多数据库兼容] [合适产品]。支持.NET.net framework.net core3.1.ne5.net6.net7.net8 .net9 .net10。支持数据库 MySql、SqlServer、Sqlite、Oracle、postgresql、达梦、Mongodb 人大金仓(国产推荐)、神通数据库、瀚高、Access DB2、DuckDb、Hana、OceanBase TDengine QuestDb Clickhouse MySqlConnector、华为 GaussDB 南大通用 GBase、MariaDB、Tidb、Odbc、Percona Server, Amazon Aurora、Azure Database for MySQL、 Google Cloud SQL for MySQL、自定义数据库。真正实现零SQL ORM表构建、索引和CRUD支持。Support.NET 数百万大数据写入、更新、子表,拥有数十亿查询统计数据成熟解决方案。支持SAAS完整应用:跨数据库查询、审计、租户子数据库、租户子表和租户数据隔离。支持低代码 + 工作流程(动态类构建、动态表构建、非实体多库兼容 CRUD、JSON TO SQL、CUSTOM XML 等)。支持 ValueObject、判别器、仓库、UnitOfWork、DbContext、AOP 立即下载

https://www.nowcoder.com/acm/contest/142/J

 

题意:

给你一个n,和n个空位。如果你得到一个x,就把x填在x%n这个位子。如果x%n被填了,就到(x+1)%n,反复。

现在给你n个已经被填好的位子。让你求出字典序最小的入座次序。

 

POINT:

用一个优先队列。如果序列里的x的位子就是x%n,证明这个数是最开始就放好的。加入优先队列。

每次出一个最小元素。把它填入位子a,然后用并查集把a和a+1合并,看看现在a的祖先能不能被加入队列。

就这样反复。

 

#include<iostream>
#include<algorithm>
#include<queue>
#include<cstring>
#include<cstdio>
#define LL long long
using namespace std;
const int maxn=2e5+7;
int fa[maxn];
 
struct node
{
    int val,pos;
    node(int x,int y)
    {
        val=x;pos=y;
    }
    bool friend operator < (node a,node b)
    {
        return a.val>b.val;
    }
};
 
int find(int x)
{
    return fa[x]==x?x:fa[x]=find(fa[x]);
}
int vis[maxn];
int cnt,num;
int ans[maxn];
int a[maxn];
int main(){
    priority_queue<node> q;
    int T,n;
    scanf("%d",&T);
    while(T--){
        cnt=num=0;
        scanf("%d",&n);
        for(int i=0;i<n;i++){
            fa[i]=i;
            scanf("%d",&a[i]);
            vis[i]=0;
            if(a[i]==-1) continue;
            if(a[i]%n==i){
                q.push(node(a[i],i));
                vis[i]=1;
            }
            num++;
        }
        while(!q.empty()){
            node x=q.top();
            q.pop();
            ans[++cnt]=x.val;
            int to=fa[find(x.pos)]=find((x.pos+1)%n);
            if(vis[to]||a[to]==-1||find(a[to]%n)!=to) continue;
            q.push(node(a[to],to));
            vis[to]=1;
        }
        if(cnt<num){
            printf("-1\n");
        }else{
            for(int i=1;i<=cnt;i++){
                printf("%d",ans[i]);
                if(i!=cnt) printf(" ");
            }
            printf("\n");
        }
    }
 
    return 0;
}

 

基于热成像的土壤水分反馈MATLAB实现,以及用于灌溉调度的模型预测控制。.zip 1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 立即下载

相关推荐

【化工设备防腐】基于BF凝水除铁缓蚀剂的螺旋板换热器腐蚀与冷凝水发红问题综合治理技术应用

内容概要:本文针对氯碱厂盐水螺旋板预热器腐蚀渗漏及蒸汽冷凝水发红、偏酸性的问题,提出并实施了采用BF凝水除铁缓蚀剂成膜法的综合治理方案。通过分析腐蚀原因,确认主要为二氧化碳引起的酸性腐蚀和溶解氧导致的氧腐蚀。在原有阴极保护与局部防腐涂层改造基础上,进一步投加BF凝水除铁缓蚀剂,该药剂能在金属表面形成单分子保护膜,有效阻隔腐蚀介质,实现全系统气液两相的协同防护。经72小时试验,冷凝水pH值恢复至8.5以上,铁离子浓度降至0.07mg/L以下,颜色清澈透明,达到回用标准,实现了设备安全运行与冷凝水高效回收。; 适合人群:从事化工、电力、锅炉系统管理及相关工业设备维护的技术人员与工程管理人员,尤其适用于面临换热器腐蚀、冷凝水水质异常问题的企业技术人员。; 使用场景及目标:①解决工业蒸汽系统中冷凝水发红、铁离子超标、pH偏低等腐蚀问题;②提升冷凝水回收率,降低能耗与水资源浪费,实现节能减排与降本增效;③替代传统除氧剂与末端过滤设备,优化现有水处理工艺。; 阅读建议:此资源结合实际案例提供系统性解决方案,读者应重点关注问题诊断逻辑、药剂作用机制与实施流程,可将其作为类似工况下腐蚀治理的技术参考,并结合自身系统特点进行可行性评估与小试验证。

牛客网暑期ACM多校训练营(第四场)J Hash Function (模拟)

题目描述  Chiaki has just learned hash in today's lesson. A hash function is any function that can be used to map data of arbitrary size to data of fixed size. As a beginner, Chiaki simply chooses a hash...

Ever_glow的博客 486

数字化供应链AI智能体平台规划及场景应用方案.pptx

数字化供应链AI智能体平台规划及场景应用方案.pptx

牛客网暑期ACM多校训练营(第四场)J Hash Function

链接:https://www.nowcoder.com/acm/contest/142/J 来源:牛客网   题目描述 Chiaki has just learned hash in today's lesson. A hash function is any function that can be used to map data of arbitrary size to data of ...

Barry&Liu 308

无刷直流电机BLDC无感+滑模观测器+转速电流双闭环PI控制(总共三个仿真模型)(Simulink仿真实现)

内容概要:本文档系统阐述了无刷直流电机(BLDC)在无位置传感器条件下的高性能控制策略,基于Simulink平台构建了三个相互关联的仿真模型,重点实现无感控制与滑模观测器(Sliding Mode Observer, SMO)相结合的转速电流双闭环PI控制系统。该资源摒弃了传统的霍尔传感器,利用滑模观测器实时估算转子的位置与转速信息,有效降低了系统成本并提升了在恶劣环境下的运行可靠性。仿真模型完整涵盖了逆变电路、空间矢量脉宽调制(SVPWM)、三相电流采样、坐标变换(Clark & Park)、PI调节器以及滑模观测器等核心模块,形成了一个闭环的、高动态响应的电机驱动系统。此外,文档还集成了模糊PID、传统PID等多种控制算法的对比仿真模型,便于研究者深入分析不同控制策略在动态响应、抗干扰能力和稳态精度方面的性能差异,为电机控制算法的研究与工程化应用提供了坚实的仿真验证基础。; 适合人群:具备自动控制理论、电机拖动原理及电力电子技术基础知识,并熟悉MATLAB/Simulink软件操作的电气工程、自动化、机电一体化等专业的高年级本科生、硕士研究生,以及从事电机驱动、新能源汽车、工业自动化等领域的研发工程师和技术人员。; 使用场景及目标:①深入学习和掌握无刷直流电机无位置传感器控制的基本原理与实现方法;②系统性地理解滑模观测器的设计思想、稳定性分析及其在转子位置与速度估计中的关键技术;③对比研究传统PI控制、模糊PID控制及滑模观测器在BLDC调速系统中的综合性能,分析其在不同工况下的鲁棒性与适应性;④为毕业设计、科研课题或工业项目中的电机控制系统开发提供可复用的仿真平台与技术参考。; 阅读建议:本资源以Simulink仿真为核心载体,建议使用者结合文档中提供的详细说明报告与参考文献,循序渐进地理解各功能模块的设计逻辑与参数整定方法。在学习过程中,务必动手运行并调试仿真模型,仔细观察并记录在不同负载突变、转速指令变化等工况下,电机的三相电流、转速响应曲线及滑模观测器输出的转子位置与速度的动态波形,从而深刻理解控制算法的内在机理。为进一步提升实践与创新能力,可尝试修改控制器参数(如PI增益、滑模增益),或替换不同的控制策略进行对比实验,探究其对系统性能的影响。

(报告+仿真)基于永磁同步电机的飞轮储能系统控制(网侧逆变+机侧整流)仿真

内容概要:本文针对含分布式电源的配电网在多线路故障情况下的恢复问题,提出了一种将网络重构、孤岛划分与检修进度统一纳入多时段优化框架的故障恢复模型。该模型以最小化网损和甩负荷惩罚为目标,采用混合整数二阶锥规划方法,结合虚拟流思想与二阶锥松弛技术,实现对支路投切状态、负荷保留比例、节点电压、功率分布等变量的协同优化,确保各供电区域的连通性与辐射状结构。模型在IEEE33节点系统上进行验证,支持动态调整孤岛范围,充分利用联络开关转供能力和分布式电源的黑启动能力,提升了配电网的韧性与恢复效率。同时,文章对建模细节进行了深入评述,并提出了在负荷分级、无功处理、辐射状约束精确性等方面的改进建议。; 适合人群:电力系统自动化、智能电网、配电系统优化等领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于研究含高比例分布式电源的主动配电网在故障后的快速恢复策略;②为配电网重构、孤岛划分与多时段动态恢复的联合优化提供建模范式;③作为学术论文复现与改进的基础模型,推动配电网韧性提升技术的发展。; 阅读建议:建议读者结合文中提到的参考文献与仿真代码,深入理解虚拟流建模、二阶锥松弛等关键技术的应用逻辑,并尝试在模型中引入负荷等级权重、储能系统、分布式电源出力调控等要素,以增强模型的实用性与完整性。

牛客网暑期ACM多校训练营(第四场)J Hash Function(拓扑排序思想)

链接:https://www.nowcoder.com/acm/contest/142/J 来源:牛客网   时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 131072K,其他语言262144K 64bit IO Format: %lld 题目描述 Chiaki has just learned hash in today's lesson. A hash function...

LSD20164388的博客 460

计算机三级考试嵌入式系统重点精简汇总

第一章 嵌入式系统概论 1.1.1嵌入式系统 (1)特点:(1)专用性;(2)隐蔽性;(3)资源受限;(4)高可靠性;(5)实时性;(6)软件固化。 (2)应用:(1)冰箱、洗衣机、电饭煲、空调、摄影机、DVD播放器等;(2)数控机床、飞机、汽车、电梯、X光机、血压计等;(3)电话机、传真机、打印机、pos机、GPS导航仪、路由器等。 1.1.2嵌入式系统组成与分类 (1)逻辑组成:硬件和软件,分为处理器、存储器、I|0设备与I|O接口,数据总线; (2)处理器:分为主处理器(CPU)和协处

chemkrik的博客 1万+

牛客网暑期ACM多校训练营(第四场)J:Hash Function(数据结构+乱搞)

  题目大意: 有一种hash方式为,当a[i]%n产生冲突时,就往后推到一位没有冲突的地方。现在给你hash后的序列,能否推出hash前的顺序,如果可以,输出最小字典序。   解题思路: 刚开始比赛的时候想的是拓扑排序,因为对于拓扑排序来说在A事件没有发生前,是不可能发生B事件的。那么就是说如果我a[i]%n的结果是pos 那么就可以对于 pos 到 i 所有的数对于a[i]连一条有向...

污miao汪的博客 295

银河麒麟V10 SP1 x86_64架构下离线部署全栈开发环境:Java8+Mysql5.7+Tomcat8实战指南

本文详细介绍了在银河麒麟V10 SP1 x86_64架构下离线部署全栈开发环境的实战指南,包括Java8、Mysql5.7和Tomcat8的安装与配置。通过步骤详解和常见问题排查,帮助开发者在国产操作系统上高效搭建稳定可靠的开发环境,特别适合政务系统和企业级应用部署。

weixin_29230901的博客 372

Dify插件离线部署全攻略:从下载到安装的完整流程

本文详细介绍了Dify插件离线部署的完整流程,针对企业内网等无网络环境需求。核心步骤包括在联网环境下载插件包、在特定Python 3.12.9环境下使用专用工具进行离线重打包,以及最终在离线Dify环境中安装验证。重点解决了离线安装的核心难题,并提供了环境配置、批量处理和故障排查等实用技巧,帮助用户实现Dify插件的顺利离线部署。

seed的博客 656

2021牛客暑期多校训练营1 H题Hash Function (FFT/NTT)

题目大意: 对于给出的n个互不相同的数,寻找最小的一个模数p使得对于任意ai%p都不相同。 解题思路: 根据同余定理可知,若A-B=C且模数为C的约数,则必然会是A%p=B%p。所以只需要统计出N个数的两两差值即可。考虑用FFT/NTT优化达到O(NlogN)。多项式乘法使得幂次相加,只需要令第ai位为1,另一个多项式中第G-ai位为1即可,枚举从G+1开始。 const int N=2097152+3,P=998244353,G=3; int n,m,invn,invG,f[N],g[N],tr[N];.

weixin_45948940的博客 365

Xilinx FPGA平台DDR3设计保姆式教程(3)MIG IP核使用教程及DDR读写时序

干货来了,用DDR搬砖,只需要会用IP就好,Xilinx官方YYDS! ----------------------------------------------------------------------------------------------------------------- 汇总篇: Xilinx平台DDR3设计保姆式教程(汇总篇)——看这一篇就够了 ----------------------------------------------------------...

数字IC/FPGA杂货铺,找一找,或许有你想要的~ 2万+

牛客网暑期ACM多校训练营(第四场)J Hash Function 拓扑排序 线段树

题目链接: J Hash Function 题目大意 一张hash表,长度为n,哈希函数为hash(x) = x mod n,如果有冲突,则位置向后移一位(n-1的下一位是0) 现在给你一张hash表,要求出字典序最小插入顺序 思路 如果a[i]%n != i,说明在a[i]插入前,a[i]%n到i-1所在的位置已经被占用了,也就是说区间[a[i]%n, i-1]中的数字必须在a...

litmxs的博客 333

即插即用篇 | 手把手教你 YOLOv11 添加注意力机制 | 适用于【检测任务】【分类任务】【分割任务】【关键点任务】| 20+ 种全打通!

即插即用篇 | 手把手教你 YOLOv11 添加注意力机制 | 适用于【检测任务】【分类任务】【分割任务】【关键点任务】| 20+ 种全打通!

Coding... 2829

AB测试面试题

AB实验流程以一个实际的业务场景去描述AB实验流程,限定场景来减少和面试官的信息差,确保沟通高效可以以自己简历上某个相关项目的场景来举例,或者以面试的岗位对应的业务来举例子。不能光自己说,要让面试官参与进来,引导面试官往自己熟悉的内容提问,从被动转为主动。回答要有逻辑性,简洁、准确的表达。还是延用之前提到的项目案例,假设之前抖音拍摄页面中右下角相册功能的icon 由相册图标改为 用户相册的最新一张照片这个案例写在了我的简历中。

qq_45727498的博客 856

牛客网暑期ACM多校训练营(第四场) J Hash Function /CCPC-Wannafly Winter Camp Day7 (Div2, onsite) E 线性探查法

链接:https://ac.nowcoder.com/acm/contest/142/J 来源:牛客网   Chiaki has just learned hash in today's lesson. A hash function is any function that can be used to map data of arbitrary size to data of fixed s...

LSD20164388的博客 429

操作系统实验四 进程运行轨迹的跟踪与统计(哈工大李治军)

实验4 进程运行轨迹的跟踪与统计 实验目的 掌握 Linux 下的多进程编程技术; 通过对进程运行轨迹的跟踪来形象化进程的概念; 在进程运行轨迹跟踪的基础上进行相应的数据统计,从而能对进程调度算法进行实际的量化评价,更进一步加深对调度和调度算法的理解,获得能在实际操作系统上对调度算法进行实验数据对比的直接经验。 实验内容 进程从创建(Linux 下调用 fork())到结束的整个过程就是进程的生命期,进程在其生命期中的运行轨迹实际上就表现为进程状态的多次切换,如进程创建以后会成为就绪态;当该进程被调度以

leoabcd12的博客 4648

牛客网暑期ACM多校训练营(第四场)J. Hash Function [线段树+拓扑排序]

题意 给你一个对a数组hash之后的hash表,求原来的a数组字典序最小的解。 题解 对于hash表中当前这个数hi,若hi%n!=i的话,说明当前这个数是后移过的,那么说明在hi后移的这一段数必须在hi之前放入才能让hi在i这个位置,所以这就是一个拓扑排序。假如我们暴力建图,那么肯定会TLE。所以我们用线段树优化建图,对于当前这个点,他位移的那段区间,找到在线段树上的映射,将这些子区间的点...

abutoto的博客 316

YOLOv8改进策略【Backbone/主干网络】| 2023 U-Net V2 替换骨干网络,加强细节特征的提取和融合

一、本文介绍 本文记录的是基于U-Net V2的YOLOv8目标检测改进方法研究。本文利用U-Net V2替换YOLOv8的骨干网络,UNet V2通过其独特的语义和细节融合模块(SDI),能够为骨干网络提供更丰富的特征表示。并且其中的注意力模块可以使网络聚焦于图像中与任务相关的区域,增强对关键区域特征的提取,进而提高模型精度。本文配置了原论文中pvt_v2_b0、pvt_v2_b1、pvt_v2_b2、pvt_v2_b3、pvt_v2_b4和pvt_v2_b5六种模型,以满足不同的需求。 文章目录一、本文

Limiiiing的博客 1720

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

牛客网暑期ACM多校训练营(第四场)

打得头皮发麻。。。 A 比赛的时候维护了每个phi的取模,卡常卡过了。听说有O(n+log2n)O(n+log2n)O(n+log^2n)的牛逼算法,就学习了一下。 #include &amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;gt; using namespace std; typedef long long ll; ll mod[30]={ 1000000007, 1000000006, 5...

ACM, deep love 605

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

2018牛客多校第四场J题 Hash Function(思维+并查集)

题目描述  Chiaki has just learned hash in today's lesson. A hash function is any function that can be used to map data of arbitrary size to data of fixed size. As a beginner, Chiaki simply chooses a hash...

nka_kun的博客 822

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

并查集 【牛客网 朋友圈】

并查集:(union-find sets) 一种简单的用途广泛的集合. 并查集是若干个不相交集合,能够实现较快的合并和判断元素所在集合的操作,应用很多,如其求无向图的连通分量个数等。最完美的应用当属:实现Kruskar算法求最小生成树。 l并查集的精髓(即它的三种操作,结合实现代码模板进行理解): 1、Make_Set(x) 把每一个元素初始化为一个集合 初始化后...

qq_35634181的博客 608

2021牛客暑期多校训练营1 H - Hash Function ( FFT )

题目链接:点击进入 题目 题意 给你一个集合 S ,让你找一个最小模数 seed ,满足集合内所有数取模后的值各不相同 思路 如果两个数 x , y , 取模后的值相同,则需要满足:| x - y | % seed == 0 所以如果已知模数 seed ,若对于所有的 | a [ i ] - a [ j ] | ( 1 <= i, j <= n, i != j )都满足不是模数 seed 的倍数,那么此模数就是最小模数。 对于所有的 | a [ i ] - a [ j ] | ( 1 &l

Cosmic_Tree的博客 333

[编程题] 困兽之斗

经过深思熟虑之后,小贱君打算去M国闯一闯,那是一个古老的东方国度,传说有很多高阶魔法师,他想成为一名伟大的魔法师,将来征服星辰大海。 经过千辛万苦,小贱君终于来到了M国,不幸的是刚进城门小贱君就被M国的守城士兵困在了一种叫做“困兽之斗”的阵法之中。 士兵对小贱君说:“看到漂浮在你身边的宝石了吗?彩虹连接的两颗宝石可以任意交换位置,你需要通过一系列交换后使得宝石组成的字符串的字典序最小。若不能破

asd8705的专栏 752
上一篇: hiho一下 第213周 - A Boarding Passes (基础图论)
下一篇: 2018 Multi-University Training Contest 3 - Problem A. Ascending Rating (单调队列)
Mr_Treeeee
博客等级 码龄10年 38粉丝 551原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值