2020暑假杭电多校第三场:05/E : Little W and Contest【路径压缩并查集+数学式子】

fibplus-8.0.0.zip FIBPlus 是一套面向 Delphi / C++Builder 的 Firebird、InterBase 数据库访问组件,特点是直接走原生客户端 API,不经 BDE/ODBC,速度快且可控性强。8.0.0 版本主要适配 Delphi 2009 及以后的版本(Delphi 6–2007 需用 7.9.x),核心组件包括 TpFIBDatabase、TpFIBTransaction、TpFIBDataSet 等,支持精细事务管理、本地缓存、BLOB 处理和备份恢复等数据库服务。该库原为 Devrace 的商业组件,现由社区在 GitHub 的 madorin/fibplus 项目开源维护,建议从官方仓库获取源码而非第三方网盘压缩包。安装时解压后用对应版本的工程组(10.4+ 统一为 `FIB.groupproj`)Build 全部包,再 Install `dclFIB` 并在 Library 路径加入 Source 目录即可。新项目中若需官方技术支持,也可考虑 FireDAC、IBDAC 等更现代的替代方案。 立即下载

题目链接:杭电problems6795

题解太过于玄乎,我写一下直接用数学式子解决的方法把:

我们把1能力的选手和2能力的选手分成两堆:

能力1选手数量为:n
能力2选手数量为:m
每一次操作其实就是两个连通块给连起来对不对?我们初始化:每一个点都是一个连通块,能力为1的选手的连通块我们在根节点用a=1,b=0表示这个连通块的能力为1选手数量为1,能力为2选手数量为0;

那么我们0次操作后的答案是很容易求出来的:C(2,m)*n+C(3,m)。
我们用last变量存上一次操作的答案。

在某次操作,我们把a1,b1属性的连通块和a2,b2属性的连通块连在一起,那么就是说:
1 a1 , a2 , n - a1 - a2
2 b1 , b2 , m - b1 - b2
当把三块分出来,我们可以捋清楚了以下四个情况:
原本b1一个,b2一个,(n-a1-a2)一个可以,现在不行了
原本b1一个,b2一个,(m-b1-b2)一个可以,现在不行了
原本b1一个,a2一个,(m-b1-b2)一个可以,现在不行了
原本a1一个,b2一个,(m-b1-b2)一个可以,现在不行了

那么last=last-b1b2(n-a1-a2)-b1b2(m-b1-b2)-b1a2(m-b1-b2)-b2a1(m-b1-b2)

Code:

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <string>
#include <climits>
#include <queue>
#include <stack>
#include <map>
#include <set>
#include <bitset>
#include <iomanip>
//
using namespace std;
const int INF = 0x3f3f3f3f;//1.06e9大小
const int mod1 = 1e9 +7;
const int mod2 = 998244353;
const int mod3 = 1e9;
const double PI = acos(-1);
const double eps =1e-8;
typedef unsigned long long ull;
typedef long long ll;
typedef unsigned uint;
const int sq5=616991993;
#define ms(x, n) memset(x,n,sizeof(x))
#define debug printf("***debug***\n")
#define pii pair<int ,int>
#define X first
#define Y second
#define pb push_back
#define ls(i) i<<2
#define rs(i) i<<2|1
#define lowbit a&(-a)
/*
*/
int t,tot;
ll n,m,last;
const int maxn = 1e5+100;
struct Root
{
    ll a,b;
}root[maxn];

int fa[maxn];
int getfather(int k){if(fa[k]==k)return k;return fa[k]=getfather(fa[k]);}
void out(ll a1 ,ll b1 ,ll a2 ,ll b2)
{
    ll res=0;
    res=(res+b1*b2*(n-a1-a2))%mod1;
    res=(res+b1*b2*(m-b1-b2))%mod1;
    res=(res+b1*a2*(m-b1-b2))%mod1;
    res=(res+b2*a1*(m-b1-b2))%mod1;
    last=(last-res+mod1)%mod1;
    printf("%lld\n",last);
}
void mer(int from ,int to )
{//连接函数
    int x=getfather(from);
    int y=getfather(to);
    fa[x]=y;
    out(root[y].a ,root[y].b ,root[x].a ,root[x].b );
    root[y].a+=root[x].a;
    root[y].b+=root[x].b;
}
int main()
{
    cin>>t;
    while(t--)
    {
        n=0,m=0;//n个1,m个2
        scanf("%d",&tot);
        for(int i=1;i<=tot;++i)
        {
            int num=0;
            scanf("%d",&num);
            fa[i]=i;
            if(num==1)
            {
                ++n;
                root[i]={1,0};
            }
            else
            {
                ++m;
                root[i]={0,1};
            }
        }
        last=(m*(m-1)*(m-2)/6)%mod1+((m*(m-1)*n)/2)%mod1;
        last %=mod1;
        printf("%lld\n",last);

        for(int i=1;i<tot;++i)
        {//询问
            int u,v;//u的root连到v的root上
            scanf("%d %d",&u,&v);
            mer(u,v);
        }
    }

    return 0;
}


基于K8S + apisix/istio 实现云原生模块化微服务.自带代码生成器,能够生成对表的增删改查的逻辑代码 基于K8S + apisix/istio 实现云原生模块化微服务.自带代码生成器,能够生成对表的增删改查的逻辑代码.是标准Maven项目,只依赖springboot,没有hibernate,struts,ibatis,数据库调优可以使用druid输出慢sql,比分析xml中的语句更直观,springrain所有的sql语句都使用Finder封装管理,只要查看Finder的引用即可. 立即下载

相关推荐

工艺部2026年终总结及2027工作规划PPT.pptx

制造业生产、工艺、设备、质量全套 PPT 资料,包含月度经营复盘、季度数据分析、部门年终总结规划、产线与检验规范、TPM 设备保全、质量意识、质量总监高阶培训等课件。内容兼顾经营指标偏差分析、述职汇报、现场制度宣贯、岗位技能教学。 适合操作工、检验员、设备维保员、工艺 / 品质 / 设备工程师、生产主管、各部门部长、质量总监、厂长、内部培训师、精益专员使用,覆盖一线执行、骨干分析、部门负责人述职、高管进阶全层级,可直接用于工厂汇报、内部培训、述职复盘。

2019 Multi-University Training Contest 9 HDU多校赛 题解

HDU 6685 06.Rikka with Coin 题意 面值有10,20,50,100的硬币,要凑出给出的所有面值,求最小硬币数。 题解 直接枚举10,20,50的个数,然后计算100的至少需要多少个。 注意20,50的可能可以组成一个>100的值。 而且不能直接从大往小放,能放就放,不能就无解。比如有3个20,1个50。60可以用3个20组成,但如果先放了一个50就没法放了。 可以小...

Ark 673

锂电池基于电热耦合模型与NSGA-II算法的充电曲线优化:温升与损耗权衡及多目标帕累托边界求解 MATLAB 锂电池充电曲线优化|NSGA-II求解与温升损耗权衡

内容概要:本文介绍了一个基于MATLAB的锂电池充电曲线优化项目,旨在通过NSGA-II多目标进化算法,平衡充电过程中的温升与综合损耗。项目构建了电热耦合模型,将充电过程划分为多个荷电状态阶段,每个阶段的充电倍率作为决策变量,目标是最小化峰值温度和综合损耗,同时满足充电时间、温度、电压和电流变化率等约束条件。通过快速非支配排序和拥挤距离等机制,算法生成帕累托最优解集,用户可根据需求选择安全优先、损耗优先或综合折中的充电策略。项目还包括了数据生成、模型验证、结果可视化和GUI界面,形成了完整的从模型构建到策略输出的技术闭环。 适合人群:具备一定MATLAB编程基础,从事电池管理系统、新能源汽车、储能系统或电力电子等领域研发工作的工程师和技术人员。 使用场景及目标:①为新能源汽车、无人机、储能电站等提供快速且安全的充电策略;②研究多目标优化算法在工程实际问题中的应用;③构建电池充电过程的数字孪生模型,支撑电池全生命周期的精细化管理。 阅读建议:此资源以实际工程项目为导向,不仅展示了算法实现,更强调了工程约束、模型校准和结果验证的重要性。学习者应在理解电化学与热力学基础知识的前提下,结合提供的完整代码进行调试和运行,并重点关注约束处理、目标函数设计和帕累托前沿分析等核心环节,以深入掌握多目标优化在复杂工程系统中的应用精髓。

2020杭电多校第五场 1009 Paperfolding

1009 Paperfolding题意思路实现代码 链接 题意 将一张纸对折n次,每一次对折有四种选择,问最后从中心水平切一刀,垂直切一刀最后得到的纸片数有多少? 比如我n=0时,就是一张纸,从中心水平切一刀,垂直切一刀,得到4片。 n=1时,横着或竖着对折一下,再从中心水平切一刀,垂直切一刀,得到6片。 思路 先说结论 假设a是横着对折的次数,b是竖着对折的次数 则最终纸片数为 (2a+1)(2b+1)(2^{a}+1)(2^{b}+1)(2a+1)(2b+1) 我们以虚线代表折痕,实线代表切割, 相当于

离开那天的博客 767

wordbuddy破甲经验分享

wordbuddy破甲经验分享

双闭环PWM整流器VOC控制 +SVPWM调制仿真(Simulink仿真实现)

内容概要:本文详细介绍了一种基于Simulink的双闭环PWM整流器采用虚拟同步发电机控制(VOC)策略与空间矢量脉宽调制(SVPWM)技术的仿真模型。该模型在dq同步旋转坐标系下构建电压定向控制系统,实现了电压外环与电流内环的双闭环控制结构,重点阐述了VOC控制原理、SVPWM调制算法的实现方法及其在Simulink环境中的模块化搭建过程。通过该仿真平台,能够有效实现单位功率因数运行、直流母线电压稳定控制以及优异的动态响应性能,适用于电力电子变换器、新能源并网系统及电机驱动等领域的控制策略验证与性能评估。; 适合人群:电气工程、自动化、电力电子与电力传动等相关专业的高年级本科生、研究生,以及从事电力电子系统仿真、新能源并网控制研究的科研人员和技术工程师。; 使用场景及目标:①深入理解三相PWM整流器在dq坐标系下的数学建模与控制机理;②掌握VOC控制策略的核心思想及其相较于传统矢量控制的优势;③学习SVPWM调制技术的实现流程与Simulink建模技巧;④通过仿真实验验证双闭环控制系统的静态精度与动态稳定性,提升对先进电力电子控制系统的分析与设计能力。; 阅读建议:建议结合电力电子技术、现代控制理论和电机控制相关基础知识进行学习,按照仿真模型的结构逐步分析各功能模块的信号流向与参数配置,重点关注锁相环(PLL)、坐标变换、PI控制器设计及SVPWM模块的实现细节,并可通过调整控制参数观察系统响应变化,以深化对控制策略动态特性的理解。

HDU6795(HDU第三场多校).Little W and Contest(并查集)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6795 题意: club中三个互相都不认识的人且三个人中能力值为2的至少有两人可以组成一个team。并且,A和B相识,B和C相识,那么A和C相识。一共有n-1次让两个不认识的人相识,求每次交友后可以组成多少种不同的team 解题思路: 交友问题很显示使用并查集,将相互认识的人放在同一个并查集中,同一个并查集中的人不能够成为队友。保存总的1能力值人数为num[0],总的2能力值人数为num[1]。每个并查集中pre

Buyi的博客 325

储能双向Buck-Boost+模型预测电流控制+电压下垂控制仿真【附参考文献】(Simulink仿真实现)

内容概要:本文系统介绍了基于Simulink平台构建的储能双向Buck-Boost变换器仿真模型,融合模型预测电流控制与电压下垂控制策略,面向锂电池储能系统的高效充放电管理。该模型深入实现了双闭环控制架构的设计与动态性能分析,涵盖系统建模、关键控制算法实现及稳定性验证,并配套提供参考文献以支撑理论深度与技术复现性。资源包还整合了多种典型电力电子拓扑的仿真案例,如各类DC-DC变换器、谐振变换器、PWM整流器等,充分体现了其在新能源发电、微电网能量调度及电力系统稳定控制中的广泛应用价值和技术延展性。; 适合人群:适用于电气工程、自动化、电力电子及相关专业的高校研究生、科研人员以及从事能源系统仿真与控制设计的工程技术人员;要求具备一定的Simulink/MATLAB操作能力及电力电子与自动控制基础知识;; 使用场景及目标:①深入理解双向Buck-Boost电路在储能系统中的工作机理与能量双向流动控制方法;②掌握模型预测控制(MPC)与下垂控制在实际电力变换系统中的建模流程与参数整定技巧;③为科研课题、学位论文或工程项目提供高可靠性、可复用的仿真原型与技术参考方案; 阅读建议:建议结合文中列出的参考文献与网盘提供的完整仿真资源,按照目录结构循序渐进地学习各模块案例,重点剖析控制逻辑搭建、调节器设计与系统动态响应特性,通过动手仿真与参数调试深化对控制策略性能与鲁棒性的理解。

2020杭电多校第三场部分题解(1004, 1005, 1006, 1009)

1004 Tokitsukaze and Multiple 可以处理出每个点i作为划分的右端点,它最近的左端点为L[i],然后问题就转换成了若个个区间,求彼此之间不相交的情况下最多有几个共存。经典问题,这里用DP解决 #include<bits/stdc++.h> #define ll long long #define pb push_back #define lowbit(x) ((x)&(-(x))) #define mid ((l+r)>>1) #define ls

积极的防守者的博客 645

产业园区在推动科技成果落地时,如何高效匹配企业与技术供给方.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

全桥LLC谐振(变频+移相混合控制)变换器闭环仿真模型(Simulink仿真实现)

内容概要:本文详细介绍了基于Simulink平台构建的全桥LLC谐振变换器闭环仿真模型,采用变频控制与移相控制相结合的混合调制策略,实现高效电能转换与高精度输出稳压。模型完整涵盖了系统建模、谐振腔参数设计、软开关技术实现、双闭环控制系统(如电压外环与频率/相位内环)设计及仿真验证全过程,重点突出零电压开通(ZVS)与零电流关断(ZCS)的实现机制,以显著降低开关损耗,提升变换器效率与动态响应性能。配套资源包含完整的Simulink仿真文件、详细的参数设计报告及核心参考文献,为深入理解LLC谐振变换器的工作机理、控制策略优化及其在开关电源、新能源发电等领域的工程应用提供了坚实的技术支撑。; 适合人群:具备电力电子技术、自动控制理论基础,从事高频开关电源、新能源变换器、车载充电机或相关方向研究的研究生、科研人员及电气工程师。; 使用场景及目标:①系统学习全桥LLC谐振变换器的精确建模与仿真方法;②掌握变频+移相混合控制策略的设计原理与实现技巧;③开展高效率、高功率密度电源变换器的科研攻关与工程项目开发;④深入理解软开关技术在实际电路中的应用与优势; 阅读建议:建议结合所提供的仿真模型与设计报告进行动手实践,重点分析控制器参数整定过程、谐振元件(Lr, Cr, Lm)的参数匹配关系,并仔细观察仿真波形,以深刻把握系统的稳态特性、瞬态响应能力及控制稳定性,从而全面提升对复杂谐振变换器系统的设计与分析水平。

2020杭电多校第三场 Little W and Contest(并查集,组合数学)

Problem Description There are n members in our ACM club. Little W wants to select three persons from our club to form a new team taking part in provincial ACM contests, as it is known by all of us that any ACM contest requires a normal team to have three m

tomjobs的博客 680

LLC谐振变换器恒压恒流双竞争闭环控制simulink仿真(附说明文档)

内容概要:本文提供了一套针对LLC谐振变换器恒压恒流双竞争闭环控制的完整Simulink仿真资源,涵盖详细的仿真模型、设计说明文档及配套PPT讲解材料。该资源聚焦于电力电子领域中LLC谐振DC-DC变换器的核心控制策略,重点实现了在不同负载条件下恒压(CV)与恒流(CC)模式之间的无缝切换与双闭环竞争控制机制,确保系统具备高稳定性与动态响应性能。仿真平台基于Matlab/Simulink构建,适用于半桥或全桥LLC拓扑结构,内容包括谐振参数设计、变频控制(PFM)、软启动策略、反馈环路建模及闭环稳定性分析等关键技术环节,具有较强的工程实践价值和科研复现意义。; 适合人群:面向电力电子、电气工程及其自动化等相关专业的研究生、科研人员以及从事开关电源、新能源变换器研发的工程师,尤其适合具备基本电路理论和Simulink仿真操作经验的技术人员;; 使用场景及目标:①深入理解LLC谐振变换器的工作原理及其在恒压恒流输出控制中的实现方法;②支撑科研项目中对模式切换逻辑、软开关实现、系统抗扰能力与稳定性分析等关键问题的研究;③作为毕业设计、学术论文复现或工业级电源产品原型开发的重要技术参考;; 其他说明:资源配套提供了详尽的参数设计指导与PPT解析,有助于快速掌握建模思路与控制器整定方法,建议使用者结合自身应用场景调整谐振腔参数与PI控制器增益,以实现最优性能,同时可通过公众号“荔枝科研社”获取持续的技术支持与扩展资料。

HDU 6795 Little W and Contest(2020杭电多校第三场)

Little W and Contest Time Limit: 2000/2000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others) Total Submission(s): 1220 Accepted Submission(s): 407 Problem Description There are n members in our ACM club. Little W wants to select three pers

weixin_44941429的博客 206

双向全桥CLLC谐振变换器仿真模型(Simulink仿真实现)

内容概要:本文详细介绍了双向全桥CLLC谐振变换器的Simulink仿真模型,重点实现了在变频控制策略下的系统建模与动态仿真分析。该模型完整构建了主电路拓扑结构、谐振腔参数设计、PWM驱动模块以及闭环控制系统,能够精确模拟变换器在不同输入电压、负载条件下的工作特性,验证其高效率运行、软开关实现能力及宽范围电压调节性能。仿真内容深入涵盖了系统传输效率、谐振电流与电压波形、软开关时机等关键性能指标的分析,尤其关注变频控制对系统动态响应的影响,适用于电力电子高频高效变换器的研发设计与教学实践。; 适合人群:电力电子、电气工程及其自动化等相关专业的研究生、科研人员及从事新能源电源、电动汽车充放电系统、V2G技术开发的工程技术人员。; 使用场景及目标:①深入理解CLLC谐振变换器的工作原理与参数设计方法;②掌握变频控制策略在双向DC-DC变换器中的建模与实现技术;③为科研项目、课程设计、学位论文或工业产品开发提供高保真仿真平台与技术参考; 阅读建议:建议结合电力电子经典教材与高水平期刊文献,边运行仿真模型边剖析各模块功能,重点关注谐振参数匹配、闭环控制器参数整定对系统效率与稳定性的影响,可通过参数扫描与工况切换方式深入探究系统的动态特性与鲁棒性。

TSMC65nm工艺下Virtuoso仿真gm-id曲线的保姆级教程(含ADE设置详解)

本文提供了一份在TSMC 65nm工艺下使用Cadence Virtuoso绘制gm-id曲线的详细教程。内容涵盖从理解gm/id方法学、搭建仿真环境、深度解析ADE设置,到运行DC仿真、提取数据并生成对数坐标曲线的完整流程。教程重点解析了Virtuoso ADE中的关键设置与常见避坑点,旨在帮助模拟集成电路设计初学者快速掌握这一核心设计工具,为高性能电路设计奠定基础。

grpc6streamer的博客 1172

【杭电多校2020】第三场1005.Little W and Contest(并查集)

题目链接 思路: 首先求出所有的2和1的个数并求出他们一共可以结合成多少对,然后再输入关系对,用并查集维护关系,再一点一点减去相关联后减少的对数即可。 代码: #include<bits/stdc++.h> #define int long long #define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); const int N=1e5+5; const int M=2e4+5; const double eps=1e-8;

ACkingdom的博客 370

Dynamics 365 On-Premise Server v9.0部署体验

期盼已久的Dynamics 365 On-Premise的版本升级终于在11月初姗姗来迟。 11月2日起已经可以在官方渠道下载正式版的Dynamics 365 Server v9.0安装文件,版本号9.0.2,随手附上中文版安装文件下载地址。 想必已经有不少小伙伴开始尝试各种升级、安装了吧。 Dynamics 365 On-Premise的安装过程,度娘一下已经有很多了,这里就不赘述了,只是...

Roger的专栏 2139

Little W and Contest(并查集)

Little W and Contest(并查集) 题目传送门 Little W and Contest 题意 俱乐部有n个人,其中有标号为1和2的两种人, 一个队伍至少保包含两个标号为2的人 最开始大家相互不熟悉,每天会有人相互认识,也可以通过认识的人去认识其他人(并查集) 要求队伍中的人互相不认识,求每天可以组成的队伍 思路 第一天大家都不认识,我们可以选择2 2 1和2 2 2,求出此时的ans 后面的几天,可以将人分成三种,当天认识的u,v和其他的w,因为u和v肯定是不互相认识的,所以认识u的

Kuricip的博客 405

深入解析Flex NOC总线驱动的实时带宽与延迟优化策略

本文深入解析了Flex NOC总线驱动的核心价值与优化策略。通过解读`/proc/noc/real_time`中的实时带宽与延迟数据,并结合`sysfs`接口进行动态QoS调优,可以有效解决芯片内部数据拥堵问题。文章以智能摄像头和算力盒子的实际案例,详细说明了如何通过优先级调整、带宽限制和参数优化,提升系统在复杂任务下的实时性与稳定性。

weixin_29289821的博客 284

MATLAB仿真耗散孤子共振与金兹堡-朗道方程解析

耗散孤子共振(DSR)是非线性光学中的特殊脉冲现象,通过平衡非线性效应、色散与能量耗散实现稳定传输。其核心数学模型金兹堡-朗道方程(GLE)描述了光脉冲在增益介质中的演化规律,采用分步傅里叶方法(SSFM)可高效求解这类非线性偏微分方程。该技术在光纤激光器设计、高速光通信系统优化等领域具有重要价值,特别是在需要高能量脉冲保持稳定传输的场景。MATLAB数值仿真为理解DSR物理机制提供了直观工具,通过参数扫描可验证脉冲能量与宽度的线性关系特征,并为实际器件设计提供预测依据。

weixin_31240035的博客 257

E - Little W and Contest

https://vjudge.net/contest/386223#problem/E There arennmembers in our ACM club. Little W wants to select three persons from our club to form a new team taking part in provincial ACM contests,...

YukiRinLL的博客 163

Win10系统蓝屏错误BAD SYSTEM CONFIG INFO的解决方案

BAD SYSTEM CONFIG INFO错误是Win10系统中较为常见的一种蓝屏错误,通常与系统配置文件损坏或丢失有关。本文介绍了三种有效的解决方法:使用系统修复高级选项修复、通过PE修复文件和重装新系统。用户可以根据实际情况选择合适的方法进行操作。同时,建议用户定期备份系统重要文件和数据,以防止类似问题的发生。在遇到问题时,保持冷静并耐心操作,通常可以顺利解决问题。

mmoo_python的博客 7721
上一篇: 【板子库(没有解释,萌新绕路)】全局第k小,权值线段树做法+离散化解决带修改问题的离线做法【待验证,不保证代码无误】
下一篇: 数论笔记:杂篇
DevourPower
博客等级 码龄7年 52粉丝 78原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值