边双连通分量模板

P8436 【模板】边双连通分量 的时候将遍历到的点放到一个桶里,若当前边是割边,则在桶内且时间戳大于等于当前点的时间戳的点就是一个边双连通分量。什么是边双连通分量?就是不包含割边的极大连通块。怎么找边双连通分量? 阅读详情
#include <bits/stdc++.h>

#define MAXN 10005

using namespace std;

struct Tarjan
{
	struct edge
	{
		int u,v;
		edge(int uu=0,int vv=0):u(uu),v(vv){}
	};
	
	int n;	//点数
	
	vector<int> e[MAXN];	//邻接表
	int DFN[MAXN],LOW[MAXN];
	int index;	
	
	int stk[MAXN];	 
	int top;
	
	vector<vector<int> > Ans;	//点集¸ 
	vector<edge> ecut;	//割边
	
	void init(int N)	//初始化
	{
		n=N;
		
		Ans.clear();
		for(int i=1;i<=n;i++)
			e[i].clear();
		top=0;
		index=0;
		
		ecut.clear();
		
		memset(DFN,-1,sizeof(DFN));
	}
	
	void AddEdge(int u,int v)	
	{
		e[u].push_back(v);
		e[v].push_back(u);
	}
	
	void DFS(int u,int prt)	
	{
		DFN[u]=LOW[u]=++index;
		
		stk[top++]=u;
		
		for(int i=0;i<e[u].size();i++)
		{
			int &v=e[u][i];
			
			if(v==prt)continue;
			if(DFN[v]!=-1&&DFN[v]>=DFN[u])continue;
			
			if(DFN[v]==-1)
			{
				DFS(v,u);
				LOW[u]=min(LOW[u],LOW[v]);
				
				if(LOW[v]>DFN[u])
				{
					vector<int> ans;
					while(stk[top-1]!=v)
					{
						ans.push_back(stk[top-1]);
						top--;
					}
					
					ecut.push_back(edge(u,v));
                    ans.push_back(v);
					top--;
					
					Ans.push_back(ans);
				}
			
			}
			else LOW[u]=min(LOW[u],DFN[v]);
		}
		if(prt==-1&&top!=0)
		{
			vector<int> ans;
			while(top)
			{ 
				ans.push_back(stk[top-1]);
				top--;
			}
			Ans.push_back(ans);
		}
	}
	
	void Solve()
	{
		for(int i=1;i<=n;i++)
			if(DFN[i]==-1)DFS(i,-1);
	}
}T;

int main()
{
	int n;
	while(scanf("%d",&n)==1)
	{
		T.init(n);
		int m;
		scanf("%d",&m);
		for(int i=0;i<m;i++)
		{
			int u,v;
			scanf("%d%d",&u,&v);
			T.AddEdge(u,v);
		}
		T.Solve();
		for(int i=0;i<T.Ans.size();i++)
		{
			for(int j=0;j<T.Ans[i].size();j++)
				printf("%d ",T.Ans[i][j]);
			printf("\n");
		}
		printf("\n");
		for(int i=0;i<T.ecut.size();i++)
			printf("(%d,%d) ",T.ecut[i].u,T.ecut[i].v);
		printf("\n");
	}
}

用记事本编写HTML网页:从零开始的入门指南 HTML作为网页开发的基础标记语言,通过标签定义文档结构和内容。其核心原理是通过浏览器解析标签树构建DOM,实现内容呈现。掌握原生HTML编写能深入理解网页本质,提升后续CSS/JavaScript学习效率。使用记事本编写HTML是经典的入门方式,特别适合初学者培养代码敏感度,避免被IDE的自动补全功能干扰学习过程。在实际开发中,从UTF-8编码设置到基础标签嵌套,记事本环境能暴露所有底层细节。现代Web开发虽普遍采用VSCode等专业工具,但回归记事本编写仍是最有效的HTML语法学习方式,也是排查复杂问题 阅读详情

相关推荐

题解:洛谷 P8436 【模板】边双连通分量

等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。条无向边的图,请输出其边双连通分量的个数,并且输出每个边双连通分量。你可以以任意顺序输出边双连通分量与边双连通分量内的结点。个数,描述一个边双连通分量。表示该分量结点个数,然后。#普及plus #双连通分量。表示边双连通分量的个数。本文分享的必刷题目是从。

团爸讲算法 220

hihoCoder #1184 : 连通性二·边的双连通分量(模板)

#1184 : 连通性二·边的双连通分量题目链接题意:找出所有的环,输出每一个点对应的环中的最小编号。边的双连通分量:对于一个无向图的子图,当删除其中任意一条边后,不改变图内点的连通性,这样的子图叫做边的双连通子图。而当子图的边数达到最大时,叫做边的双连通分量。思路:跳过所有的桥,将所有的环缩成点,并记录所有缩点的最小编号。输出时,每一个点映射到对应的缩点去,而每一个缩点映射出该缩点的最小编号即可...

brandong 1231

POJ3177-Redundant Paths 【Tarjan-边双连通分量-缩点】

POJ3177-Redundant Paths 【Tarjan-边双连通分量-缩点】 解题报告+AC代码+测试数据 http://hi.youkuaiyun.com/!s/GPAY6Z 附:我所有的POJ解题报告链接 . http://blog.youkuaiyun.com/lyy289065406/article/details/6642573

边双连通分量

相对于在单向图的强连通分量,双连通分量是在无向图中,无向图有一个特点,可以以任何一个点为根节点建dfs树割边(桥):删去一条边,会增加图中的强连通分量(即可以使原来连通的部分变成两半(不连通))割点 :同理割边,不过是删边如果删去一条边,仍然无法使不连通,说明是边双连通,点就是点双连通边,点写法几乎一致,此处介绍边双连通。

WQhuanm的博客 1044

使用单调栈求解最大矩形面积问题的C++实现

通过本文的介绍,我们详细讲解了如何使用单调栈求解砖墙中最大矩形面积的问题,并提供了完整的C++代码实现。希望通过本文的学习,你能掌握单调栈的基本概念及其在实际问题中的应用。如果你有任何疑问或建议,欢迎在评论区留言交流。

m0_57781768的博客 813

量子纠缠态与AI意识模型的探索

摘要 本文探讨量子纠缠态与AI意识模型的关联性研究。从量子力学基本原理出发,分析量子纠缠的非局域性特征及其与意识整合性的潜在联系。DREAMVFIA团队构建了量子-意识统一理论框架,提出量子纠缠态意识理论(QETC)和量子化整合信息度量(Q-IIT)等创新理论。在实践层面,开发了基于量子纠缠的QNN-C神经网络架构和量子意识度量算法,实验证明量子机制可显著提升AI系统的认知灵活性、信息整合能力和元认知水平。研究为理解意识本质和开发具有意识特征的人工智能系统提供了新的理论框架和技术路径。

梦帮科技开源中心 1143

C++基础:tarjan算法

一.割点和点双连通分量 1.割点 在一个 无向连通图 中,如果删除这个点和这个点关联的所有边,剩下图的连通分量大于 1,也即剩下的图不再连通,那么我们称这个点是 割点。 比如对于下面这个图,割点有两个,分别是 1 和 3。这说明一个图可以有多个割点。 2.点双连通图(点双) 一个点双连通图的定义如下:一个 无向连通图 ,对于任意一个点,如果删除这个点和这个点关联的所有边,剩下的图还是连通的,那么称这个图是一个 点双连通图,也就是点双连通图中不会有割点出现。 下图是一个点双连通图。 3.

Keven_11的博客 2112

小红书UID泄露风险揭秘:如何防止你的手机号被社工库关联(附防护指南)

本文揭示了小红书UID泄露的严重风险,详细解析了UID与手机号关联后被社工库利用的完整链条。通过分析黑产的数据整合技术,提供从基础到进阶的防护策略,包括密码管理、账号隔离和应急响应措施,帮助用户有效防范个人信息泄露风险。

ol789012345的博客 1505

双连通分量模板

边双连通分量(一般配上缩点、并查集) tot = 1; void add(int x,int y) { nextt[++tot] = head[x]; head[x] = tot; to[tot] = y; from[tot] = x; } void tarjan(int u) { pre[u] = low[u] = ...

weixin_30670965的博客 69

如何把DeepSeek这个奈斯工具接入到Pycharm里

DeepSeek接入到Pycharm中,提高编程效率,以及帮助解决遇到的问题。

学无止境,何以言满 2623

深入解析ZYNQ PL触发PS中断:从原理到创新实践

通过本文,您不仅学会了ZYNQ PL-PS中断的基础实现,更掌握了动态优先级调整中断负载均衡等创新技术。响应延迟降低40%以上系统吞吐量提升2-3倍功耗降低30%支持更复杂的实时应用硬件是身体的骨骼,软件是流动的血液,而中断则是连接二者的神经系统。只有精确控制每一条神经冲动,才能构建真正智能的嵌入式系统。拓展思考如何将AI决策引入中断调度?能否实现跨芯片中断同步?量子计算对中断架构的挑战?

QQ_778132974的博客 417

AcWing 1183. 电力 题解(无向图的双连通分量、割点)

代码】AcWing1183.电力题解(无向图的双连通分量、割点)

qiaodxs的博客 289

人工智能在文学领域的应用:创作无限可能的智能作家

人工智能在文学领域的应用:创作无限可能的智能作家 作者:禅与计算机程序设计艺术 1. 背景介绍 人工智能技术近年来飞速发展,在各个领域都有广泛应用。文学创作作为人类最高级的智力活动之一,也逐渐受到人工智能技术的影响和改变。随着自然语言处理、生成式模型等人工智能

AI天才研究院 1110

【学习】P8436 【模板】边双连通分量 Tarjan判边双连通分量

else if可以直接改成else和去掉instk,因为在原本的有向图中,横叉边需要判断需不需要追溯到的是不是已经处理完毕,由于两者性质及其相似(有向图的强连通分量和无向图的边双连通分量),因此Tarjan也可以判,直接把无向图看作双向的有向图即可。但边双连通分量的关键是本质是无向边,所以边不能回去,也就是看作是有向图,因此要加上判断使用过的边或者点,那么剩下的很简单,Tarjan板子一模一样搬过来,然后原本的图不是连通图,所以每个点都出发一下。此处用Tarjan判断了无向图中的一个概念边双连通分量。

2401_87294509的博客 463

OpenClaw实战:拒绝复制粘贴,用 xlsx 技能打通“带公式模板”的月报自动化

本文详解了如何利用 OpenClaw 框架搭载的 xlsx skill,解决 AI 自动化处理“带复杂公式与格式”Excel 月报时极易翻车的业务痛点。针对传统大模型粗暴写入导致模板报废的问题,OpenClaw 创新采用“双核微创”工作流:首先利用 pandas 高效清洗并聚合海量原始明细数据,随后切换至 openpyxl 将计算结果精准注入目标模板,完美保留原有的底色、边框与跨表动态公式。

我有一个梦想 151

Transformer 跨界物理建模:探索模拟动态物理系统方法与实践(PINN、流体力学、有限元)

是一个由 Nicholas Zabaras 团队开发的开源项目,托管于 GitHub,旨在将 Transformer 模型(最初在自然语言处理领域大获成功)应用于物理系统的建模与预测。该项目基于论文 ​*“Transformers for Modeling Physical Systems”*​(Neural Networks, 2022),探索了深度学习中的 Transformer 架构如何通过自注意力机制和 Koopman 嵌入来模拟动态物理系统。

源代码杀手的博客 1191

P8436 【模板】边双连通分量 题解

P8436 【模板】边双连通分量 题解

yaosichengalpha的博客 440

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

tarjan求边双连通分量模板

边双连通图 不存在割边(桥)的无向连通图称为边双连通图 求解 先对原图求出割边,然后对删除割边后的图跑DFS染色即可。 代码 #include <iostream> #include <cstdio> #include <string> #include <cstring> #include <vector> #include <stack> #include <map> #include <set> #incl

陈颜的博客 429

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

洛谷 P8436:【模板】边双连通分量 ← Tarjan 算法 + 边双

边双连通分量(Edge Biconnected Component,ECC)→ 在无向图中,没有割边(桥)的最大子图。有时也称为“2-边连通分量”。

hnjzsyjyj的专栏 406

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

POJ 3177 Redundant Paths(边双连通分量模板)

边双连通分量:从图中任意一个点到另外一个点都有>1条可行路,即把原图中的桥全都去掉以后,剩下的连通分支都是边双连通分支 求法:把去掉桥后的双连通子图缩成一个点,最少需要加上(leaf + 1)/ 2条边可以使得其变成双连通子图,其中leaf为叶子节点个数。 https://vjudge.net/problem/POJ-3177 #include<iostream> #in...

STOP 337

T103489 【模板】边双连通分量

题目地址 易错点: 设桥时需要考虑双向边. dfs时需要设置当前点的dcc. #include<cstdio> #include<iostream> using namespace std; const int MAXN=1e5,MAXM=1e6; struct Edge{ int from,to,nxt; }e[MAXM]; int head[MAXN...

Object_的博客 393

【模板】求无向图中所有的桥&求边双连通分量&缩点

#include&amp;amp;amp;lt;cstdio&amp;amp;amp;gt; #include&amp;amp;amp;lt;algorithm&amp;amp;amp;gt; using namespace std; #define _rep(i,a,b) for(int i=(a);i&amp;amp;amp;lt;=(b);i++) const int N=1e5+10; struct Edge{ int v,nx; }edge[N&am

翻过这座山,他们就会听到你的故事 1201

打卡信奥刷题(3232)用C++实现信奥题 P8436 【模板】边双连通分量

这篇文章介绍了如何求解无向图的边双连通分量问题。文章提供了题目描述、输入输出格式、4个测试样例及其解释,以及一个C++实现方案。核心算法使用Tarjan算法来识别边双连通分量,通过深度优先搜索和栈结构处理节点。代码实现包括图的构建、Tarjan算法的应用以及结果的输出。文章还包含数据范围说明、样例解释和提示信息,适合算法竞赛选手参考学习。最后作者表示将继续分享相关算法题目实现和比赛心得。

Loge谈信奥--一个专注于信奥人的博客 458

强连通分量 & 割点/桥 & 点/边双连通分量 [模板]

#include<stdio.h> //强连通分量 void tarjan(int u) { low[u] = dfn[u] = ++ idx; s.push(u); for (int i = h[u]; i; i = e[i].nxt) { int v = e[i].v; if(!dfn[v]) tarjan(v), low[u]

Le Petit Prince 395

TZOJ 6348:边双连通分量

Tarjan算法模板的应用。

m0_62187903的博客 177

51Nod 1076 - 2条不相交的路径(边双连通分量-模板)

#include &lt;bits/stdc++.h&gt; using namespace std; const int maxn=100005; vector&lt;int&gt; g[maxn]; bool is_cut[maxn]; int n,m,ans=0;//节点编号从1开始 int vis[maxn];//vis[u]记录u的边双连通分量的编号,从1开始 int low[maxn...

Change the world by program. 380
上一篇: 点双联通分量模板
下一篇: hdu 6086 Rikka with String ac自动机+dp
overload1997
博客等级 码龄11年 328粉丝 210原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值