[HNOI2011]卡农

基于图像的情绪分析实现指南:CNN数据增强与Keras实战 图像分类是计算机视觉与深度学习中的基础任务,其核心在于让模型从像素中提取语义特征并映射到离散标签。卷积神经网络(CNN)通过逐层卷积、池化和全连接结构自动学习纹理、边缘与局部模式,是人脸表情识别的主流技术路线。在训练过程中,数据增强通过对原始图像进行随机旋转、平移、翻转等变换,可有效扩充样本多样性并抑制过拟合。借助Keras等深度学习框架,开发者能快速搭建可复用的训练管线,结合标签体系设计、混淆矩阵评估和Grad-CAM可视化,形成完整的工程闭环。该技术广泛应用于人机交互、安防监控、课堂专注度分析等场景。针 阅读详情

这道题是day2压轴……去年我没做出来,然后一直以为很难……

昨天做了一下发现这题超过瘾的……是个数学题……写出来的代码超短……

但是很难想……

首先考虑所有的集合:除掉空集以后共有2^n-1个

当确定了前m-1个集合以后,第m个集合就确定了,因为要求所有的数出现偶数次

这道题要求不记顺序,但是记顺序的更好算一点,然后在最后除一个m!即可

那么我们记f[i]为前i个集合记顺序的方案数,g[i]为A(2^n-1,i),即在2^n-1个集合里取i个集合的排列数

很显然f[i]等于g[i]减去某个数,因为算重了

考虑哪些是算重的:

1.前i-1个集合已经保证了所有的数出现偶数次,那么第i个集合就是空集,要减去这种情况,即减去f[i-1]

2.第i个集合和前i-1个集合中的某一个重复,除掉这个重复的集合,有f[i-2]种方案,这个重复的集合可能的位置有i-1种,重复的集合可能的取法有2^n-1-(i-2)种(跟剩下的m-2种不同)

那么f[i]=g[i-1]-f[i-1]-f[i-2]*(i-1)*(2^n-1-(i-2))

最后除个m!,模的数是质数,可以求逆元……然后完了

如果计数的部分解决了就很简单……关键是想不想得到啊……

//Lib
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<ctime>

#include<iostream>
#include<algorithm>
#include<vector>
#include<string>
#include<queue>
#include<stack>
#include<set>
#include<map>
using namespace std;
//Macro
#define	rep(i,a,b)	for(int i=a,tt=b;i<=tt;++i)
#define	drep(i,a,b)	for(int i=a,tt=b;i>=tt;--i)
#define	erep(i,e,x)	for(int i=x;i;i=e[i].next)
#define	irep(i,x)	for(__typeof(x.begin()) i=x.begin();i!=x.end();i++)
#define	read()	(strtol(ipos,&ipos,10))
#define	sqr(x)	((x)*(x))
#define	pb	push_back
#define	PS	system("pause");
typedef	long long	ll;
typedef	pair<int,int>	pii;
const int oo=~0U>>1;
const double inf=1e100;
const double eps=1e-6;
string name="canon", in=".in", out=".out";
//Var
ll f[1000008],mi,pre[1000008],mod=100000007,n,m,tmp=1;
ll power(ll a,int b)
{
	if(b==0)return 1;
	ll ret=power(a,b>>1);
	ret=ret*ret%mod;
	if(b&1)ret=ret*a%mod;
	return ret;
}
void Dec(ll &a,ll b){a-=b;if(a<0)a+=mod;}
void Init()
{
	scanf("%d%d",&n,&m);
	mi=power(2,n);mi--;
	//solve A(2^n-1,i)
	pre[0]=1;
	rep(i,1,m)pre[i]=pre[i-1]*(mi-i+1)%mod;
} 
void Work()
{
	f[1]=0;f[2]=0;
	rep(i,3,m)
	{
		f[i]=pre[i-1];
		Dec(f[i],f[i-1]);
		Dec(f[i],f[i-2]*(i-1)%mod*(mi-(i-2))%mod);
	}
	rep(i,2,m)tmp=tmp*i%mod;
	cout<<f[m]*power(tmp,mod-2)%mod<<endl;
}
int main()
{
	Init();
	Work();
//	PS;
	return 0;
}


DeepSpeed Zero3 Offload实战:从GCC版本检查到环境配置的完整避坑指南 本文是一份针对DeepSpeed Zero3 Offload部署的完整避坑指南。针对训练中常见的`AttributeError: ‘DeepSpeedCPUAdam‘ object has no attribute ‘ds_opt_adam`报错,文章深入剖析了其根源在于GCC编译器版本过低。指南提供了从系统GCC版本深度探查、安全启用高版本GCC环境,到DeepSpeed一致性安装验证的全链路实战方案,旨在帮助用户构建稳定的大模型训练环境。 阅读详情

相关推荐

01 AUTOSAR CP标准文档阅读指南

01 AUTOSAR CP标准文档阅读指南

汽车软件工程师 | 好奇博主 | 处女座 1134

ccf-csp 2014春季真题题解

相反数 问题描述   有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。 输入格式   第一行包含一个正整数 N。(1 ≤ N ≤ 500)。   第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过1000,保证这些整数各不相同。 输出格式   只输出一个整数,即这 N 个数中包含多少对相反数。 样例输入 5 1 2 3 -1 -2 样例输出 2 题解:   使用数组记录正负数字出现的次数,使用offset就可以只开一个数组。 代码: #..

Raymond_YP的博客 586

CentOS 7/8 系统下,基于Docker Compose一键部署Dify AI应用平台

本文详细介绍了在CentOS 7/8系统下,使用Docker Compose一键部署Dify AI应用平台的完整流程。从系统环境准备、Docker引擎安装与加速配置,到获取Dify项目、关键环境变量设置,再到服务启动、状态监控及初始化访问,提供了手把手的部署指南和常见问题排查方法,帮助用户快速搭建稳定、可维护的AI应用开发环境。

q5r6s7的博客 139

codeforce_exercise_r12

目录任务调度(csp201403-5) :问题描述题目简述输入/输出格式样例问题分析解题思路1(10pts)参考代码解题思路2(30pts)参考代码心得体会 任务调度(csp201403-5) : 问题描述 题目简述 有若干个任务需要在一台机器上运行。它们之间没有依赖关系,因此 可以被按照任意顺序执行。   该机器有两个 CPU 和一个 GPU。对于每个任务,你可以为它分配不 同的硬件资源:   1. 在单个 CPU 上运行。   2. 在两个 CPU 上同时运行。   3. 在单个 CPU 和 GPU 上

qq_43715114的博客 350

基于555定时器的呼吸灯电路

呼吸灯是指LED灯在芯片的控制下完成由亮到暗的逐渐变化,感觉就像人在呼吸,其广泛使用在手机上,起到一个通知提醒的作用。呼吸灯在许多灯光装饰上也有大量使用,如音响、汽车广告牌等,在生活中较为常见。...

qq1074237849的博客 9496

从mseed到SAC格式转换全攻略:mseed2sac工具安装与批量处理技巧

本文详细介绍了如何将mseed格式的地震数据高效转换为SAC格式,涵盖mseed2sac工具的安装、单文件转换技巧、批量处理自动化实现以及元数据高级处理策略。通过具体命令和脚本示例,帮助地震学研究者快速掌握数据预处理的关键技术,提升波形数据分析效率。

ruby5的博客 927

HNOI2011(部分)

HNOI2011一堆玄学

int128maxn的博客 217

系统安装、qt配置、安装pcie驱动

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 安装Linux系统指定:ununtu20.04并配置相关软件环境 前言 提示:这里可以添加本文要记录的大概内容: ununtu20.04、Qt 5.9.0、pcie驱动 提示:以下是本篇文章正文内容,下面案例可供参考 一、安装系统 制作系统盘(win10),在开机时按相应键进入BIOS,(华硕需要先改配置启动->CSM->开启->第一个选项选第一个或第二个),等待即可 进入后按照https://www.sysgeek.

weixin_44832804的博客 2206

[HNOI2011] 卡农

TXL。

PocketSam的博客 374

多思计组实验实验六 微程序控制器实验

实验六 微程序控制器实验

qq_53089329的博客 3785

Redhawk:toggle rate从哪来?

redhwak中toggle rate的相关设置

m0_61544122的博客 8125

bzoj 2327: [HNOI2011]勾股定理

题目大意:给你n个数,问你有多少zhon

abc473848880_的专栏 1619

【QT开发教程】Qt中的跨平台文件系统操作

文件系统操作是应用程序开发中经常需要处理的任务。Qt提供了一套跨平台的文件系统操作API,使开发者能够在不同操作系统上无缝地进行文件和目录操作。本文将介绍Qt中的跨平台文件系统操作,包括基本概念、常用类和方法以及实际示例。

科技改变人类,技术成就未来 981

P3214 [HNOI2011]卡农

题目 P3214 [HNOI2011]卡农 在被一题容斥\(dp\)完虐之后,打算做一做集合容斥这类的题了 第一次深感HNOI的毒瘤(题做得太少了!!) 做法 求\([1,n]\)组成的集合中选\(m\)个不同集合且每个元素出现偶数的组合方案 无序(打乱顺序仍记为一种)通常我们对于有序的做法更简单,怎么转换呢 C组合数的公式是怎么得来的?别说你是背来的\(emmm\)(那也没有做这题的必要了) 有...

weixin_30387339的博客 170

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

SAP B1中文培訓教材_SDK

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

排列 [HNOI2011]卡农

问题 A: [HNOI2011]卡农 时间限制: 1 Sec 内存限制: 128 MB 题目描述 共有2^n-1种片段组合方式。设数字i出现次数ai,选i个片段是合法总方案数为fi。 这里我们先按不同排列方式为不同情况。 那么对于A(2^n-1,i-1)就是i个位置上有i-1个位置上放上了片段,有两种情况, 1,这i-1个片段已满足要求,不合法。 2...

aojueyi5506的博客 96

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Luogu3214 [HNOI2011]卡农

Luogu3214 [HNOI2011]卡农 题面:Luogu 解析 题意即为选出\(m\)个不同的数,使其异或和为0,发现其实就是先选前\(m-1\)个数,然后最后一个数应该等于前面所有数的异或和,这样计算两种不合法的情况:1.最后一个数为0。2.最后一个数与前面的数重复。先看1,发现是选\(m-1\)个数异或和为0,再看2,考虑删去重复的2个数,重复的数的位置有\(m-1\)中,取值...

154

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

BZOJ2339[HNOI2011]卡农——递推+组合数

题目链接: [HNOI2011]卡农 题目要求从$S=\{1,2,3……n\}$中选出$m$个子集满足以下三个条件: 1、不能选空集 2、不能选相同的两个子集 3、每种元素出现次数必须为偶数次 我们考虑递推,设$f[i]$为选$i$个集合满足以上条件的方案数。 考虑容斥: 当确定了前$i-1$个集合后,要满足第三个条件的话,第$i$个集合是唯一确定的,所以总方案数为$A_{2...

weixin_34148508的博客 198

洛谷 P3214 [HNOI2011] 卡农 题解

个集合异或起来, 得到一个新的集合, 只要我们把这个集合插入, 是一定可以满足第三个限制的. 此时的方案数就是前。个集合之后, 它们已经合法了, 那么这时候我们可能会新加入一个空集, 这样是不合法的. 我们记。个集合就会跟剩下的那个集合重复, 违背了第二个限制, 这也是不合法的. 这个时候我们需要减去。个集合是很好确定的. 由于我们要满足第三个限制, 所以我们可以把前。第一个限制是好解决的, 我们只需要在求出所有的有序方案数之后除以。个集合合法的方案数, 那么我们需要减去。个集合, 就一定是合法的.

Ciallo~ 1131

P3214 [HNOI2011] 卡农 题解

其中第一项为S的取值情况,第二种为出现位置的种数。在之前出现过,也不合法。设它的上次出现位置为。无序的不太好考虑,我们直接算有序的然后除以。确定(不一定合法),那我们就可以填第。个集合,合法的方案数。个集合是互不相同的且不能为空。个集合,每个集合里可以选。个集合里总共需要出现偶数次。个一定不合法,所以减去。确定且合法,则加上第。

MYJ_aiie的博客 858

BZOJ 2339[HNOI2011]卡农

题面: 2339: [HNOI2011]卡农 Time Limit:10 SecMemory Limit:128 MBSubmit:807Solved:483[Submit][Status][Discuss] Description 令f[i]为前i个集合满足条件的方案数,则前i-1个集合确定后,第i个也随之确定(元素出现偶数次)。 f...

weixin_30701521的博客 133

[BZOJ2339][HNOI2011]卡农

[BZOJ2339][HNOI2011]卡农 试题描述 输入 见“试题描述” 输出 见“试题描述” 输入示例 见“试题描述” 输出示例 见“试题描述” 数据规模及约定 见“试题描述” 题解 先考虑m 个 01 串排顺序的情况。可以发现如果定下前 m - 1 个 01 串,那么第 m 个串就可以由前面所有 01 串按位异或得出,所以方案数为 A...

weixin_30415801的博客 104

《P3214 [HNOI2011] 卡农》

摘要:本文讨论了一个关于音乐组合的数学问题。给定n个音阶和m个片段,每个片段由1到n个音阶组成,要求:1)所有片段的音阶集合互不相同;2)每个音阶在所有片段中出现偶数次;3)音乐序列的顺序不重要。需要计算满足条件的音乐组合数模10^8+7。通过组合数学和动态规划方法,利用快速幂和模逆元等技巧求解。代码实现了预处理阶乘、动态规划转移和最终结果计算,时间复杂度主要取决于n和m的大小。

Jasmine_llq的博客 273

【题解】P3214 [HNOI2011] 卡农(组合数学,数学)

【题解】P3214 [HNOI2011] 卡农 这是我几天前就跟自己说,要把这道题作为我的首黑,结果 4.18 的时候 A 了一道紫题加强版的黑……于是这题就变成了第二道黑。不过也算是自己给自己的生日礼物了吧。 题目链接 P3214 [HNOI2011] 卡农 思路分析 第一步,需要转化题意(吐槽一下:个人觉得出题人语文没学好): 相当于是在 \(S=\{1,2,3,\cdots,n\}\) ...

m0_46222454的博客 430

洛谷 P3214 [HNOI2011] 卡农

再次败在dpdpdp手下,但是数据范围这么小应该是可以看出是dpdpdp的(毕竟对于其他组合数的问题数据范围都是10910^9109起步)。

m0_72761451的博客 756
上一篇: 关于曼哈顿距离下的最小生成树
下一篇: SGU512
OrpineX
博客等级 码龄17年 16粉丝 68原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值