2014 icpc 西安现场赛 I - International Collegiate Routing Contest

PyTorch炼丹遇Segmentation fault?别慌,手把手教你用faulthandler和gdb精准定位内存错误 本文详细解析了PyTorch开发中常见的Segmentation fault错误,并提供了使用faulthandler和gdb进行精准调试的实用指南。通过代码示例和实战案例,帮助开发者快速定位内存错误,解决版本冲突、CUDA环境问题等常见痛点,提升深度学习模型的稳定性与开发效率。 阅读详情

-0-马上上计网了,感觉没什么空再看笛卡尔树了2333来水篇博客
还一个多礼拜就要去西安当分母了。第一次当分母内心还有点小紧张2333
然后我们来看看这个强行银牌题。。
队友还是强啊,五分钟把铜牌题公式甩我脸上了然鹅QWQ
这个银牌题其实也不是很难(如果看得懂题的话)
首先把所有ip换成二进制表示,题目表示如果有效前缀相同那么他们在一个子网内。
那么怎么才算有效前缀呢。看/后面那个数字,就是从高到低这个字数位是有效位
255.255.255.255/32为例
11111111.11111111.11111111.11111111有效前缀是32位就是全部有效
那么这个子网就只有一个ip就是255.255.255.255
如果是255.255.255.255/24那就只有24位了
所以画一画的话就会发现我们255.255.255.~这个~可以从0-255都是在这个子网内的
如果把上面/24换成23
可以发现111111111.11111111.1111111有效前缀是这些
那么之后的11111111.11111111.11111110.~和11111111.11111111.11111111.~
都在这个子网的支配下,那么我们很容易想到用字典树去匹配前缀。
那么我们的目的是至少还要多少才能支配剩下的子网且不能有冲突
现在我们在字典树上看,把ip表示为a.b.c.d/e
支配这个行为其实就是在字典树a.b.c.d这条链上找到高度为e的那个点
以这个点为根节点的所有网络都被这个子网支配
有链就说明以当前这个前缀为子网的话下面还有已存在的子网,会产生冲突
那么我们不产生冲突的话就要找到当前网络不存在的子网
也就是在字典树上找到还没有建的节点,那么就可以直接遍历整棵字典树
如果碰到没有建的节点,那么说明这个节点可以支配一个不会产生冲突的子网
这是我们需要的
如果碰到一个节点是有效前缀的末尾,那么这之后的所有子网都被这个前缀支配所以不需要添加子网
最后输出就行了2333

#include<bits/stdc++.h>
using namespace std;

const int N = 1e6 + 8;

struct Tire
{
    int mark;
    int next[2];
}t[N];
struct IP
{
    int ip[40];
};
int tot = 0;
int x[40];
int root;

int NewNode()
{
    tot ++;
    t[tot].mark = 0;
    for(int i = 0;i<2;i++)
        t[tot].next[i] = 0;
    return tot;
}
void init()
{
    memset(t,0,sizeof(t));
    tot = 0;
    root = NewNode();
}
void ip2str(int a,int b,int c,int d,int e)
{
    memset(x,0,sizeof(x));
    for(int i = 7;i>=0;i--)
    {
        x[i] = a % 2;
        a /= 2;
    }
    for(int i = 15;i >= 8;i--)
    {
        x[i] = b % 2;
        b /= 2;
    }
    for(int i = 23;i >= 16;i--)
    {
        x[i] = c % 2;
        c /= 2;
    }
    for(int i = 31;i >= 24;i--)
    {
        x[i] = d % 2;
        d /= 2;
    }
    x[32] = e;
}
void insert()
{
    int pos = x[32];
    int r = root;
    for(int i = 0;i<32;i++)
    {
        if(!pos)
        {
            t[r].mark = 1;  
            return;
        }
        //printf("%d %d %d\n",i, x[i],r);
        if(!t[r].next[x[i]])
        {
            int temp = NewNode();
            t[r].next[x[i]] = temp;
        }
        r = t[r].next[x[i]];
        pos --;
    }
}
vector<IP>ans;
int tar[40];
void dfs(int r,int d)
{
    if(d > 32)
        return;
    if(!r)
    {
        IP temp;
        for(int i = 0;i<33;i++)
            temp.ip[i] = tar[i];
        temp.ip[32] = d;
        ans.push_back(temp);
        return;
    }
    if(t[r].mark)
        return;
    tar[d] = 0;
    dfs(t[r].next[0],d+1);
    tar[d] = 1;
    dfs(t[r].next[1],d+1);
    tar[d] = 0;
}
void PrintIp(IP x)
{
    int a,b,c,d,e;
    a = b = c = d = e = 0;
    for(int i = 0;i<8;i++)
    {
        a *= 2;
        a += x.ip[i];
    }
    for(int i = 8;i<16;i++)
    {
        b *= 2;
        b += x.ip[i];
    }
    for(int i = 16;i<24;i++)
    {
        c *= 2;
        c += x.ip[i];
    }
    for(int i = 24;i<32;i++)
    {
        d *= 2;
        d += x.ip[i];
    }
    e = x.ip[32];
    printf("%d.%d.%d.%d/%d\n",a,b,c,d,e);
}
int main()
{
    int T;
    scanf("%d",&T);
    int ka = 0;
    while(T--)
    {
        int n;
        scanf("%d",&n);
        init(); 
        for(int i = 0;i<n;i++)
        {
            int a,b,c,d,e;
            scanf("%d.%d.%d.%d/%d",&a,&b,&c,&d,&e);
            ip2str(a,b,c,d,e);
            insert();
        }   
        ans.clear();
        memset(tar,0,sizeof(tar));
        dfs(root,0);
        printf("Case #%d:\n",++ka);
        if(n == 0)
        {
            printf("1\n");
            printf("0.0.0.0/0\n");
            continue;
        }
        printf("%d\n",ans.size());
        for(int i = 0; i != ans.size(); i ++)
            PrintIp(ans[i]);
    }
}
Python连接高斯数据库踩坑实录:从SASL报错到SSL安全连接的完整指南 本文详细记录了Python连接高斯数据库时遇到的SASL authentication报错及其解决方法。通过剖析SASL认证机制,对比了修改数据库配置、使用官方驱动等方案的利弊,并重点提供了通过自动化脚本生成SSL证书,实现安全、免密连接的完整指南,帮助开发者彻底解决连接难题。 阅读详情

相关推荐

SEED-VIG数据集实战:5步搞定驾驶员疲劳检测模型(附Python代码)

本文提供了一份基于SEED-VIG数据集的驾驶员疲劳检测模型实战指南。通过五个核心步骤——数据准备、特征提取、模型训练、优化评估及部署思路,详细讲解了如何利用脑电信号构建分类器,并附有完整的Python代码,帮助开发者快速上手这一智能座舱关键技术。

w1x2y3的博客 263

The 2014 ACM-ICPC Asia Xi’an Regional Contest Problem F. Color(二项式反演)

                                                 Problem F. Color   传送门 题意:长度为n的一个连续串让你染色,使得相邻位置的颜色不能一样,且串中恰好一共出现k种颜色,问若是你有m种颜色(m&gt;=k),一共有多少种染色方法满足给定条件. 我们易推得如果仅仅是要求相邻位置的颜色不一样那么              ...

喵喵喵? 686

【讯飞星火大模型AI】SpringBoot整合星火API:从零构建智能数据分析助手

本文详细介绍了如何使用SpringBoot框架整合讯飞星火大模型API,从零构建一个智能数据分析助手。通过清晰的步骤,指导开发者完成API密钥申请、项目搭建、SDK集成与核心代码编写,实现用户通过自然语言指令和CSV数据,即可自动获得ECharts图表代码与专业数据分析结论,极大降低数据分析与可视化的门槛。

neovim7hacker的博客 275

2014ACM/ICPC亚洲区西安站 F题 color (组合数学,容斥原理)

题目链接:传送门 题意: n个格子排成一行。我们有m种颜色。能够给这些格子涂色,保证相邻的格子的颜色不同 问,最后恰好使用了k种颜色的方案数。 分析: 看完题目描写叙述之后立刻想到了一个公式 :C(m,k)*k*(k-1)^(n-1),可是细致分析了一下 这个公式的含义是相邻的格子颜色不同,使用的颜色总数小于等于k的方案数,可是这个 公式能够帮忙我们衍生出来以下的公式。C(k...

weixin_34344403的博客 179

Origin软件XRD全峰拟合保姆级教程:从数据导入到弱峰处理技巧

本文提供了一份Origin软件进行XRD全峰拟合的深度实战指南。文章重点解析了从数据导入预处理、基线锚点视觉化设置,到弱峰拟合的锁定策略与手动干预等核心技巧,旨在帮助用户避开常见错误,获得可靠、精确的拟合结果,从而有效服务于材料结构分析。

rgv2345678的博客 706

描述符链表(Descriptor Chain)是什么?

描述符链表是硬件加速数据传输的核心数据结构,通过链式描述符(包含地址、长度、控制标志等)实现DMA自动批量处理,显著降低CPU负载。其工作原理为:CPU初始化链表后,硬件按序处理每个描述符,完成自动跳转与中断通知。在网卡收包、NVMe存储等场景中应用广泛,优势包括批处理、低延迟和灵活调度。需注意内存对齐、缓存一致性等实现细节,优化手段包括预分配描述符池、环形缓冲区等。该技术是网络/存储领域提升吞吐量的关键方案。

guigenyi的专栏 774

2014 ACM-ICPC 亚洲地区赛 西安站小结

弱菜第二次参加地区赛,继续流水帐记录下。

chen9434的专栏 1159

【OpenClaw企业级智能体实战】第11篇:制造业设备预测性维护实战——OpenClaw+DeepSeek+Prometheus从零搭建(附完整代码)

本文聚焦制造业设备预测性维护的核心痛点,基于OpenClaw v2026.2.1、DeepSeek智能诊断、Prometheus监控等工具,拆解“设备状态监控→智能故障诊断→预测性维护”三大核心场景。从技术原理、算法构建、实操流程到完整代码实现,提供“数据采集→模型训练→智能调度→自动处置”的全链路方案。方案遵循工业安全规范,采用“只读优先、权限最小化”原则,适配中小制造企业落地需求。通过虚拟案例验证,可使设备非计划停机时间下降65%、平均修复时间缩短47%,既适合新手快速入门,也为进阶读者提供架构优化思路

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 606

2014西安现场赛I题 International Collegiate Routing Contest(字典树)

题意: 全域是CDIR的ipv4空间。 给若干个ip地址块,然后求他们的补。 思路: 容易想到使用二叉树来解决这个问题,相当一个补齐叶子的问题。缺掉的叶节点就是所求。 所以很自然的可以使用trie。最多30000个地址,每个最多32位,所以最多30000×32个节点。 注意:要标记地址的结束节点,在访问的时候遇到标记的节点必须返回。因为这种节点下面的子树都已经被覆盖了。 这道题,思路挺

slowlight93的专栏 1072

大模型知识边界探索:LLM设计的极限测试

最优化理论是数学中的一个分支,主要研究如何从给定的一组约束条件下找到最优解。目标函数:定义了需要优化的指标,可以是最大化或最小化。约束条件:定义了在优化过程中需要满足的限制条件。无约束优化:目标函数和约束条件都不存在。有约束优化:目标函数存在,但存在约束条件。多目标优化:同时需要优化多个目标函数。极限测试(Ultimate Test)是一种系统性的方法,用于评估大型模型(如LLM)在极端条件下的性能和稳定性。极端数据分布:与模型训练数据分布显著不同的数据集。极端计算资源。

AI天才研究院 432

科研必备:15款顶尖AI科研工具全面分析汇总(持续更新ing)

科研必备:15款AI科研工具全面分析汇总(持续更新ing)

Code_流苏:在代码中寻诗意,在实践中觅真知 9647

2014ACMICPC亚洲区域赛西安站总结

2014.10.25 我们都是第一次参加

CrazySona的专栏 1388

SAC-IA算法点云粗配准

SAC-IA(Sample Consensus Initial Alignment)是PCL库中的一种初始点云配准算法,它使用特征匹配和RANSAC(随机抽样一致性)框架来估计两个点云之间的初始刚性变换。其目标是通过特征描述符找到一组可靠的匹配点对,并使用这些点对估计初始对齐的变换矩阵。

twnkie的博客 1445

2014 ACM/ICPC Xi'an Regional I - International Collegiate Routing Contest

2014 ACM/ICPC Xi'an Regional I - International Collegiate Routing Contest - Trie Tree

1040

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【组合数学 容斥原理】ICPC2014西安 F. Color

https://vjudge.net/contest/265252#problem/F 给你n朵花,m种颜色,k  (1 ≤ n, m ≤ 10^9 , 1 ≤ k ≤ 10^6 , k ≤ n, m) 花是一排,要求相邻花染色不能相同,染色数量刚好等于k,问你染色的方案数 如果用&lt;=k种颜色,那么有k*(k-1)^(n-1)   *C(k,1)  种方案               ...

qq_41037114的博客 406

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

2014-ACM-ICPC-西安赛区区域赛-H. The Problem to Make You Happy-图上博弈论

#2014-ACM-ICPC-西安赛区区域赛-H. The Problem to Make You Happy-图上博弈论 【Description】 Alice and Bob are good friends, as in every other storyline. One day Alice and Bob are playing an interesting game. The game...

Simon的博客,已转移至 https://www.cnblogs.com/--Simon/ 589

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

2014 ACM-ICPC 西安站总结

ji'tian

A Cube Master 1298

2014ACM/ICPC亚洲区西安站现场赛 F color(转换角度+容斥)

这道题就是西安挂铁被卡的题。 从10.27吧到最近从新思考这道题,请教了几位巨巨,都是只扔下一个公式,问具体模型想法就一副不耐烦的样子,或者不着边际。唉 这道题真的不是那么简单(或许巨巨们做过类似的题目,模型记住了.....)。 题意:给定n,m,k 要求从m个颜色中选k个恰好涂满n个方格,要求相邻的颜色不能一样。 这道题刚开始想波利亚定理,但是很快被否定了,因为这个有位置因素。后来推公式

gg_gogoing的专栏 1521

2014 ACM/ICPC 西安区域赛小记

这两天情绪一直很low,写写blog发泄一下好了。。然后滚回去看书%>_ 人生中第一次参加Regional。。。然后打铁了。。这真是一个忧桑的故事。。TAT 还是因为自己练得太少,比赛前我刷了几场网络赛在我的智商承受范围内可以A的题还有多校的一些题,加上去年就没做出来的攒了一年的一些题。。。所以,对数论,数学题之类的我都不熟,靠我的智商,不熟的题当场想出来的概率趋近于0 == 所以这次比赛我深

TimeForMiracles 2089

2014ACM/ICPC亚洲区西安站 F题 color(容斥原理)

题目链接 题意: n朵花排成一行,我们有m种颜色,可以给这些花涂色,保证相邻的花的颜色不同 问,最后恰好使用了k种颜色的方案数。 Orz博主 题解 //(m,k)*sigma((-1)^(k-i)*(k,i)*i*(i-1)^(n-1)) #include&lt;bits/stdc++.h&gt; using namespace std; typedef long long int ll; con...

Pandauncle的博客 513

Gym - 100548I International Collegiate Routing Contest (01字典树)

  题意:给你多个子网掩码,要你求一个最小的子网掩码补集。   解题思路:IPV4一共有 2^32个地址,实际上对应的就是一个完全字典树。现在给定的子网掩码,实际上就是给定了一个字典树,然后要你求这个字典树的补树,使得是一个完全字典树。实际上就是求这个字典树的所有补树形成的森林。 那么我们只要深搜即可。然后记录下答案,然后还原下答案即可。   #include &lt;bits/...

LP_Cong 612

CF GYM 100548 Last Defence(2014ACM西安现场赛Problem K)

知识点: Ad-Hoc,辗转相除法。 题目大意: 给定数列S的首两项,要求之后的各项满足Si= |Si−1 − Si−2|(前两项差值的绝对值)。问整个数列S中不同的数字个数。 解题思路: 首先容易发现,当i足够大时,最后一定会出现“xx0xx0...”这样的重复。所以不同数字个数一定是有限的。 究其原因,对于数y和x,y一定能写成kx+b的形式,在数列的生成过程中,会出现kx+b、x、(k-1)x+b、(k-2)x+b、x、...、2x+b、x、x+b、b、x,其中出现的不同数字个数就是(kx+b)/

wujy的专栏 2353

CF GYM 100548 International Collegiate Routing Contest(2014ACM西安现场赛Problem I)

解题思路: 每个IP地址由32位二进制组成。整个地址空间可以表现为一棵二叉树(简化的Trie树),如下图所示: 图中表示的是以下4个子网的覆盖情况: 0.0.0.0/1 (二进制前1位是0) 32.0.0.0/3(二进制前3位是001) 128.0.0.0/2 (二进制前2位是10) 224.0.0.0/3 (二进制前3位是111) 图中的红色节点代表网络覆盖的终结点,这一网络号覆盖红色节点下的完整一支;黄色节点也是包含在这个网络中的, 题目要求的就是树上没有被输入集合覆盖的分支。不能与

wujy的专栏 3289

Problem I. International Collegiate Routing ContestGym - 100548I

题目意思是,说给予n个32位IP地址,每个地址的后面有一个K,每个K代表与当前所给的IP地址的前K位相同的话,就为同一IP地址,然后问你,最少再补充多少的IP地址使得能构成所有的IP地址。  思路:字典树的题目,对于每个32位的串,输入字典树中,如果当前K小于32那么就只导入到第K位,然后在当前节点做标记,建完树后,跑一遍DFS就可以了。 #include #include #includ

落风听雨 380

2014 ACM区域赛 西安赛区现场赛总结

真正的去参加区域赛现场赛了。。

youngkl博客 1220

UVALive 7043 International Collegiate Routing Contest(字典树)

题意: 输入IPv4地址空间中的一些子网号,构成一个网络集合。 输出个数最小的一个网络集合,要求其与输入集合没有交集,且相对IPv4地址空间全集,是输入集合的补集。 输出集合包含的子网号,格式遵循网络规范。 解析: 这题可以用Trie树来搞。 每个IP地址由32位二进制组成。整个地址空间可以表现为一棵二叉树。 以下4个子网的覆盖情况: 0.0.0.0/1 (

小G的ACM之路 1538
上一篇: hdu6200mustedge mustedge mustedge
下一篇: ACM 这一路走来
OneDay_pyf
博客等级 码龄10年 6粉丝 35原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值