Codeforces 20C Dijkstra?

Codeforces 图论板刷总结(更新中) 图论太菜了呀,那怎么办呀,刷点题吧,写下来可以以后复习,或者造福后人? 大概就从这开始刷吧:Link 题目对应简略思路+题解786B 区间图最段路741C 构造题 二分图567E 最短路DAG必经边527E 欧拉回路 786B 区间图最段路 没啥好说的,标准的区间图最短路,建议整理板子。我的板子:Link 741C 构造题 二分图 很容易被搞到2-sat上去,但是猜到一定有解的情况下, 构造出二分... 阅读详情

题意很简单,就是普通的求1到N 的最短路径,但是数据比较大,N<=100000,M<=100000,W<=1000000,最大程度可能为1e11。如果用简单的裸Dijsktra(o(n^2))必定超时,所以要用堆优化。这里我也是复习了一下二叉堆的一些知识。

http://www.nocow.cn/index.php/Dijkstra%E7%AE%97%E6%B3%95可以到这个网站上学习一下

#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <cstring>
using namespace std;
const int MAXE=200010;
const int MAXN=100005;
const __int64 INF=1000000000000;
struct node
{
	node *next;
	int to,w;
}edge[MAXE];
struct HeapElement
{
	int key;
	__int64 value;
};
struct MinHeap
{
	HeapElement H[MAXN];
	int size;
	int Position[MAXN];
	void init(){H[size=0].value=-INF;}
	void ins(int key,__int64 value)
	{
		int i,f;
		HeapElement p={key,value};
		for (i=++size;p.value<H[f=i>>1].value;i=f)
		{
			H[i]=H[f];
			Position[H[i].key]=i;
		}
		H[i]=p;
		Position[H[i].key]=i;
	}
	void decrease(int key,__int64 value)
	{
		int i,f;
		HeapElement p={key,value};
		for (i=Position[key];p.value<H[f=i>>1].value;i=f)
		{
			H[i]=H[f];
			Position[H[i].key]=i;
		}
		H[i]=p;
		Position[H[i].key]=i;
	}
	void delmin()
	{
		int i,c;
		HeapElement p=H[size--];
		for (i=1;(c=i<<1)<=size;i=c)
		{
			if (c+1<=size && H[c+1].value<H[c].value)
				c++;
			if (H[c].value<p.value)
			{
				H[i]=H[c];
				Position[H[i].key]=i;
			}
			else
				break;
		}
		H[i]=p;
		Position[H[i].key]=i;
	}
}H;
int n,m,sume,pre[MAXN],ans[MAXN];
__int64 dis[MAXN];
node *head[MAXN];
inline void addedge(int a,int b,int c)
{
	edge[++sume].next=head[a];
	edge[sume].to=b;edge[sume].w=c;
	head[a]=&edge[sume];
}
void init()
{
    int a,b,d;
    sume=-1;
    memset(head,NULL,sizeof(head));
    scanf("%d%d",&n,&m);
    while(m--)
    {
        scanf("%d%d%d",&a,&b,&d);
        addedge(a,b,d);
        addedge(b,a,d);
    }
}
void Dijkstra(int start)
{
	int i,j;
	dis[start]=0;
	H.decrease(start,0);
	for (i=start;;)
	{
		H.delmin();
		for (node *k=head[i];k!=NULL;k=k->next)
		{
			if (dis[i]+k->w<dis[j=k->to])
			{
				dis[j]=dis[i]+k->w;
				H.decrease(j,dis[j]);
				pre[j]=i;
			}
		}
		if (H.size)
			i=H.H[1].key;
		else
			break;
	}
}
void solve()
{
	    int i,j;
		H.init();
		for (j=1;j<=n;j++)
		{
			H.ins(j,INF);
			dis[j]=INF;
			pre[j]=1;
		}
		Dijkstra(1);
		if(dis[n]<INF)
		{
		    int x=n;
		    int p=0;
		    do
		    {
		        ans[p++]=x;
		        x=pre[x];
		    }while(x!=1);
		    printf("1");
		    for(i=p-1;i>=0;i--)
		    printf(" %d",ans[i]);
		    printf("\n");
		}
		else puts("-1");
}
int main()
{
	init();
	solve();
	return 0;
}


手把手教你解决LLaVA部署中flash-attn的CUDA版本报错(实测conda安装cuda-nvcc方案) 本文详细解析了多模态大模型LLaVA部署中常见的CUDA版本与flash-attn安装冲突问题,并提供了一个经50+次验证的可靠解决方案——在conda虚拟环境中安装cuda-nvcc。通过环境隔离和版本匹配,该方案成功率达到98.7%,显著提升部署效率和模型性能。 阅读详情

相关推荐

Qwen3-TTS本地部署实战:Windows下零基础跑通中文TTS

文本转语音(TTS)是人机交互的基础技术,其核心原理在于将输入文本经编码、声学建模与声码合成三阶段转化为可听音频。随着大模型轻量化与扩散模型兴起,本地化、低延迟、高可控的TTS系统正成为AI工程落地的关键能力。Qwen3-TTS作为支持Transformer文本编码、扩散声学建模与HiFi-GAN声码器的开源方案,显著降低了消费级GPU(如RTX 3050)上的部署门槛。它不依赖云端API,允许开发者调试中间特征(如梅尔频谱、音素对齐),并适配中文分词、CUDA显存优化、Windows环境兼容等真实场景需求

weixin_33778544的博客 373

Windows 环境下 flash_attn 的安装与常见问题解决指南

本文详细介绍了在Windows环境下安装flash_attn的完整流程及常见问题解决方案。从环境准备、CUDA Toolkit安装到PyTorch版本匹配,逐步指导用户完成配置,并提供验证与排错技巧,帮助开发者高效部署Transformer模型加速组件。

weixin_29292431的博客 412

window11使用wsl2安装Ubuntu22.04及conda、cuda等

了解使用适用于Linux的Windows子系统(WSL)时访问网络应用程序的注意事项。适用于Linux的Windows子系统(WSL)中基本命令的参考。使用WSL访问网络应用程序|MicrosoftLearn。wsl2docker、cudatoolkit等安装。WSL的基本命令|MicrosoftLearn。子系统linux使用window网络代理、网络配置。wsl2Ubuntuminiconda安装。windows与子系统Linux文件访问。

鲨鱼儿的博客 7726

CodeForces 20C Dijkstra? (最短路)

题目类型  简单题 题目意思 给你一个一元二次方程 A*x*x + B*x + c = 0, 求解的数量 解题方法 1.无穷个解的情况 -> A == 0 && B == 0 && C == 0 2.一个解的情况   -> (A == 0 && B != 0) 或 (A != 0 && B*B - 4 * A * C == 0) 3.两个解的情况  

yunyouxi0's blog 1403

2025 Windows 11本地部署Stable Diffusion 3.5完整指南

Stable Diffusion 是当前主流的开源文本到图像生成模型,其本地部署能力直接关系到数据隐私、推理可控性与商业落地稳定性。随着SD 3.5发布,其基于多模态联合建模的Transformer架构显著提升计算密度,对CUDA运行时、Windows驱动模型与GPU显存管理提出全新要求。相比云端API,本地部署可规避网络延迟、按量计费与内容外泄风险,尤其适合设计师、AIGC工作室等需高频、批量、定制化出图的场景。本指南聚焦Windows 11 23H2系统下SD 3.5与ComfyUI的生产级部署,覆盖C

weixin_30617695的博客 304

PAI一键部署Qwen3.8-Flash-Next与GLM-5.3实战指南

大语言模型(LLM)推理部署正从手动调参走向工程化闭环。理解模型部署的本质,需先把握其核心原理:基于vLLM等推理引擎的KV缓存管理、量化适配与硬件感知调度。技术价值在于将显存优化、Tokenizer一致性、FlashAttention内核适配等复杂决策预置为可复现能力,显著提升吞吐量并降低延迟波动。典型应用场景包括金融合同结构化提取、法律文书长上下文分析及多模型协同推理。本文聚焦PAI平台如何通过模型资产元数据治理、定制化推理引擎(如Qwen3.8-Flash-Next专用kernel)和GPU拓扑感知调

weixin_34367257的博客 265

CodeForces-20C Dijkstra? (最短路-Dijkstra堆优化版)

题目链接 题意:给出n个点,m条边,求1到n的最短距离的路径. 题解:,大数据,不可使用Dijkstra邻接矩阵和邻接表,都卡空间和时间,直接上堆优化的最短路模板即可~ 代码如下: #include&lt;iostream&gt; #include&lt;cstring&gt; #include&lt;string&gt; #include&lt;cstdio&gt; #include&...

Fushicho_XF的博客 917

vLLM 0.19.1 深度适配 Qwen3.5 推理部署指南

大语言模型推理框架 vLLM 是当前主流的高性能服务化方案,其核心原理基于 PagedAttention 内存管理与连续批处理(continuous batching)技术,显著提升 GPU 利用率与吞吐量。在实际工程落地中,版本兼容性、CUDA 工具链对齐、Tokenizer 行为差异及模型配置参数等细节常导致服务启动失败或长尾延迟。本文聚焦 vLLM 0.19.1 与通义千问 Qwen3.5 系列模型的生产级适配,详解 Flash Attention 2.6.3 编译适配、rope_theta 数值对齐

weixin_30896511的博客 440

codeforces 20C

在每次更新dist数组的时候都会有其对应的点, 将每个点的最优选择存为to数组中。我们可以知道终点肯定是n, 用v数组存储答案, 倒序打印v数组即可。最后to数组中的值的含义是: 值的点来到to数组下标点为最近路线。这题就是堆优化最短路的板子啦, 从y总那抄来的代码改改就能用。这个神奇的操作, 请自行理解。

Tanya_xiaomai的博客 388

Qwen3-Coder-30B-A3B本地部署:纯Python实现的Claude Code替代方案

大语言模型(LLM)本地化推理是当前AI工程落地的核心路径之一,其本质是将模型加载、tokenization、KV缓存管理与生成逻辑完整暴露在可控代码中。相比Ollama等黑盒封装,纯Python方案依托Transformers+Accelerate+vLLM技术栈,提供可调试、可定制、可教学的推理流程,显著提升开发透明度与隐私安全性。该方案特别适配代码生成任务,在中文支持、显存优化与VSCode集成方面表现突出,已成为企业内网、高校实验室及隐私敏感场景下的主流选择。本文聚焦Qwen3-Coder-30B-

weixin_30245867的博客 667

vLLM Windows 11 原生运行指南:告别WSL与Docker

大语言模型推理框架 vLLM 是面向高性能、低延迟场景的开源服务引擎,其核心依赖 CUDA 加速、GPU 显存管理与原生系统兼容性。随着 vLLM v0.20.0 正式移除实验性标签,Windows 11 已成为首个获得官方原生支持的桌面操作系统——不再需要 WSL2 的 Linux 兼容层,也不再依赖 Docker 容器隔离。这一转变基于 NVIDIA CUDA 12.2+ 对 Windows ABI 的深度加固,以及 PyTorch 静态链接机制的成熟落地,使 vLLM 可直调 cudart64_121

aodan5477的博客 481

【每日一题】codeforces 20C(1900)(最短路之Dijkstra算法)

想她一次就背十个单词,当我英语过六级后,我就去告诉她,我很在意她 每日一题,坚持使我快乐 今日份快乐:codeforces 20C 传送门 明天份快乐:codeforces 20C 传送门 题目大意 给出一个无向图,有 n 个节点,m 条边,第 i 条边的长度为wi 问:从 1 到 n 号的最短距离 分析 这是一个赤裸裸的最短路的题 ...

mldl_的博客 705

ComfyUI节点安装笔记

AI高速发展,版本更新相当快(11月25日才安装的版本v.0.3.4,27日版本就已经更新到v.0.3.5了),在遇到问题,找到问题原因所在的过程中,ComfyUI版本、python版本、节点对环境版本的依赖,本文就是在为了解决自己遇到问题过程中,如何快速安装ComfyUI及节点而作的笔记。

zslefour的专栏 1万+

Flash Attention安装全指南:CUDA、PyTorch与GPU架构三重校验

Flash Attention是一种基于分块重计算的高效注意力机制,通过优化显存访问模式将注意力计算复杂度从O(N²)降至O(N√N),广泛应用于大模型训练加速。其核心价值在于显著降低显存占用并提升吞吐性能,但因依赖CUDA内核现场编译,对GPU计算能力(Compute Capability)、CUDA Toolkit版本及PyTorch构建ABI三者严格耦合。常见报错如'no kernel image is available'或'undefined symbol',本质是SM架构不匹配、nvcc编译目标

congsong2560的博客 354

16G显存跑35B大模型:GGUF+llama.cpp+A3B协同原理与实操

大语言模型推理正从云端向本地下沉,而‘低显存运行大模型’已成为开发者和内容创作者的核心诉求。其技术本质是内存调度协议(如GGUF)、轻量化架构(如A3B)与裸金属推理引擎(如llama.cpp)三者深度协同的结果:GGUF通过分块映射与mmap机制实现显存按需加载;A3B架构支持自适应注意力剪枝与分层量化,在精度损失<0.8%前提下降低KV Cache压力;llama.cpp则绕过Python与框架开销,直控CUDA Runtime达成98%+ GPU利用率。该方案已广泛应用于Windows本地AI工作流、

cunfuxiao7305的博客 740

高分7(GF7)卫星数据制作平原地区DSM/DEM(三)——可信度分割

李国春(接上)

副组长的博客 1714

RTX 3090定制编译Flash Attention优化Stable Diffusion显存与速度

Transformer架构中的注意力机制是深度学习模型的核心组件,其计算效率直接影响模型性能。Flash Attention通过优化内存访问模式和计算流程,显著降低显存占用并提升计算速度,特别适用于生成式AI任务。在AI绘画领域,Stable Diffusion等模型依赖高效的注意力机制实现高分辨率图像生成。针对NVIDIA RTX 3090显卡(sm_86架构)的定制化编译能进一步释放硬件潜力,实测可降低18%显存占用并提升22%迭代速度。本文详细解析从环境配置到源码修改的完整编译流程,包含Windows

cqwf95925的博客 391

Tessent ICL语法详解:如何高效定义SIB、TDR和TAP模块

本文深入解析Tessent ICL语法,指导如何高效定义SIB、TDR和TAP模块以构建芯片测试网络。通过实战代码示例,详细阐述了各模块的端口声明、接口角色与核心寄存器定义,并提供了顶层集成连接方法与调试技巧,帮助DFT工程师精准描述测试仪器拓扑,提升Tessent工具链使用效率。

silver的专栏 492

Qwen3.5-Flash:35B模型实现235B级推理性能的工程实践

大语言模型推理优化是当前AI工程落地的核心瓶颈,其本质在于计算效率、显存带宽与调度策略的协同突破。基于Transformer架构的模型普遍存在GPU利用率低、KV Cache开销大、算子调用碎片化等问题,导致高参数量模型难以在边缘或低成本云环境部署。Qwen3.5-Flash通过结构重排、算子融合、内存压缩和动态分块调度四大关键技术,在保持35B参数量不变的前提下,显著提升吞吐量、降低首token延迟并压缩42%显存占用——这正是‘推理加速范式’与‘Flash Attention’深度结合的典型实践。该方案

weixin_33704234的博客 565

AUTO-DL平台快速部署BEVFormer:Nuscenes数据集完整训练避坑指南

本文详细介绍了在AUTO-DL平台高效部署BEVFormer模型并利用Nuscenes数据集进行完整训练的实战指南。重点解析了平台数据管理、环境配置、数据集迁移解压、预处理及训练启动等全流程中的关键步骤与常见避坑技巧,帮助研究者和工程师快速复现这一前沿视觉感知模型,节省云端训练时间与成本。

weixin_29188043的博客 332

FDTD材料nk值拟合优化指南:利用材料资源管理器提升光学模型精度

本文详细介绍了如何利用FDTD仿真软件中的材料资源管理器,对材料nk值进行精确拟合与优化,从而提升光学模型的仿真精度。文章通过实战案例,解析了拟合参数调整、报告解读以及针对varFDTD求解器的特殊注意事项,帮助用户从根本上解决仿真结果不准的常见问题。

weixin_29196891的博客 353

Windows原生部署vLLM推理引擎实战指南

大模型推理引擎vLLM作为当前最先进的LLM服务框架,其核心优势在于高效的内存管理和并行计算能力。基于PagedAttention技术,vLLM通过分块KV缓存机制显著提升显存利用率,在NVIDIA CUDA生态中展现出卓越的推理性能。在金融、政务等对系统安全性要求严格的场景下,Windows原生部署方案相比WSL具有更低的性能损耗和更好的驱动兼容性。本文以Qwen-7B模型为例,详细解析在Windows Server环境下的vLLM编译部署全流程,包括CUDA环境配置、Tensor并行优化、FlashAt

weixin_30947043的博客 327

反应动力学仿真软件:Kintecus_(4).用户界面及操作指南

在 Kintecus 中,反应方程的定义非常灵活。您可以定义简单的一阶反应、复杂的多步反应以及不同类型的反应机制。

kkchenjj的博客 1183
上一篇: POJ 1201 Intervals (差分约束)
下一篇: Codeforces 11D A Simple Task (状态压缩DP)
BehappyXiang
博客等级 码龄14年 11粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值