matlab期末考试程序明天交,急需一篇!中等难度的,60~70行左右

matlab期末考试程序明天交,急需一篇!中等难度的,60~70行左右,第1张

最近正在学习的算法,加勒注释可以看一下

clear;close all;clc

C=[1,1;1,2;1,3;1,4];

NC_max=100;

m=32; % 蚂蚁

Alpha=1;

Beta=4;% 决定tao和miu重要性的参数

Rho=09; %衰减系数

Q=095;

%%-------------------------------------------------------------------------

%% 主要符号说明

%% C n个城市的坐标,n×2的矩阵

%% NC_max 最大迭代次数

%% m 蚂蚁个数

%% Alpha 表征信息素重要程度的参数

%% Beta 表征启发式因子重要程度的参数

%% Rho 信息素蒸发系数

%% Q 信息素增加强度系数

%% R_best 各代最佳路线

%% L_best 各代最佳路线的长度

%%=========================================================================

%%第一步:变量初始化

n=size(C,1);%n表示问题的规模(城市个数)

D=zeros(n,n);%D表示完全图的赋权邻接矩阵

for i=1:n

for j=i:n

if i~=j

D(i,j)=((C(i,1)-C(j,1))^2+(C(i,2)-C(j,2))^2)^05;

else

D(i,j)=eps; %i=j时不计算,应该为0,但后面的启发因子要取倒数,用eps(浮点相对精度)表示

end

D(j,i)=D(i,j); %对称矩阵

end

end

%%%%%%%%%%记录每两个城市间的距离 矩阵

Eta=1/D; %Eta为启发因子,这里设为距离的倒数

Tau=ones(n,n); %Tau为信息素矩阵

Tabu=zeros(m,n); %存储并记录路径的生成

NC=1; %迭代计数器,记录迭代次数

R_best=zeros(NC_max,n); %各代最佳路线

L_best=infones(NC_max,1); %各代最佳路线的长度

L_ave=zeros(NC_max,1); %各代路线的平均长度

visited=[];

while NC<=NC_max %停止条件之一:达到最大迭代次数,停止

%%第二步:将m只蚂蚁放到n个城市上

Randpos=[]; %随即存取

for i=1:(ceil(m/n)) %向上取整

Randpos=[Randpos,randperm(n)];

end

Tabu(:,1)=(Randpos(1,1:m))'; %取随机路径的前m位,m只蚂蚁的初始所在城市

%%第三步:m只蚂蚁按概率函数选择下一座城市,完成各自的周游

for j=2:n %所在城市不计算

for i=1:m %j,计算所有蚂蚁已经访问的城市个数+1 ,,i,蚂蚁序号

visited=Tabu(i,1:(j-1)); %记录已访问的城市,避免重复访问

J=zeros(1,(n-j+1)); %待访问的城市

P=J; %待访问城市的选择概率分布

Jc=1; %变量记录已经访问的个数

for k=1:n

if length(find(visited==k))==0 %开始时置0

J(Jc)=k;

Jc=Jc+1; %未访问的城市个数加1

end

end

%下面计算待选城市的概率分布

for k=1:length(J)

P(k)=(Tau(visited(end),J(k))^Alpha)(Eta(visited(end),J(k))^Beta); %最近访问的城市和未访问的城市之间的 选择优先级 信息素(前蚂蚁经验)和距离决定

end

P=P/(sum(P));

%按概率原则选取下一个城市

Pcum=cumsum(P); %cumsum,元素累加 即返回的新数组 第i个值为 输入数组前i个值之和

Select=find(Pcum>=rand); %若计算的概率大于原来的就选择这条路线

to_visit=J(Select(1));

Tabu(i,j)=to_visit;

end

end

if NC>=2

Tabu(1,:)=R_best(NC-1,:);

end

%%第四步:记录本次迭代最佳路线

L=zeros(m,1); %开始距离为0,m1的列向量

for i=1:m

R=Tabu(i,:);

for j=1:(n-1)

L(i)=L(i)+D(R(j),R(j+1)); %原距离加上第j个城市到第j+1个城市的距离

end

% L(i)=L(i)+D(R(1),R(n)); %一轮下来后返回起点的距离 ,我觉得没必要 %%%%%%%%%%<<<<<<<<<<<<--------------------

end

L_best(NC)=min(L); %最佳距离取最小

pos=find(L==L_best(NC));

R_best(NC,:)=Tabu(pos(1),:); %此轮迭代后的最佳路线

L_ave(NC)=mean(L); %此轮迭代后的平均距离

NC=NC+1; %迭代继续

%%第五步:更新信息素

Delta_Tau=zeros(n,n); %开始时信息素为nn的0矩阵

for i=1:m

for j=1:(n-1)

Delta_Tau(Tabu(i,j),Tabu(i,j+1))=Delta_Tau(Tabu(i,j),Tabu(i,j+1))+Q/L(i); %信息素增量与 本次迭代中某个蚂蚁 的总路程 成反比 最优路

%此次迭代 所有蚂蚁走过的路径 上的信息素增量 更新 线则 沿途所有路径点之间信息素增量最大

end

% Delta_Tau(Tabu(i,n),Tabu(i,1))=Delta_Tau(Tabu(i,n),Tabu(i,1))+Q/L(i);

%此次循环在整个路径上的信息素增量 ,同上 做回到起点时才用到

end

Tau=(1-Rho)Tau+Delta_Tau; %考虑信息素挥发,更新后的信息素 考虑到之前蚂蚁在沿途留下的 信息 受到各种因素而有所损失 都归为挥发

%%第六步:所有蚂蚁的行程表清零

Tabu=zeros(m,n);

end

%%第七步:输出结果

Pos=find(L_best==min(L_best)); %找到最佳路径(非0为真)

Shortest_Route=R_best(Pos(1),:) %最大迭代次数后最佳路径

Shortest_Length=L_best(Pos(1)) %最大迭代次数后最短距离

subplot(1,2,1) %绘制第一个子图形

N=length(R);

scatter(C(:,1),C(:,2));

hold on

plot([C(R(1),1),C(R(N),1)],[C(R(1),2),C(R(N),2)],'g')

hold on

for ii=2:N

plot([C(R(ii-1),1),C(R(ii),1)],[C(R(ii-1),2),C(R(ii),2)],'g')

hold on

end

title('旅行商问题优化结果 ')

subplot(1,2,2) %绘制第二个子图形

plot(L_best)

hold on %保持图形

plot(L_ave,'r')

title('平均距离和最短距离') %标题

R_best

我只告诉你什么是蚂蚁算法: 蚁群算法(ant colony optimization, ACO),又称蚂蚁算法,是一种用来在图中寻找优化路径的机率型技术。它由Marco Dorigo于1992年在他的博士论文中引入,其灵感来源于蚂蚁在寻找食物过程中发现路径的行为。

为什么小小的蚂蚁能够找到食物?他们具有智能么?设想,如果我们要为蚂蚁设计一个人工智能的程序,那么这个程序要多么复杂呢?首先,你要让蚂蚁能够避开障碍物,就必须根据适当的地形给它编进指令让他们能够巧妙的避开障碍物,其次,要让蚂蚁找到食物,就需要让他们遍历空间上的所有点;再次,如果要让蚂蚁找到最短的路径,那么需要计算所有可能的路径并且比较它们的大小,而且更重要的是,你要小心翼翼的编程,因为程序的错误也许会让你前功尽弃。这是多么不可思议的程序!太复杂了,恐怕没人能够完成这样繁琐冗余的程序。

然而,事实并没有你想得那么复杂,上面这个程序每个蚂蚁的核心程序编码不过100多行!为什么这么简单的程序会让蚂蚁干这样复杂的事情?答案是:简单规则的涌现。事实上,每只蚂蚁并不是像我们想象的需要知道整个世界的信息,他们其实只关心很小范围内的眼前信息,而且根据这些局部信息利用几条简单的规则进行决策,这样,在蚁群这个集体里,复杂性的行为就会凸现出来。这就是人工生命、复杂性科学解释的规律!那么,这些简单规则是什么呢?下面详细说明:

1、范围:

蚂蚁观察到的范围是一个方格世界,蚂蚁有一个参数为速度半径(一般是3),那么它能观察到的范围就是33个方格世界,并且能移动的距离也在这个范围之内。

2、环境:

蚂蚁所在的环境是一个虚拟的世界,其中有障碍物,有别的蚂蚁,还有信息素,信息素有两种,一种是找到食物的蚂蚁洒下的食物信息素,一种是找到窝的蚂蚁洒下的窝的信息素。每个蚂蚁都仅仅能感知它范围内的环境信息。环境以一定的速率让信息素消失。

3、觅食规则:

在每只蚂蚁能感知的范围内寻找是否有食物,如果有就直接过去。否则看是否有信息素,并且比较在能感知的范围内哪一点的信息素最多,这样,它就朝信息素多的地方走,并且每只蚂蚁多会以小概率犯错误,从而并不是往信息素最多的点移动。蚂蚁找窝的规则和上面一样,只不过它对窝的信息素做出反应,而对食物信息素没反应。

4、移动规则:

每只蚂蚁都朝向信息素最多的方向移,并且,当周围没有信息素指引的时候,蚂蚁会按照自己原来运动的方向惯性的运动下去,并且,在运动的方向有一个随机的小的扰动。为了防止蚂蚁原地转圈,它会记住最近刚走过了哪些点,如果发现要走的下一点已经在最近走过了,它就会尽量避开。

5、避障规则:

如果蚂蚁要移动的方向有障碍物挡住,它会随机的选择另一个方向,并且有信息素指引的话,它会按照觅食的规则行为。

7、播撒信息素规则:

每只蚂蚁在刚找到食物或者窝的时候撒发的信息素最多,并随着它走远的距离,播撒的信息素越来越少。

根据这几条规则,蚂蚁之间并没有直接的关系,但是每只蚂蚁都和环境发生交互,而通过信息素这个纽带,实际上把各个蚂蚁之间关联起来了。比如,当一只蚂蚁找到了食物,它并没有直接告诉其它蚂蚁这儿有食物,而是向环境播撒信息素,当其它的蚂蚁经过它附近的时候,就会感觉到信息素的存在,进而根据信息素的指引找到了食物。

说了这么多,蚂蚁究竟是怎么找到食物的呢?

在没有蚂蚁找到食物的时候,环境没有有用的信息素,那么蚂蚁为什么会相对有效的找到食物呢?这要归功于蚂蚁的移动规则,尤其是在没有信息素时候的移动规则。首先,它要能尽量保持某种惯性,这样使得蚂蚁尽量向前方移动(开始,这个前方是随机固定的一个方向),而不是原地无谓的打转或者震动;其次,蚂蚁要有一定的随机性,虽然有了固定的方向,但它也不能像粒子一样直线运动下去,而是有一个随机的干扰。这样就使得蚂蚁运动起来具有了一定的目的性,尽量保持原来的方向,但又有新的试探,尤其当碰到障碍物的时候它会立即改变方向,这可以看成一种选择的过程,也就是环境的障碍物让蚂蚁的某个方向正确,而其他方向则不对。这就解释了为什么单个蚂蚁在复杂的诸如迷宫的地图中仍然能找到隐蔽得很好的食物。

当然,在有一只蚂蚁找到了食物的时候,其他蚂蚁会沿着信息素很快找到食物的。

蚂蚁如何找到最短路径的?这一是要归功于信息素,另外要归功于环境,具体说是计算机时钟。信息素多的地方显然经过这里的蚂蚁会多,因而会有更多的蚂蚁聚集过来。假设有两条路从窝通向食物,开始的时候,走这两条路的蚂蚁数量同样多(或者较长的路上蚂蚁多,这也无关紧要)。当蚂蚁沿着一条路到达终点以后会马上返回来,这样,短的路蚂蚁来回一次的时间就短,这也意味着重复的频率就快,因而在单位时间里走过的蚂蚁数目就多,洒下的信息素自然也会多,自然会有更多的蚂蚁被吸引过来,从而洒下更多的信息素……;而长的路正相反,因此,越来越多地蚂蚁聚集到较短的路径上来,最短的路径就近似找到了。也许有人会问局部最短路径和全局最短路的问题,实际上蚂蚁逐渐接近全局最短路的,为什么呢?这源于蚂蚁会犯错误,也就是它会按照一定的概率不往信息素高的地方走而另辟蹊径,这可以理解为一种创新,这种创新如果能缩短路途,那么根据刚才叙述的原理,更多的蚂蚁会被吸引过来。

引申:

跟着蚂蚁的踪迹,你找到了什么?通过上面的原理叙述和实际 *** 作,我们不难发现蚂蚁之所以具有智能行为,完全归功于它的简单行为规则,而这些规则综合起来具有下面两个方面的特点:

1、多样性

2、正反馈

多样性保证了蚂蚁在觅食的时候不置走进死胡同而无限循环,正反馈机制则保证了相对优良的信息能够被保存下来。我们可以把多样性看成是一种创造能力,而正反馈是一种学习强化能力。正反馈的力量也可以比喻成权威的意见,而多样性是打破权威体现的创造性,正是这两点小心翼翼的巧妙结合才使得智能行为涌现出来了。

引申来讲,大自然的进化,社会的进步、人类的创新实际上都离不开这两样东西,多样性保证了系统的创新能力,正反馈保证了优良特性能够得到强化,两者要恰到好处的结合。如果多样性过剩,也就是系统过于活跃,这相当于蚂蚁会过多的随机运动,它就会陷入混沌状态;而相反,多样性不够,正反馈机制过强,那么系统就好比一潭死水。这在蚁群中来讲就表现为,蚂蚁的行为过于僵硬,当环境变化了,蚂蚁群仍然不能适当的调整。

既然复杂性、智能行为是根据底层规则涌现的,既然底层规则具有多样性和正反馈特点,那么也许你会问这些规则是哪里来的?多样性和正反馈又是哪里来的?我本人的意见:规则来源于大自然的进化。而大自然的进化根据刚才讲的也体现为多样性和正反馈的巧妙结合。而这样的巧妙结合又是为什么呢?为什么在你眼前呈现的世界是如此栩栩如生呢?答案在于环境造就了这一切,之所以你看到栩栩如生的世界,是因为那些不能够适应环境的多样性与正反馈的结合都已经死掉了,被环境淘汰了!

参数说明:

最大信息素:蚂蚁在一开始拥有的信息素总量,越大表示程序在较长一段时间能够存在信息素。信息素消减的速度:随着时间的流逝,已经存在于世界上的信息素会消减,这个数值越大,那么消减的越快。

错误概率表示这个蚂蚁不往信息素最大的区域走的概率,越大则表示这个蚂蚁越有创新性。

速度半径表示蚂蚁一次能走的最大长度,也表示这个蚂蚁的感知范围。

记忆能力表示蚂蚁能记住多少个刚刚走过点的坐标,这个值避免了蚂蚁在本地打转,停滞不前。而这个值越大那么整个系统运行速度就慢,越小则蚂蚁越容易原地转圈。

-----例子-----

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" ">

首先,Matlab是一个工具,它不是一个方法。

其次,我给你推荐一本书

《MATLAB 在数学建模中的应用(第2版)》

然后它的目录可以回答你的问题:

第1章 数学建模常规方法及其MATLAB实现

11 MATLAB与数据文件的交互

111 MATLAB与Excel的交互

112 MATLAB与TXT交互

113 MATLAB界面导入数据的方法

12 数据拟合方法

121 多项式拟合

122 指定函数拟合

123 曲线拟合工具箱

13 数据拟合应用实例

131 人口预测模型

132 薄膜渗透率的测定

14 数据的可视化

141 地形地貌图形的绘制

142 车灯光源投影区域的绘制(CUMCM2002A)

15 层次分析法(AHP)

151 层次分析法的应用场景

152 AHPMATLAB程序设计

第2章 规划问题的MATLAB求解

21 线性规划

211 线性规划的实例与定义

212 线性规划的MATLAB标准形式

213 线性规划问题解的概念

214 求解线性规划的MATLAB解法

22 非线性规划

221 非线性规划的实例与定义

222 非线性规划的MATLAB解法

223 二次规划

23 整数规划

231 整数规划的定义

232 01整数规划

233 随机取样计算法

第3章 数据建模及MATLAB实现

31 云模型

311 云模型基础知识

312 云模型的MATLAB程序设计

32 Logistic回归

321 Logistic模型

322 Logistic回归MATLAB程序设计

33 主成分分析

331 PCA基本思想

332 PCA步骤

333 主成分分析MATLAB程序设计

34 支持向量机(SVM)

341 SVM基本思想

342 理论基础

343 支持向量机MATLAB程序设计

35 K均值(KMeans)

351 KMeans原理、步骤和特点

352 KMeans聚类MATLAB程序设计

36 朴素贝叶斯判别法

361 朴素贝叶斯判别模型

362 朴素贝叶斯判别法MATLAB设计

37 数据建模综合应用

参考文献

第4章 灰色预测及其MATLAB实现

41 灰色系统基本理论

411 灰色关联度矩阵

412 经典灰色模型GM(1,1)

413 灰色Verhulst模型

42 灰色系统的程序设计

421 灰色关联度矩阵的程序设计

422 GM(1,1)的程序设计

423 灰色Verhulst模型的程序设计

43 灰色预测的MATLAB程序

431 典型程序结构

432 灰色预测程序说明

44 灰色预测应用实例

441 实例一长江水质的预测(CUMCM2005A)

442 实例二预测与会代表人数(CUMCM2009D)

45 小结

参考文献

第5章 遗传算法及其MATLAB实现

51 遗传算法基本原理

511 人工智能算法概述

512 遗传算法生物学基础

513 遗传算法的实现步骤

514 遗传算法的拓展

52 遗传算法的MATLAB程序设计

521 程序设计流程及参数选取

522 MATLAB遗传算法工具箱

53 遗传算法应用案例

531 案例一:无约束目标函数最大值遗传算法求解策略

532 案例二:CUMCM中多约束非线性规划问题的求解

533 案例三:BEATbx遗传算法工具箱的应用——电子商务中转化率影响因素研究

参考文献

第6章 模拟退火算法及其MATLAB实现

61 算法的基本理论

611 算法概述

612 基本思想

613 其他一些参数的说明

614 算法基本步骤

615 几点说明

62 算法的MATLAB实现

621 算法设计步骤

622 典型程序结构

63 应用实例:背包问题的求解

631 问题的描述

632 问题的求解

64 模拟退火程序包ASA简介

641 ASA的优化实例

642 ASA的编译

643 MATLAB版ASA的安装与使用

65 小结

66 延伸阅读

参考文献

第7章 人工神经网络及其MATLAB实现

71 人工神经网络基本理论

711 人工神经网络模型拓扑结构

712 常用激励函数

713 常见神经网络理论

72 BP神经网络的结构设计

721 鲨鱼嗅闻血腥味与BP神经网络训练

722 透视神经网络的学习步骤

723 BP神经网络的动态拟合过程

73 RBF神经网络的结构设计

731 梯度训练法RBF神经网络的结构设计

732 RBF神经网络的性能

74 应用实例

741 基于MATLAB源程序公路运量预测

742 基于MATLAB工具箱公路运量预测

743 艾滋病治疗最佳停药时间的确定(CUMCM2006B)

744 RBF神经网络预测新客户流失概率

75 延伸阅读

751 从金融分析中的小数定理谈神经网络的训练样本遴选规则

752 小议BP神经网络的衍生机理

参考文献

第8章粒子群算法及其MATLAB实现

81 PSO算法相关知识

811 初识PSO算法

812 PSO算法的基本理论

813 PSO算法的约束优化

814 PSO算法的优缺点

82 PSO算法程序设计

821 程序设计流程

822 PSO算法的参数选取

823 PSO算法MATLAB源程序范例

83 应用案例:基于PSO算法和BP算法训练神经网络

831 如何评价网络的性能

832 BP算法能够搜索到极值的原理

833 PSOBP神经网络的设计指导原则

834 PSO算法优化神经网络结构

835 PSOBP神经网络的实现

参考文献

第9章 蚁群算法及其MATLAB实现

91 蚁群算法原理

911 蚁群算法基本思想

912 蚁群算法数学模型

913 蚁群算法流程

92 蚁群算法的MATLAB实现

921 实例背景

922 算法设计步骤

923 MATLAB程序实现

924 程序执行结果与分析

93 算法关键参数的设定

931 参数设定的准则

932 蚂蚁数量

933 信息素因子

934 启发函数因子

935 信息素挥发因子

936 信息素常数

937 最大迭代次数

938 组合参数设计策略

94 应用实例:最佳旅游方案(苏北赛2011B)

941 问题描述

942 问题的求解和结果

95 本章小结

参考文献

第10章 小波分析及其MATLAB实现

101 小波分析基本理论

1011 傅里叶变换的局限性

1012 伸缩平移和小波变换

1013 小波变换入门和多尺度分析

1014 小波窗函数自适应分析

102 小波分析MATLAB程序设计

1021 小波分析工具箱函数指令

1022 小波分析程序设计综合案例

103 小波分析应用案例

1031 案例一:融合拓扑结构的小波神经网络

1032 案例二:血管重建引出的图像数字水印

参考文献

第11章 计算机虚拟及其MATLAB实现

111 计算机虚拟基本知识

1111 从3G移动互联网协议WCDMA谈MATLAB虚拟

1112 计算机虚拟与数学建模

1113 数值模拟与经济效益博弈

112 数值模拟MATLAB程序设计

1121 微分方程组模拟

1122 服从概率分布的随机模拟

1123 蒙特卡罗模拟

113 动态仿真MATLAB程序设计

1131 MATLAB音频处理

1132 MATLAB常规动画实现

114 应用案例:四维水质模型

1141 问题的提出

1142 问题的分析

1143 四维水质模型准备

1144 条件假设与符号约定

1145 四维水质模型的组建

1146 模型求解

1147 计算机模拟情境

参考文献

下篇 真题演习

第12章 **中的数学(CUMCM2002B)

121 问题的提出

122 模型的建立

1221 模型假设与符号说明

1222 模型的准备

1223 模型的建立

123 模型的求解

1231 求解的思路

1232 MATLAB程序

1233 程序结果

124 技巧点评

参考文献

第13章 露天矿卡车调度问题(CUMCM2003B)

131 问题的提出

132 基本假设与符号说明

1321 基本假设

1322 符号说明

133 问题分析及模型准备

134 原则①:数学模型(模型1)的建立与求解

1341 模型的建立

1342 模型求解

135 原则②:数学模型(模型2)的建立与求解

136 技巧点评

参考文献

第14章 奥运会商圈规划问题(CUMCM2004A)

141 问题的描述

142 基本假设、名词约定及符号说明

1421 基本假设

1422 符号说明

1423 名词约定

143 问题分析与模型准备

1431 基本思路

1432 基本数学表达式的构建

144 设置MS网点数学模型的建立与求解

1441 模型建立

1442 模型求解

145 设置MS网点理论体系的建立

146 商区布局规划的数学模型

1461 模型建立

1462 模型求解

147 模型的评价及使用说明

1471 模型的优点

1472 模型的缺点

148 技巧点评

参考文献

第15章 交巡警服务平台的设置与调度(CUMCM2011B)

151 问题的提出

152 问题的分析

153 基本假设

154 问题1模型的建立与求解

1541 交巡警服务平台管辖范围分配

1542 交巡警的调度

1543 最佳新增服务平台设置

155 问题2模型的建立和求解

1551 全市服务平台的合理性分析问题的模型与求解

1552 搜捕嫌疑犯实例的模型与求解

156 模型的评价与改进

1561 模型优点

1562 模型缺点

157 技巧点评

参考文献

第16章 葡萄酒的评价(CUMCM2012A)

161 问题的提出

162 基本假设

163 问题①模型的建立和求解

1631 问题①的分析

1632 模型的建立和求解

164 问题②模型的建立和求解

1641 问题②的基本假设和分析

1642 模型的建立和求解

165 问题③模型的建立和求解

1651 问题③的分析

1652 模型的建立和求解

166 问题④模型的建立和求解

1661 问题④的分析

1662 模型的建立和求解

167 论文点评

参考文献

附件数学建模参赛经验

一、如何准备数学建模竞赛

二、数学建模队员应该如何学习MATLAB

三、如何在数学建模竞赛中取得好成绩

四、数学建模竞赛中的项目管理和时间管理

五、一种非常实用的数学建模方法——目标建模法

以上就是关于matlab期末考试程序明天交,急需一篇!中等难度的,60~70行左右全部的内容,包括:matlab期末考试程序明天交,急需一篇!中等难度的,60~70行左右、用蚂蚁算法来实现公交线网优化,谁有源代码、MATLAB建模方法有哪些等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9523619.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存