P1231 教辅的组成-(网络流最大流)

P2891 P1402 P1231 【模板】三分图匹配 题解 这三题简直一模一样: P1402 酒店之王 P1231 教辅的组成 P2891 [USACO07OPEN]吃饭Dining 网络流-最大流-最大匹配 感觉就是三分图匹配(雾 注意,三分图中间的那一层需要拆点,不然一个点可能被访问多次 代码: P2891 [USACO07OPEN]吃饭Dining #include<cstdio> #include<iostream> #in... 阅读详情
题目链接:点击进入
思路

源点->练习册->书(拆点)->答案->汇点
(连边容量都为 1 ,同时书要拆点,如果不拆点,书会被用很多次,但是因为一本书只能用一次,所以可以通过拆点来避免这个问题。)
剩下的就是跑 dinic 了
想看图请点击进入

代码
#include<cstdio>
#include<algorithm>
#include<queue>
#include<iostream>
#include<cstring>
using namespace std;
typedef long long ll;
const int maxn=1e6+10;
struct node
{
    int to;
	int next;
	ll val;
}edge[maxn];
int head[maxn],tot;
void add(int u,int v,int val)
{
    edge[tot].to=v;
	edge[tot].val=val;
    edge[tot].next=head[u];
	head[u]=tot++;
}
int deep[maxn];
int cur[maxn];
int n1,n2,n3,m1,m2,x,y;
ll res;
int s;
int t;
int dfs(int pos,int flow)
{
    if(pos==t) return flow;
    int rest=flow,k,i;
    for(i=cur[pos];i!=-1&&rest;i=edge[i].next)
    {
    	int v=edge[i].to;
        int val=edge[i].val;
        if(deep[v]==deep[pos]+1&&val)
        {
            k=dfs(v,min(val,rest));
            if(!k) deep[v]=0;
            edge[i].val-=k;
            edge[i^1].val+=k;
            rest-=k; 
        }
	}
	cur[pos]=i;
    return flow-rest;
}
bool bfs()
{
	memset(deep,0,sizeof(deep));
    deep[s]=1;
    queue<int>q; 
    q.push(s);
    cur[s]=head[s];
    while(q.size())
    {
        int now=q.front();
		q.pop();
		for(int i=head[now];i!=-1;i=edge[i].next)
		{
			int v=edge[i].to;
            if(edge[i].val&&!deep[v])
            {
            	q.push(v);
            	cur[v]=head[v];
                deep[v]=deep[now]+1;
				if(v==t) return 1;
            }
		}
    }
    return 0;
}
void dinic()
{
	while(bfs())
        res+=dfs(s,0x3f3f3f3f);
}
int main()
{
	ios::sync_with_stdio(false);
	memset(head,-1,sizeof(head));
	cin>>n1>>n2>>n3;
	s=2*n1+n2+n3+1,t=2*n1+n2+n3+2;
	for(int i=1;i<=n2;i++)
	{
		add(s,i,1);
		add(i,s,0);
	}
	for(int i=n2+2*n1+1;i<=n2+2*n1+n3;i++)
	{
		add(i,t,1);
		add(t,i,0);
	}
	cin>>m1;
	for(int i=1;i<=m1;i++)
	{
		cin>>x>>y;
		add(y,x+n2,1);
		add(x+n2,y,0);
	}
	cin>>m2;
	for(int i=1;i<=m2;i++)
	{
		cin>>x>>y;
		add(x+n2+n1,y+n2+2*n1,1);
		add(y+n2+2*n1,x+n2+n1,0);
	}
	for(int i=1;i<=n1;i++)
	{
		add(i+n2,i+n2+n1,1);
		add(i+n2+n1,i+n2,0);
	}
    dinic();
    printf("%lld\n",res);
	return 0;
}
图论-网络流④-最大流解题① 图论-网络流④-最大流③ 上一篇:图论-网络流③-最大流② 下一篇:未完待续 参考文献: https://www.cnblogs.com/DuskOB/p/11216861.html https://blog.youkuaiyun.com/yjr3426619/article/details/82808303 https://blog.youkuaiyun.com/lym940928/article/details/... 阅读详情

相关推荐

Ubuntu20.04下运行VINS系列:VINS-Mono、VINS-Fusion和GVINS

安装好了VINS-Mono所需的ROS noetic、Eigen3.4.0、Ceres2.10和OpenCV4.2.0等。VINS-Mono是在ROS melodic以及Ceres1的环境下开发的,因此需要适配高版本的环境。

zardforever123的博客 2万+

P1402 酒店之王(网络流拆点建图)

#include<bits/stdc++.h> using namespace std; const int N = 1100; const int inf = 0x3f3f3f3f; int n,p,q,S,T,tot; int en=1,head[N],h[N],Q[N]; struct edge{ int to,v,next; }e[N*10]; inline void i...

qq_42129242的博客 168

YOLOV8主干改进方法:C2f-Dual——DualConv轻量化双卷积设计(附改进代码)

DualConv是一种创新的卷积网络结构,旨在构建轻量级的深度神经网络。它通过结合3×3和1×1的卷积核处理相同的输入特征映射通道,优化了信息处理和特征提取。DualConv利用组卷积技术高效排列卷积滤波器,大大降低了计算成本和参数数量。

m0_74890428的博客 4698

洛谷 P1402 酒店之王 网络流 二分图变形 最大流 FF算法

题目链接: https://www.luogu.com.cn/problem/P1402 参考博客: https://www.luogu.com.cn/blog/lhc/solution-p1402 算法:1:最大流FF算法 思路: 1:我们以房间、菜、人为点建图, 像这样:注意,以下出现的所有边边权皆为1,且其反向边边权为0 2:S(=0)表示额外建的一个起始点,Ri(=...

aiwo1376301646的博客 326

【软碟通 | UltraISO】刻录光盘教程(制作U盘启动盘)

前言 今天老师说办公室的电脑有点卡,让我给重新安装一个 Windows 7 系统。于是就用软碟通(UltraISO)在 U 盘上刻录了一个 Windows 7 镜像,然后给老师重装了系统。顺便把制作 U 盘启动盘的教程也分享给大家。 软件 UltraISO v9.7.1.3519:点击跳转(密码:dd2k) 教程 将 U 盘插到电脑上,然后鼠标右击选择格式化(制作启动盘必须格式化) 点击文件-打开 选择下载好的系统镜像(如:Windows 7) 点击启动-写入硬盘映像 选择硬盘

XavierJ的博客 2万+

基于STM32H5的循环GPDMA链表使用

STM32H503的GPDMA链表模式可实现灵活的数据传输。相比传统DMA直接编程方式,链表模式通过配置多个节点实现分散数据传输,支持循环链表功能。示例展示了如何使用GPDMA链表实现UART1循环发送数据:配置两个DMA节点分别指向不同发送缓冲区,构建循环链表并绑定到DMA通道。关键点包括:清空链表结构体、正确设置循环模式、检查节点配置。此方法提高了DMA使用的灵活性,适用于需要交替传输多段数据的场景。

kevin1499的博客 451

P1402 酒店之王(网络流)

P1402 酒店之王(网络流) 显然网络流,先建立超级源点连房间,超级汇点连菜,考虑一个人同时可以选房间和菜,但是贡献只算一次,所以对人拆点。两个点连1权,限制流量贡献就是1了。 然后喜欢的边权1,跑dinic即可。 code //2+200+200 st=0,ed=505; scanf("%d%d%d",&n,&p,&q); for(int i=1;i<=p;i++) add(st,i,1); for(int i=1;i<=q;i++) add(i+n,ed,

Harris-H的博客 420

编写python脚本调用ordinals以及BRC20的接口

1、钱包地址生成walletreceive,对应ord命令:ord wallet receive。6、测试手动出块generate,这个只在regtest链节点用得上。所有接口都是post请求,采用postman进行测试。4、测试bitcoin转币sendtoaddress。7、测试其他的wallet方法wallet。2、钱包币种铭刻inscription,对应bitcoin-cli命令。对应bitcoin-cli命令。对应bitcoin-cli命令。fee.json文本模板。还可以加很多根据需要加减。

云深海阔专栏 1047

【洛谷 - P1231 】教辅的组成(网络流最大流,拆点)

题干: 题目描述 蒟蒻HansBug在一本语文书里面发现了一本答案,然而他却明明记得这书应该还包含一份练习题。然而出现在他眼前的书多得数不胜数,其中有书,有答案,有练习册。已知一个完整的书册均应该包含且仅包含一本书、一本练习册和一份答案,然而现在全都乱做了一团。许多书上面的字迹都已经模糊了,然而HansBug还是可以大致判断这是一本书还是练习册或答案,并且能够大致知道一本书和答案以及一本书和练...

xuanweiace的博客 416

传感器使用——ESP-WROOM-32 and INMP441麦克风音频采集

传感器使用——ESP-WROOM-32 and INMP441麦克风音频采集,数据显示及matlab操作界面。

qq_41958946的博客 7354

飞牛fnNAS存储模式RAID 5数据恢复

中介绍了fnNAS存储空间的几个模式,细心的网友应该能感受到,我是非常推崇RAID 5的。但我认为,一般人出现1块硬盘损坏后,就能够赶紧采取处理措施了,再高的容灾等级也无法满足这个用户的需求了。》就完成了飞牛NAS存储空间的说明,包括了如何创建、怎么选择空间模式、RAID 5 硬盘故障后的更换、系统更换/重装后数据盘的恢复等等。在VMware中新建虚拟机,安装好fnNAS后,再向虚拟机添加“已有硬盘”(这就是所谓崩溃虚拟机的数据盘),此时新的fnNAS出现提示。在“选择要添加的硬盘”中,选择刚添加硬盘。

dgnankai的专栏 3008

洛谷 P1231 教辅的组成 网络流 最大流 二分图变形 Dinic算法 FF算法超时

题目链接: https://www.luogu.com.cn/problem/P1231 思路和https://blog.youkuaiyun.com/aiwo1376301646/article/details/104251335完全一致,请移步看思路 区别在于这道题目FF算法仅仅AC了3个测试点,有7个测试点TLE 附上30分代码 #include <bits/stdc++.h> ...

aiwo1376301646的博客 223

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

P1231 教辅的组成——网络流为什么要拆点

洛谷P1231 参考博客大佬Siyuan 题意 有n1本书,n2本练习册,n3本答案。给出m1个书和练习册的联系,m2个书和答案的联系,一本书一本练习册一本答案为一册,问最多可以组成多少册。 思路 如果只有两样东西就是典型的最大二分匹配问题,但这里有三种,所以匈牙利算法做不了,可以用最大流。建图方法是:源点->练习册->书(拆点)->答案->汇点。拆点很重要,下面是一个样例...

D_Bamboo_的博客 412

深度学习工具包 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")

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

P1231 教辅的组成 (最大流)

https://www.luogu.org/problem/P1231 题意:给出书,答案和练习册,以及每本书可以匹配的答案和练习册,问最大有多少匹配。 做法:很简单,应该能想到是最大流,但不过建图也很简单,源点-》答案-》书(拆点)-》练习册-》汇点。 但不过每一本书只能用一次,必须要拆点,相当于限流。跑一个最大流就可以了。 #include "bits/stdc++.h" usin...

KXL5180的博客 331

P1231 教辅的组成

时隔多日再次打网络流就错了。。。 跟那道“酒店之王”几乎一模一样,只不过数据大些,加当前弧照样过。 从luogu题解偷来一张图,有这张图就不用说话了。。。 代码: #include<cstdio> #include<cstring> #include<queue> #include<algorithm> const int maxn ...

dianshu0741的博客 156

网络流/Dinic(洛谷 P1231 教辅的组成)

题目链接 对于这个题做法和另一个题十分相似(其实一样),还是利用了拆点进行限流。 详细介绍可以看一下那个题。 下面是ac代码: #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #include <string> #include &...

平凡人Kalzn的博客 281

【luogu1231】教辅的组成 [网络流 最大流]

luogu1231 蒟蒻HansBug在一本语文书里面发现了一本答案,然而他却明明记得这书应该还包含一份练习题。然而出现在他眼前的书多得数不胜数,其中有书,有答案,有练习册。已知一个完整的书册均应该包含且仅包含一本书、一本练习册和一份答案,然而现在全都乱做了一团。许多书上面的字迹都已经模糊了,然而HansBug还是可以大致判断这是一本书还是练习册或答案,并且能够大致知道一本书和答案以及一...

weixin_30338461的博客 130

洛谷 P1231 教辅的组成

题目背景 滚粗了的\(HansBug\)在收拾旧语文书,然而他发现了什么奇妙的东西。 题目描述 蒟蒻\(HansBug\)在一本语文书里面发现了一本答案,然而他却明明记得这书应该还包含一份练习题。然而出现在他眼前的书多得数不胜数,其中有书,有答案,有练习册。已知一个完整的书册均应该包含且仅包含一本书、一本练习册和一份答案,然而现在全都乱做了一团。许多书上面的字迹都已经模糊了,然而\(HansBug...

weixin_30718391的博客 140

洛谷P1231 教辅的组成 网络流

Code: #include<cstdio> #include<cstring> #include<algorithm> #include<vector> #include<cstring> #include<queue> using namespace std; const int maxn=50004;...

weixin_30443747的博客 97

luogu1231 教辅的组成

最大流水题

ACoder 400

P1231 教辅的组成(三分图,细节)

一个明显的三分图一个明显的三分图一个明显的三分图 练习册放在左边,书放在中间,答案放在右边练习册放在左边,书放在中间,答案放在右边练习册放在左边,书放在中间,答案放在右边 裸的网络流裸的网络流裸的网络流 但这样有问题,就是书在中间充当一个点但这样有问题,就是书在中间充当一个点但这样有问题,就是书在中间充当一个点 一本书可以经过多次,这是不允许的一本书可以经过多次,这是不允许的一本书可以经过多次,这是不允许的 所以拆点,让书和拆点后的书连一条流量1的边即可所以拆点,让书和拆点后的书连一条流量1的边即可所以拆点

jziwjxjd的博客 492

洛谷 P1231 教辅的组成(最大流)

任重而道远题目描述蒟蒻HansBug在一本语文书里面发现了一本答案,然而他却明明记得这书应该还包含一份练习题。然而出现在他眼前的书多得数不胜数,其中有书,有答案,有练习册。已知一个完整的书册均应该包含且仅包含一本书、一本练习册和一份答案,然而现在全都乱做了一团。许多书上面的字迹都已经模糊了,然而HansBug还是可以大致判断这是一本书还是练习册或答案,并且能够大致知道一本书和答案以及一本书和练习册...

TRS_07170的博客 208

【洛谷1231】 教辅的组成(网络流)

传送门 洛谷 Solution 考虑一本书最多用一次,所以拆点。 其他的答案、练习册与书本的限制直接连1的边就好了。 最后跑出来的最大流就是答案。 代码实现 #include<bits/stdc++.h> using namespace std; const int N=100010,Inf=1e9+10; int front[N],cnt,s,t,n1,n2,n3; str...

araw94333的博客 106
上一篇: P3701 「伪模板」主席树-(网络流最大流)
下一篇: P1402 酒店之王-(网络流最大流)
Cosmic_Tree
博客等级 码龄7年 134粉丝 337原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值