全球名校AI课程库(26)| MIT麻省理工 · 计算机科学的数学基础课程『Mathematics for Computer Science』

MIT算法导论01-课程简介及算法分析 MIT算法导论01-课程简介及算法分析 课程名:Introduction to Algorithms 课程编号:6.046J/18.410J 授课教师:Prof. Charles Leiserson Prof.Erik Demame 预备课程 6.042,计算科学的数学基础 6.001,Structure and Interpretation of Computer Programs《计算机程序的构造与解释》 离散数学 概论论 Analysis of Algorithms 算法分析 目的: 掌握分析算 阅读详情
6.042J; Mathematics for Computer Science; 计算机科学的数学基础

🏆 课程学习中心 | 🚧 CS数学基础课程合辑 | 🌍 课程主页 | 📺 中英字幕视频 | 🚀 项目代码解析


课程介绍

数学几乎是“艰难”与“枯燥”的同义词了,定理、推导,做题、考试,大脑的催眠药,意志力的催残剂。但数学又是如此重要,当绕过了它选择了工科,却发现每一项重要的应用背后都需要它的支撑。学习计算机,不管是基本的程序逻辑还是进阶的算法,都依托于某一项数学知识。

但是!数学又是一门无穷尽的学科,知识点与分支蜿蜒绵长。但CS的宝宝们,你们并不需要抱着数学书去啃!世界top大学有高招,比如!MIT 6.042J 就根据计算机方向所需的知识,对数学做了一个梳理打包,通过有趣的方式,让你快速构建CS所需最小数学知识根基!

6.042J; Mathematics for Computer Science; 计算机科学的数学基础

MIT 6.042J 是顶级院校麻省理工出品的工科基础优质课程,围绕计算机科学方向,构建所需的数学体系内容,包含函数、离散数学、概率论、图和树结构,以及部分算法(例PageRank)。不同于枯燥的理论数学,本课程的数学知识都有计算机科学方向的延展应用,是工科方向同学值得一学的基础课程。

6.042J; Mathematics for Computer Science; 计算机科学的数学基础

课程讲师 Albert R Meyer 是麻省理工 Department of Electrical Engineering and Computer Science (电气工程和计算机科学系)的教授。


课程主题

课程覆盖范围大致分为三部分。学完完成6.042J后,你能够解释和应用计算机科学中离散(非连续)数学的基本方法,并在算法设计和分析、可计算理论、软件工程、计算机系统等领域得到充分应用。

  • 数学的基本概念:定义、证明、集合、函数、关系
  • 离散结构:图,状态机,模运算,计数
  • 离散概率理论

课程资料

6.042J; Mathematics for Computer Science; 计算机科学的数学基础

公✦众✦号回复关键字 🎯『6.042J』,就可以获取整理完整的资料合辑啦!当然也可以点击 🎯 这里 查看更多课程的资料获取方式!

6.042J; Mathematics for Computer Science; 计算机科学的数学基础
6.042J; Mathematics for Computer Science; 计算机科学的数学基础
6.042J; Mathematics for Computer Science; 计算机科学的数学基础

ShowMeAI 对课程资料进行了梳理,整理成这份完备且清晰的资料包:

  • 📚 课件:4个单元,111份,覆盖所有课程视频
  • 📚 作业练习:12份作业,学后练手的好素材
  • 📚 课内问题总结:35份文档,152个常见学习问题与解答
  • 📚 拓展阅读材料:35份文档,覆盖所有chapter

课程视频 | B站

【双语字幕+资料下载】MIT 6.042J | 计算机科学的数学基础(2015·完整版)

🌍 B站 | 【双语字幕+资料下载】MIT 6.042J | 计算机科学的数学基础(2015·完整版)

ShowMeAI 将视频上传至B站,并增加了中英双语字幕,以提供更加友好的学习体验。点击页面视频,可以进行预览。推荐前往 👆 B站 观看完整课程视频哦!


全球名校AI课程合辑

作者:ShowMeAI内容团队
阅读原文:https://www.showmeai.tech/article-detail/354

MIT计算机编程与科学导论课程精要 本文还有配套的精品资源,点击获取 简介:本课程由麻省理工学院提供,面向编程初学者,旨在介绍基础编程概念和科学计算方法。课程内容包括变量、数据类型、运算符、控制结构、函数使用,算法设计与分析,面向对象编程,以及科学计算和软件工程实践。学习者将通过理论和实践项目,掌握编程基础,并提升解决问题的能力。 1. 基础编程概念介绍与实践 1.1 编程语言概述 编程... 阅读详情

相关推荐

Mathematics for Computer Science.pdf

Mathematics for Computer Science.pdf

Mathematics for Computer Science 2

正如讲义终所述,我们不会太担心你使用什么公理【axioms】或逻辑推导【logical deduction】。任何合理的事情,我们都可以接受。我们不会要求你知道什么是肯定前件 (Modus ponens),或者在你进行逻辑推理时给某个定律【law】贴上标签。只要你知道是合理的即可。在这门数学课程中,你所知道的任何事实【fact】,都很接近可以用作公理【axioms】。想确保你的公理是一致的【consistent】,这没问题。现在的例外情况是,假设我们正在考试,我们要求你证明一些命题,p。现在的例外情况是,假

Piemon&Anokata的博客 474

Mathematical logic for computer science

经典的面向计算机科学的逻辑学,这是第三版了!

Mathematics for Computer Science (Eric Lehman / F Thomson Leighton / Albert R Meyer 著)

I Proofs1 What is a Proof?2 The Well Ordering Principle3 Logical Formulas4 Mathematical Data Types5 Induction6 State Machines7 Recursive Data Types8 Infinite SetsII Structures9 Number Theory10 Directe...

weixin_34055787的博客 550

MIT Press - Mathematics For Computer Science.pdf

MIT Press - Mathematics For Computer Science.pdf

Mathematics for Computer Science 2017版

谷歌和mit联合出版的计算机中的数学,这么经典不得不看啊

Mathematics for Computer Science 3

它的思想是,如果你得到这个称为不变量【inariant】的神奇性质/属性【property】,他在初始时成立,在每一步中仍然成立,那么在你抵达终态时,它依然要成立,即必须具有该性质/属性【property】。为了证明你的系统永远不会达到一个特定的特殊状态,我们只需要证明,在初始状态下,存在一些称为不变量【invariant】的性质/属性【property】,并且随着每次移动,这些不变量【invariant】均保持不变,但是,它在特定的特殊状态下是不存在的。So在行移动中,顺序不变。............

Piemon&Anokata的博客 415

Mathematics for Computer Science(MIT)

MIT出版的经典书籍,计算机专业必须掌握的数学知识。

最近很火的《计算机科学的数学》是本什么样的书?

这两天,一则名为“谷歌与 MIT 联袂巨著《计算机科学的数学》开放下载”的消息刷爆了朋友圈。 这是谷歌工程师 Eric Lehman,与 MIT 两位教授 Thomson Leighton 和 Albert Meyer 合著的教科书。如同书名,为计算机专业的学生提供数学基础知识。有谷歌和麻省理工的品牌加持,大家一听说这本书现在可以免费下载了,顿时大感...

weixin_34388207的博客 897

LIGGGHTS开源离散元仿真:从基础安装到高级应用实战

本文详细介绍了LIGGGHTS开源离散元仿真软件的基础安装、脚本编写及高级应用实战。从颗粒自由落体模拟到工业级复杂系统建模,涵盖CFD-DEM耦合、高性能计算优化等关键技术,帮助用户快速掌握这一强大的颗粒仿真工具。特别适合需要处理颗粒系统仿真的科研人员和工程师。

l1k9j8h7g6的博客 621

【UE5 C++开发指南】从零配置Visual Studio 2022开发环境

本文详细指导如何从零开始为UE5 C++开发配置Visual Studio 2022环境。文章强调了VS2022与UE5的深度兼容性,并逐步讲解了社区版下载、核心工作负载(如“使用C++的游戏开发”)与组件安装、界面优化、专属工具设置以及首个C++项目的创建与验证流程,帮助开发者高效搭建专业开发环境。

weixin_29016865的博客 395

Mathematics for computer science-Introduction

Mathematics for computer science

Curya的博客 1111

AMESim柱塞泵建模全指南:从HCD库搭建到联合仿真

液压系统仿真中,轴向柱塞泵的建模始终是难点与热点。柱塞泵结构紧凑、功率密度高,在工程机械与航空航天领域应用广泛,然而其运动学与流体细节深度耦合,给仿真带来不小挑战。AMESim平台中的HCD库提供了一种从物理结构出发的建模思路,将柱塞泵分解为容积腔、节流口与机械约束等基础单元,从而真实刻画柱塞腔压力波动、配流特性和容积效率等关键行为,摆脱黑盒模型的局限。基于机理建模的仿真结果,可用于泵参数优化、故障特征分析以及控制策略验证。进一步结合AMESim与Simulink联合仿真,可以高效开发变量泵排量控制系统,研

weixin_29159441的博客 290

Mathematics for Computer Science

什么是证明【proof】?证明的存在是超越数学的,那么证明的更高层次的概念是什么?它可能没有潜在的逻辑推导【logical deduction】,也可能没有假设【assumption】。我认为一般来说,证据【proof】被认为是,跨多个领域【field】,作为一种确定【ascertaing】真理【truth】的方法。这里所说的确定【ascertaing】,是指建立【establishing】真理,验证【verifying】真理。在社会中,甚至在科学中,有很多方法可以确定真理【ascertaing truth

Piemon&Anokata的博客 531

【规则引擎连载3】 WebSphere ILOG JRules 开发——新建一个规则项目

规则项目依赖于bom,bom来自于一个Java项目,所以在建规则项目之前,需要先建立一个Java项目,也就是建模。 说明:原则上是一个规则项目,一个bom。如果规则项目很多,并且每个规则项目的bom都是一样的,那么可以将bom提取出来,单独作为一个项目,这样减少不必要的重复操作,减少维护成本,降低出错几率。这里逐步讲解两种方法来创建规则项目,推荐第二种。 本文主要建立两种规则项目与bom之间的关系,编写相关的规则内容,如操作规则、规则流、决策表等,在后续文章中详细讲解 。

manman的分享 2331

[ 人力资源面试篇 ] HR 面试题分析详解大集合,看完直怼面试官(二)

那么在这个系列的文章中,我们聊到 HR 面谈什么?并且总结了五十个常见的人力资源面试题,在这里分享给大家。

qq_51577576的博客 1380

推荐一门 MIT 的计算机入门课

你好,我是坚持分享干货的 EarlGrey,翻译出版过《Python编程无师自通》、《Python并行计算手册》等技术书籍。如果我的分享对你有帮助,请关注我,一起向上进击。计算机科学及编程导论在MIT的课程编号是6.00.1,是计算机科学及工程学院的经典课程。之前,课程一直使用Scheme作为教学语言,不过由于Python简单、易学等原因,近年来已经改用Python作为教学语言了。另外,这几年公开...

codingpy的博客 1262

【基于CKF的IMM】CV和CT两个模型下的IMM,二维,滤波使用CKF(容积卡尔曼滤波),附完整的matlab代码

该文章摘要: 本文提出了一种基于交互多模型(IMM)和容积卡尔曼滤波(CKF)的融合定位算法,用于解决目标在直线运动和转弯机动之间的模型切换问题。通过MATLAB仿真实现了IMM-CKF算法,并与单一的CV-CKF(匀速模型)和CT-CKF(匀角速转弯模型)方法进行对比。实验结果表明,在包含直线段和转弯段的复合轨迹跟踪中,IMM-CKF方法能够自适应调整模型权重,显著提高了定位精度。轨迹跟踪图、位置/速度误差对比图以及模型概率曲线直观展示了IMM算法的优势。文章提供了完整的MATLAB实现代码,可用于目标跟

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 615

麻省理工大学公开课 离散数学

网址:http://www.core.org.cn/OcwWeb/Electrical-Engineering-and-Computer-Science/6-042JSpring-2005/LectureNotes/index.htm

一步步,一寸寸,一点点,一天天,慢慢来 1万+

【自然语言处理】情感分析(一):基于 NLTK 的 Naive Bayes 实现

朴素贝叶斯(Naive Bayes)分类器可以用来确定输入文本属于某一组类别的概率。例如,预测评论是正面的还是负面的。它是 “朴素的”,它假设文本中的单词是独立的(但在现实的自然人类语言中,单词的顺序传达了上下文信息)。尽管有这些假设,但朴素贝叶斯在使用少量训练集预测类别时具有很高的准确性。

Data · Model · Agent · Repeat 2173

材料仿真软件:Quantum Espresso_(15).声子与振动模式计算

通过上述步骤和代码示例,您应该能够使用 Quantum Espresso 进行声子与振动模式的计算。声子计算是材料科学研究中的重要工具,可以帮助我们更好地理解和设计材料的性能。希望本节内容对您有所帮助。

kkchenjj的博客 1185

mit 6.824 分布式系统/Raft一致性算法学习(1)

分布式系统应用在很多现实生活中系统,例如大型网站通常是由大量的计算机构成的分布式系统来运行。当我刚开始教这门课的时候,分布式系统还是一种学术上的好奇尝试。人们只是发现有时需要一些小规模的系统,并且预感在未来这(大规模分布式系统)可能很重要。但是现在,随着大型网站的兴起和推动,出现了大量的数据和大型数据中心。在过去的二十年中,分布式系统已经是计算架构中很重要的一部分。这意味着大量的精力投入到解决相关问题的工作中,但是同样有少数问题还没有被解决。提示:以下是本篇文章正文内容,下面案例可供参考。

m0_74884933的博客 972

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

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

全球名校AI课程库(33)| MIT麻省理工 · 计算思维导论(Julia)课程『Introduction to Computational Thinking』

创造性地将【计算机科学+数学+应用】3个领域的内容融合进这门交互式编程课,并依托Julia编程语言为实践依托,讲解基础知识与建模方法。

ShowMeAI研究中心 1万+

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

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

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

mit python 公开课_MIT 计算机科学及编程导论 Python 笔记 1

计算机科学及编程导论在 MIT 的课程编号是 6.00.1,是计算机科学及工程学院的经典课程。之前,课程一直使用 Scheme 作为教学语言,不过由于 Python 简单、易学等原因,近年来已经改用 Python 作为教学语言了。更多介绍最初知道这个课程的时候大概是在 2014 年,对于做事拖沓的我,这门课程已经从低清随堂录制变成了 edX 平台的一门 高清的 MOOC,转眼间已经大三,希望自己能...

weixin_39917811的博客 341

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

上一篇: 全球名校AI课程库(25)| MIT麻省理工 · 机器学习导论课程『Introduction to Machine Learning』
下一篇: 全球名校AI课程库(27)| MIT麻省理工 · 数据结构与算法设计课程『Design and Analysis of Algorithms』
ShowMeAI
博客等级 码龄5年 6514粉丝 672原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ShowMeAI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值