深度优先搜索(DFS)

深度优先搜索 (Depth First Search 简称:DFS) 深度优先搜索 (Depth First Search 简称:DFS) 1.搜索算法 利用计算机的高性能有目的地的枚举一个问题的部分或者所有可能情况,从而找到解决问题的方法 2.穷举法(枚举法):典型的搜索算法 在我们遇到的一些问题当中,有些问题我们不能够确切的找出数学模型,即找不出一种直接求解的方法,解决这一类问题,我们一般采用搜索的方法解决。搜索就是用问题的所有可能去试探,按照一定的顺序、规则,不断去试探,直到找到问题的解,试完了也没有找到解,那就是无解,试探时一定要试探完所有的情况,这就是穷举。 阅读详情

深度优先搜索(DFS)

695.岛屿的最大面积

leetcode695
在这里插入图片描述
解题思路:
求地图的连通性、走迷宫问题,都可以通过DFS求解,类似的问题还有求岛屿数量、岛屿周长等。
常规套路,定义方向数组dir[][],有时是八个方向,有时候是四个方向。

八个方向:上下左右加对角
dir[8][2]={0,-1,-1,0,0,1,1,0,1,1,1,-1,-1,1,-1,-1}
四个方向:dir[4][2]={0,-1,-1,0,0,1,1,0,}

class Solution {
public:
    int temp=0;
    int dir[4][2]={0,1,1,0,0,-1,-1,0};
    void dfs(vector<vector<int>>&grid,int x,int y){
        for(int i=0;i<4;i++){
            int xx=x+dir[i][0];
            int yy=y+dir[i][1];
            if(xx<0||yy<0||xx==grid.size()||yy==grid[0].size()||grid[xx][yy]==0){
                continue;
            }
            if(grid[xx][yy]==1){
                temp++;
                grid[xx][yy]=0;
                dfs(grid,xx,yy);
            }
        }
    }
    int maxAreaOfIsland(vector<vector<int>>& grid) {
        int ans=0;
        for(int i=0;i<grid.size();i++){
            for(int j=0;j<grid[0].size();j++){
                if(grid[i][j]==1){
                    temp=1;
                    grid[i][j]=0;
                    dfs(grid,i,j);
                    ans=max(ans,temp);
                }
            }
        }
        return ans;
    }
};

**

200.岛屿数量

200. 岛屿数量

class Solution {
public:
    int ans=0;
    int dir[4][2]={0,1,1,0,0,-1,-1,0};

    void dfs(vector<vector<char>>& grid,int x,int y){
        for(int i=0;i<4;i++){
            int xx=x+dir[i][0];
            int yy=y+dir[i][1];
            //边界判断以及是否被访问过
            if(xx<0||yy<0||xx>grid.size()-1||yy>grid[0].size()-1||grid[xx][yy]=='0'){
                continue;
            }
            if(grid[xx][yy]=='1'){
            //标记已经被访问
                grid[xx][yy]=0;
                dfs(grid,xx,yy);
            }
        }
        return ;
    }
    int numIslands(vector<vector<char>>& grid) {
        for(int i=0;i<grid.size();i++){
            for(int j=0;j<grid[0].size();j++){
                if(grid[i][j]=='1'){
                    grid[i][j]=0;
                    ans++;
                    dfs(grid,i,j);
                }
            }
        }
        return ans;
    }
};
//
class Solution {
public:
    int dir[4][2]={0,1,1,0,0,-1,-1,0};
    void dfs(vector<vector<char>> &grid,int x,int y)
    {
        if(x<0||x==grid.size()||y<0||y==grid[0].size()||grid[x][y]=='0') return;
        grid[x][y]='0';
        for(int i=0;i<4;i++)
        {
           int xx=x+dir[i][0];
           int yy=y+dir[i][1];
           dfs(grid,xx,yy);
        }
        return;
    }
    int numIslands(vector<vector<char>>& grid) {
        int ans=0;
        for(int i=0;i<grid.size();i++)
        {
            for(int j=0;j<grid[0].size();j++)
            {
                if(grid[i][j]=='1')
                {
                    ans++;
                    dfs(grid,i,j);
                } 
            }
        }
        return ans;
    }

};

463.岛屿的周长问题

463. 岛屿的周长
解题思路:

对于一个陆地格子的每条边,它被算作岛屿的周长当且仅当这条边为网格的边界或者相邻的另一个格子为水域。 因此,我们可以遍历每个陆地格子,看其四个方向是否为边界或者水域,如果是,将这条边的贡献(即 1)加入答案 ans 中即可。
**

class Solution {
public:
	//方向数组
   int dir[4][2]={0,1,1,0,0,-1,-1,0};
   int dfs(vector<vector<int>>& grid,int x,int y){
       if(x<0||y<0||x==grid.size()||y==grid[0].size()||grid[x][y]==0){
           return 1;
       }
       int res=0;
       if(grid[x][y]==2) {
           return 0;
       }   
        //标记走过的地方
       grid[x][y]=2;  
       for(int i=0;i<4;i++){
           int xx=x+dir[i][0];
           int yy=y+dir[i][1];
           res+=dfs(grid,xx,yy);
       }
       return res;
    }

    int islandPerimeter(vector<vector<int>>& grid) {
        int ans=0;
         for(int i=0;i<grid.size();i++){
            for(int j=0;j<grid[0].size();j++){
                if(grid[i][j]==1){
                   // grid[i][j]=2;
                    ans+=dfs(grid,i,j);
                }
            }
        }
        return ans;

    }
};

**

547. 朋友圈

**
leetcode547
无向图的连接问题,设置一个标记数组标记当前节点是否访问过,深搜找到所有相连的节点(两点相连的坐标值为1)即为一个朋友圈

class Solution {
public:
    void dfs(vector<vector<int>>&M,int i,int *mark){
        mark[i]=1;
        for(int k=0;k<M.size();k++){
            if(M[i][k]==1&&!mark[k]){
                dfs(M,k,mark);
            }
        }
    }
    int findCircleNum(vector<vector<int>>& M) {
        int ans=0;
        int n=M.size();
        int mark[n];//创建一个标记数组
        memset(mark,0,sizeof(mark));//初始化清空为零
        for(int i=0;i<n;i++){
            if(!mark[i]){
                dfs(M,i,mark);
                ans++;
            }
        }
        return ans;

    }
};

130,填充封闭区域

leetcode130
在这里插入图片描述
解题思路:

注意到题目解释中提到:任何边界上的 O 都不会被填充为 X。 我们可以想到,所有的不被包围的 O 都直接或间接与边界上的 O
相连。我们可以利用这个性质判断 O 是否在边界上,具体地说:

  • 对于每一个边界上的 O,我们以它为起点,标记所有与它直接或间接相连的字母 O;
  • 最后我们遍历这个矩阵,对于每一个字母:如果该字母被标记过,则该字母为没有被字母 X 包围的字母 O,我们将其还原为字母 O;
  • 如果该字母没有被标记过,则该字母为被字母 X 包围的字母 O,我们将其修改为字母 X。
class Solution {
public:
    int dir[4][2]={0,1,1,0,0,-1,-1,0};
    void dfs(vector<vector<char>>&board,int x,int y){
        if(x<0||y<0||x==board.size()||y==board[0].size()||board[x][y]!='O'){
            return ;
        }
        //边界上的元素如果为O且相连,则全部标记为T;
        board[x][y]='T';
        for(int i=0;i<4;i++){
            int xx=x+dir[i][0];
            int yy=y+dir[i][1];
            dfs(board,xx,yy);
        }
    }
    void solve(vector<vector<char>>& board) {
        if(board.size()==0||board[0].size()==0) return ;
        //访问边界上的元素
        for(int i=0;i<board.size();i++){
            dfs(board,i,0);
            dfs(board,i,board[0].size()-1);
        }
        for(int j=0;j<board[0].size();j++){
            dfs(board,0,j);
            dfs(board,board.size()-1,j);
        }
        //遍历二维矩阵,为O的变为X;为T的变为O;
        for (int i = 0; i < board.size(); i++) {
            for (int j = 0; j < board[0].size(); j++) {
                if (board[i][j] == 'T') {
                    board[i][j] = 'O';
                } else if (board[i][j] == 'O') {
                    board[i][j] = 'X';
                }
            }   
        }
    }
};

oj 396 填涂颜色

在这里插入图片描述
在这里插入图片描述

解题思路

题目要求把闭合的0都编程2,而外圈的0不变,这题重要的思路在外圈补一圈0,在从边界的0开始深度优先遍历,找的点都变成3。
最后输出的时候,让所有数字3的输出0,1输出1,0输出2即可;

代码实现

#include <iostream>

using namespace std;

int dir[4][2] = { 0,1,1,0,0,-1,-1,0 };

int n;
int mmap[35][35] = { 3 };
int val;

void dfs(int x, int y) {
	for (int i = 0; i < 4; i++) {
		int xx = x + dir[i][0];
		int yy = y + dir[i][1];
		if (xx < 0 || yy > n+1|| xx > n+1 || yy < 0) continue;
		if (mmap[xx][yy] == 0) {
			mmap[xx][yy] = 3;
			dfs(xx, yy);
		}
	}
}

int main()
{
	cin >> n;
	//从1开始;
	for (int i = 1; i <= n; i++) {
		for (int j = 1; j <= n; j++) {
			cin >> val;
			mmap[i][j] = val;
		}
	}
	dfs(0, 0);
	for (int i = 1; i <= n; i++) {
		for (int j = 1; j <= n; j++) {
			if (j != 1) cout << " ";
			if (mmap[i][j] == 3) cout << 0;
			else if (mmap[i][j] == 1) cout << 1;
			else if (mmap[i][j] == 0) cout << 2;
		}
		cout << endl;
	}
	return  0;
}
深度优先搜索 DFS 1、基本思想 在搜索一幅图时,只需要用一个递归来遍历所有顶点。在访问其中一个顶点时: - 将它标记为已访问 - 递归访问它的所有未标记的邻居顶点 DFS只会访问与起点s连通的所有顶点(而不会访问其他顶点)。如果图是连通的,则所有顶点都会被访问到。 DFS中每条边都会被访问两次,且在第二次时总会发现这个顶点已经被标记过了。 2、算法实现 public class DepthFi... 阅读详情

相关推荐

Java-DFS(深度优先搜索)

原理深度优先搜索的基本思路是从一个节点开始,依次访问它的每一个邻居节点,直到达到一个没有未被访问的邻居的节点为止。这个过程可以使用递归或者栈来实现。其特点是尽可能深入每一个分支,然后再回溯。DFS算法常用于解决以下类型的问题:在实际使用中,图的表示通常有以下几种方式:在下面的示例中,我们使用邻接表来表示图,因为它存储效率更高,适合大多数情况。以下是通过递归方式实现深度优先搜索的详细代码,并附带注释以帮助理解每个部分的功能 栈的实现方式不直接依赖于系统的调用栈,这对于深度大、可能导致栈溢出的情况特别有用

2301_81543552的博客 1449

深度优先遍历法 - 求解迷宫问题

题目 如下有8x8的迷宫图 其中,O表示通路方块,X表示障碍方块。假设入口位置为(0,0),出口为右下角方块位置(7,7) 设计一个程序求指定入口到出口的一条迷宫路径 思路 采用深度优先遍历方法 代码 #include &lt;stdio.h&gt; #define MaxN 10 int n = 8; char Maze[MaxN][MaxN]= { {'O...

小爱玄策 2028

【华为OD机试】查找单入口空闲区域

给定一个 m x n 的矩阵,由若干字符 ‘X’ 和 ‘O’构成,’X’表示该处已被占据,’O’表示该处空闲,请找到最大的单入口空闲区域。 解释: 空闲区域是由连通的’O’组成的区域,位于边界的’O’可以构成入口, 单入口空闲区域即有且只有一个位于边界的’O’作为入口的由连通的’O’组成的区域。 如果两个元素在水平或垂直方向相邻,则称它们是“连通”的。

算法菌的博客 264

八个方向(DFS)

【代码】八个方向(DFS)

j164548848645的博客 435

C++深度优先搜索DFS

扩展新的节点,不断递归执行这个过程,直到某个节点不能再扩展下一个节点为止。此时,则返回上一个节点重新寻找一个新的扩展节点。如此搜索下去,直到找到目标节点,或者搜索完所有节点为止。

闻缺陷则喜何志丹 1748

【物联网】探索NE555:一款经典的集成电路(超详细)

NE555是一种集成电路,其内部结构包括比较器、RS触发器、电压比较器和输出级三个主要功能模块,外部引脚则提供了与其他电路元件进行连接的接口。NE555的设计目的是为了提供一种简单方便的定时器解决方案,它广泛应用于模拟和数字电路中。NE555作为一款经典的集成电路,具备设计简单、易于使用和稳定可靠的特点,在电子领域发展了广泛的应用。从单稳态模式到多稳态模式,再到振荡器模式,NE555可以满足不同的需求,并且可以与其他电路元件灵活组合,扩展其功能。然而,需要注意的是NE555也有一些限制。

Goforyouqp的博客 6万+

单词方阵(从八个不同方向进行深搜)

题目描述 给一n \times nn×n的字母方阵,内可能蕴含多个“yizhong”单词。单词在方阵中是沿着同一方向连续摆放的。摆放可沿着88个方向的任一方向,同一单词摆放时不再改变方向,单词与单词之间可以交叉,因此有可能共用字母。输出时,将不是单词的字母用*代替,以突出显示单词。例如: 输入: 8 输出: qyizhong ...

qq_41681845的博客 658

python零基础入门到精通,python入门到精通教程

坚持到了这儿,恭喜你,表示你有做开发的潜力,其实我想说的上面的内容还是刚刚开始,刚开始大家不需要多么精通了解这些内容,除了Python方面的知识,每个部分掌握一点儿能进行基本开发就好,主要是不断练习,让自己跳出「舒适区」,进入「学习区」,但是又不进入「恐慌区」,不断给自己「喂招」。上述这份完整版的Python全套学习资料已经上传优快云官方,朋友们如果需要可以扫描下方二维码免费获取【保证100%免费】

YYmmsss的博客 3424

【搜索】迷宫问题(路径条数)

给出一个n*m的迷宫图和一个入口、一个出口,只能走上下左右。输出从迷宫入口到出口的路径条数。如果找不到路径输出-1。接下来是m行n列由1和0组成的数据,1表示可以走,0表示不可以走。最后一行是起始点和结束点。( 1 < n , m < 15 )第一行是两个数n,m。如果找不到路径输出-1。入口到出口的路径条数。

back_room的博客 583

deepfacelab下载安装及训练(小白篇),以及导出SAEHD为dfm文件,解决broken pipe问题

其中如果用的是RTX30系列显卡的话,需要把WIN10升级到20H4或更新版本,然后打开硬件加速,不然会出现训练时一直卡在第一个迭代不动了,我的服务器版本为22H2,符合。支持WIN10,win11,WIN7,LINUX,不支持mac(因为mac不支持NVIDIA显卡)

caoyongsheng的博客 3885

Ansys Zemax实战:5步搞定多模光纤耦合效率优化(附IMAE操作数详解)

本文详细介绍了使用Ansys Zemax优化多模光纤耦合效率的5个关键步骤,包括几何图像分析设置、IMAE操作数应用及偏振效应处理。通过实战案例解析,帮助工程师快速掌握光纤耦合效率提升技巧,特别针对IMAE操作数的配置保存机制和菲涅尔损耗控制进行深度讲解。

potato的博客 690

【DFS】深度优先搜索递归方式讲解

前言 记得第一次接触到DFS还是在去年大概三四月份,当时也是在准备比赛的时候听说DFS很重要(原谅我是个小白),然后就去Google了一波什么叫做DFS,当时的我刚开始学习C++,还没有学习数据结构,讲道理当时我看懂了算法原理,但是对于什么图呀,树呀的还真是一窍不通。后边学习了数据结构后,对于DFS原理也是相当的了解(自我感觉),但从来没有总结过,今天主要是进行DFS的算法进行简单的自我总结,一...

仰起嘴角 4万+

AMD SDP 优快云 系列文章设计

摘要 本文档规划了7篇AMD SDP协议解析系列文章的技术博客设计方案。基于《Scalable Data Port (SDP) Specification》1.5.0版本(122页),面向SoC/NoC领域的RTL设计与验证工程师,构建从基础概念到验证实现的知识体系。 系列文章严格遵循协议规范边界,采用五类证据标签区分内容来源(规范原文、勘误、验证推导等),禁止补充未定义的实现细节。包含端口控制、事务传输、一致性协议等核心内容,最终落实到验证平台设计与覆盖率模型。 每篇文章采用统一模板:明确规范依据、问题导

元直的博客 158

详解深度优先搜索(DFS,Depth-First Search)

在实际编程中,要注意递归的终止条件和避免无限递归的情况,也要处理好状态回溯,确保解的空间被正确探索。遍历整个网格,当我们遇到 ‘1’,我们会启动DFS并沉没(通过将 ‘1’ 变为 ‘0’)与之相连的所有陆地,岛屿数量加1。在每一步中,我们考虑那些还没有被选择的数字,将一个数字添加到当前排列中,然后递归调用,直到所有数字都被选中。DFS可以在搜索过程中解决许多问题,当需要检查所有可能的解决方案时,DFS是一个理想的选择,常见于解决递归问题和回溯算法。给定一个没有重复数字的序列,返回其所有可能的全排列。

m0_73916791的博客 2830

STM32CubeMX之定时器输入捕获

上一章介绍了STM32定时器的PWM输出功能,定时器的几个通道除了有输出功能外,还可以做输入用,可捕获信号的上升沿或下降沿,可以用于测量信号的频率、周期、占空比等。本篇文章将介绍用STM3...

zhang062061的专栏 1337

Vue - 超强实现网页禁止浏览器缩放功能,浏览器缩放时保持网页不变形、元素不会被挤压等,屏蔽浏览器鼠标滚轮缩放页面(提供详细示例代码,一次引入整个网站无人可以搞乱你的页面布局及样式)

vue,nuxt,禁止浏览器缩放,如何用户缩放浏览器导致页面变形,网页缩放后页面变形了怎么办,怎么解决网站被缩放后元素乱套错乱,vue怎么禁止网页不被缩放,vue如何禁止浏览器缩放,vue缩放网页变形影响布局怎么办,vue电脑分辨率及缩放导致页面变形的问题,前端页面解决浏览器或者系统被放大和缩小导致的显示问题,Vue中页面自适应缩放,如何防止Vue页面缩放时变形/调整大小,Vue项目中,防止页面被缩放和放大,vue等比例缩放网页,网页缩放后界面变形咋办,禁止页面缩放,vue禁止浏览器改变窗口大小,Vue项目

🏆 前端领域优质创作者 1万+

dfs深度优先搜索_图的深度优先搜索(DFS)

dfs深度优先搜索Depth First Search (DFS) is an algorithm that searches a graph/tree, in a depth-wise manner. 深度优先搜索 ( DFS )是一种以深度方式搜索图/树的算法。 There are many ways through which we can traverse through a graph...

从零开始的教程世界 4352

不会精准对比前人研究写“讨论与对比”段落?教你用ChatGPT辅助,直接让这部分提升一个档次(附提示词指令)

一个我觉得很有效的做法是,选取几篇具有代表性的文献,从研究方法、变量设置或结论方面进行对照分析,并指出本研究在哪些方面进行了补充或修正。除了简单说“提出了新的方法”或“首次应用某模型”,更需要说明这一做法在结果解读、研究设计或理论拓展上的具体意义,最好能够与现有研究进行比较,形成明确的差异化描述。段落应包含:研究结果解释、与前人研究对比、研究贡献、局限性反思,并在结尾提出未来研究的可能方向。讨论与对比部分一般位于文献综述、研究讨论或结果分析的后面,目的是对比已有研究,突出自己研究的价值与新意。

智能AI让学术科研更容易 170

《啊哈算法》之DFS深度优先搜索

dfs模板 = 遍历 + 边界,源码与输入输出,隐式return,递归解析 掌握了模板,加上适量刷题,不同类型dfs都能找到思路就好

IT OR 考公? 2203

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

深度优先搜索(DFS)总结

深度优先搜索(DFS)图的搜索算法深度优先搜索图示题例总结 图的搜索算法 深度优先搜索(又称DFS)是图的搜索算法的其中一种,另一种是广度优先搜索(BFS) 图的搜索算法可以看成是,从图的某一个点开始,通过遍历顶点和标记顶点来搜索图。 深度优先搜索 以迷宫问题为例,一个人被困在了迷宫里,为了走出迷宫,这个人需要访问迷宫的每一条路径和每一个十字路口(假设在最坏的情况下),那么怎么使得这个人记住他走...

Weleness的博客 5869

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

深度优先搜索 (depth-first search,DFS)

深度优先搜索 (depth-first search,DFS) 1. 深度优先搜索 (depth-first search,DFS) depth-first search,DFS:深度优先搜索 breadth-first search,BFS:广度优先搜索 Depth-first search (DFS) is an algorithm for traversing or searching tree or graph data structures. The algorithm starts at th

程永强 1507

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

DFS(深度优先搜索)

DFS(Depth-First Search,深度优先搜索)是一种经典的图遍历算法,广泛应用于树结构遍历、图论问题(如连通性分析、拓扑排序)、路径搜索、回溯算法等领域。

KARRAS的博客 1897

深度优先搜索(DFS)

本文介绍了深度优先搜索(DFS)的基本概念和实现方法。首先讲解了函数和递归的基础知识,为理解DFS做准备。然后详细解释了DFS的定义和"一条路走到黑"的搜索特性。最后以洛谷P1036选数问题为例,展示了DFS的具体编码实现,包括递归调用、回溯操作等核心代码。文章强调DFS可以用递归或循环+栈实现,但递归方式更直观易理解。通过这个例子,读者可以掌握如何应用DFS解决实际问题。

2302_79345957的博客 1192

DFS——深度优先搜索

什么是DFS DFS,中文名深度优先搜索,是一种图的搜索方式,本质上是一种递归。 dfs相当自由,学dfs可能最高境界就和打太极似的,无招胜有招 DFS的经典应用: 1.全排列 虽然感觉没有贴题目的必要 这应该是大多数dfs初学者的入门之题了,对于递归,我想读者要有这样一个概念,在递归的每一个过程中,我们都会取试着解决一个子问题,所以这个观念才是使用好dfs的关键,也就是想清楚当前要干什么,因为我们的每次尝试只不过是规模更小的子问题。 ...

qq_62213124的博客 3530

深度优先搜索Depth-First-Search,DFS

深度优先搜索算法(DFS)是一种用于遍历或搜索树或图的算法。沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所在边都己被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止。如果还存在未被发现的节点,则选择其中一个作为源节点并重复以上过程,整个进程反复进行直到所有节点都被访问为止。属于盲目搜索。 深度优先搜索是图论中的经典算法,利用深度...

隔壁小贺 738
上一篇: leetcode打卡day02---二分查找
下一篇: leetcode打卡day04---链表
helloppc90
博客等级 码龄9年 99粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值