自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 [5]Java开发实习面试打卡

[4]Java开发实习面试打卡1.常用SQL语句数据定义语言DDL(Data Ddefinition Language) CREATE,DROP,ALTER主要为以上操作 集对逻辑结构等有操作的,其中包括表结构,视图和索引.数据查询语言DQL(Data Query Language) SELECT 这个较好理解 即查询操作,以select关键字.各种简单查询,连续查询等都属于DQL.数据操纵语言DML(Data Manipulation Language) INSERT,UPDATE,DELETE

2022-04-04 18:22:15 1008

原创 [4]Java开发实习面试打卡

1.事务1.1.什么是数据库事务?事务是一个不可分割的数据库操作序列,也是数据库并发控制的基本单位,其执行结果必须使数据库从一种一致性状态变到另一种一致性状态.事务是逻辑上的一组操作,要么都执行,要么都不执行.1.2.事务的四大特性(ACID)原子性:事务是最小的执行单位,不允许分割.事务的原子性确保动作要么全部完成,要么完全不起作用.一致性:执行事务前后,数据保持一致,多个事务对同一个数据读取的结果是相同的.隔离性:并发访问数据库时,一个用户的事务不被其他事务所干扰,各并发事务之间数据库是

2022-03-30 15:53:05 1354

原创 [3]Java开发实习面试打卡

1.创建索引的原则(重中之重)最好符合以下几个原则:1.最左前缀匹配原则,组合索引非常重要的原则,mysql会一直向右匹配直到遇到范围查询(>,<,between,like)就停止匹配.2.较频繁作为查询条件的字段才去创建索引3.更新频繁字段不适合创建索引4.若是不能有效区分数据的列不适合做索引列.5....

2022-03-29 11:18:48 1338

原创 [2]Java开发实习面试打卡

[2]Java开发实习面试打卡-Mysql面试题1.数据库三范式第一范式:如果每列(或者每个属性)都是不可再分的最小数据单元第二范式:如果一个关系满足第一范式,并且除了主键以外的其它列,都依赖于该主键第三范式:如果一个关系满足第二范式,并且不依赖于除了主键以外的其它列2.引擎:MySQL存储引擎MyISAM与InnoDB区别Innodb引擎:Innodb引擎提供了对数据库ACID事务的支持.并且还提供了行级锁和外键的约束.它的设计的目标就是处理大数据容量的数据库系统.MyIASM引擎(原本

2022-03-25 15:30:33 1118

原创 [1]Java开发实习面试打卡

1.如何实现一个IOC容器1.配置文件配置包扫描路径2.递归包扫描获取.class文件3.反射,确定需要交给IOC管理的类4.对需要注入的类进行依赖注入1.配置文件中指定需要扫描的包路径2.定义一些注解,分别表示访问控制层, 业务服务层, 数据持久层, 依赖注入注解, 获取配置文件注解3.从配置文件中获取需要扫描的包路径, 获取到当前路径下的文件信息及文件夹信息, 我们将当前路径下所有以.class结尾的文件添加到一个Set集合中进行存储4.遍历这个set集合, 获取在类上有指定注解的类

2022-03-23 15:41:49 3955

原创 SpringBoot - 自动装配原理

SpringBoot - 自动装配原理出自狂神说Javapom.xmlspring-boot-dependencies:核心依赖在父工程中我们在写或者引入一些SpringBoot依赖的时候,不需要指定版本,就因为有这些版本仓库启动器 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot

2021-12-24 11:57:21 97

原创 Mybatis-Plus自动填充功能 - 踩坑

Mybatis-Plus自动填充功能 - 踩坑今天柯南君想用MybatisPlus自动填充功能来填充创建时间和修改时间的时候,按照Mybatis-Plus自动填充功能的配置来配置时,发现未生效。第一步:注解填充字段 /** * 创建时间 */ @TableField(value = "create_time", fill = FieldFill.INSERT) private LocalDateTime createTime; /** *

2021-12-22 15:12:40 941

原创 HTTP + 加密 + 认证 + 完整性保护 = HTTPS(简单)

HTTP + 加密 + 认证 + 完整性保护 = HTTPS柯南语录:星河随水流聚散碎碎心念坠落川想问你平安 却不敢此生第一次胆寒半生少年如梦千帆灼灼心光驱不散此生既有了这牵绊我怎好独自黯然还没带你纵横群山还没将你的发轻绾还没好好在这纷乱里纠缠欠我(你)那把刀还没还恢恢江湖 与你混迹不曾怕等我替你踏遍天涯巍巍江山 为你愿把热血洒管它又是谁的天下极寒之雪 飘到哪里才是家不如让我把你融化当春艳阳 无形却化作坚实的铠甲至爱无华HTTP协议中可能存在信息窃听或身份伪装

2021-12-15 16:46:50 2498

原创 HTTP入门

HTTP入门柯南语录:城市黎明的灯火总有光环在陨落模仿者一个又一个无人问津的角色你选择去崇拜谁呢 怨恨谁呢假装热情的冷漠假装自由的枷锁你最后成为了什么燃烧华丽的烟火绽放一次就足够了 奢求什么无名之辈 我是谁忘了谁 也无所谓谁不是 拼了命走到生命的结尾也许很累一身狼狈也许卑微一生无为也许永远成为不了 你的光辉无名之辈 我是谁忘了谁 也无所谓继续追 谁的光荣不是伴着眼泪也许很累一身狼狈也许卑微一生无为谁生来不都是一样 尽管叫我无名之辈

2021-12-14 15:47:53 288

原创 Java虚拟机 - 垃圾回收

JVM垃圾回收柯南语录:比你厉害的人都在努力,你还有什么理由不努力。垃圾收集器(Garbage Collection,简称GC),垃圾收集需要完成的三件事情:·哪些内存需要回收?·什么时候回收?·如何回收?1. 那如何判断对象是否存活呢?在堆里面存放着Java世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象之中哪些还“存活”着,哪些已经“死去”(“死去”即不可能再被任何途径使用的对象)了。1.1. 引用计数法在对象中添加一个引用计数器,每当有一个

2021-12-09 14:09:21 468

原创 Java虚拟机 - 运行时数据区域

Java虚拟机 - 运行时数据区域柯南语录:每天学习一小点,未来无限好。1. 程序计数器(Program Counter Register寄存器)作用:记住下一条jvm指令的执行地址特点:(1)线程私有的(2)不会存在内存溢出(OutOfMemoryError)2. Java虚拟机栈(Java Virtual Machine Stacks)每个线程运行时所需要的内存,称虚拟机栈每个栈由多个栈帧(Frame)组成,对应每次方法调用时所占用的内存每个线程只能有一个活动栈帧,对应着当前

2021-12-06 18:15:56 906

原创 《算法图解》读书笔记 - 狄克斯特拉算法(Dijkstra)

《算法图解》读书笔记 - 狄克斯特拉算法(Dijkstra)应用于有向加权图中前往X的最短路径。狄克斯特拉算法步骤:(1)找出“最便宜”的节点,即可在最短时间内到达的节点。(2)更新该节点的邻居的开销。(3)重复这个过程,直到对图中的每个节点都这样做了。(4)计算最终路径。第一步:找出最便宜的节点。你站在起点,不知道该前往节点A还是前往节点B。前往这两个节点都要多长时间呢?前往节点A需要6分钟,而前往节点B需要2分钟。至于前往其他节点,你还不知道需要多长时间。由于你还不知道前往终

2021-12-03 17:29:41 425

原创 《深入浅出MyBatis技术原理与实战》读书笔记 - 动态SQL

MyBatis动态SQL元素的介绍用法

2021-12-01 17:58:40 503

原创 《深入浅出MyBatis技术原理与实战》读书笔记 - MyBatis入门与配置

MyBatis入门与配置MyBatis:一个半自动映射的框架,之所以称它为半自动,是因为它需要手工匹配提供POJO,SQL和映射关系。1. MyBatis的基本构成MyBatis的核心组件:SqlSessionFactoryBuilder(构造器):它会根据配置信息或者代码来生成SqlSessionFactory(工厂接口)SqlSessionFactory:依靠工厂来生成SqlSession(会话)SqlSession:是一个既可以发送SQL去执行并返回结果,也可以获取Mapper接口

2021-11-30 20:03:31 663

原创 《算法图解》读书笔记 - 快速排序

《算法图解》- 快速排序快速排序------一种常用的优雅的排序算法,快速排序使用分而治之的策略。1. 分而治之D&C(dvide and conquer)算法是递归的。使用D&C解决问题的过程包括两个步骤:(1)找出基线条件,这种条件必须尽可能简单。(2)不断将问题分解(或者说缩小规模),直到符合基线条件。D&C并非可用于解决问题的算法,而是一种解决问题的思路。2. 快速排序快速排序是一种常用的排序算法,比选择排序快得多。例如,C语言标准库中的函数qsor

2021-11-23 15:26:14 791

原创 Java进阶学习 - Dubbo框架(持续更新中~~)

Java进阶学习 - Dubbo框架1.简介Dobbo是一个高性能的RPC框架,解决了分布式钟的调用问题优点:解决了分布式系统中互相调用问题缺点:缺少统一管理的调度中心2.为什么Dubbo说自己性能高?要从底层原理说起,一个RPC框架-远程过程调用,提升性能的最关键,最耗时的两方面入手:序列化和网络通信1. 序列化本地的对象要在网络上传输,必须要实现Serializable接口。然而Dubbo采用的就是最高效的二进制流。2. 网络通信不同于HTTP需要进行7步走(三次握手和四次挥手

2021-11-16 17:45:15 1610

原创 mysql-5.7.35-winx64下载安装配置

mysql-5.7.35-winx64下载安装配置1.下载安装mysql官网最新版本其它版本下载完成后将压缩包解压到自己选定的目录解压完成后有以下目录2.配置1.新建一个my.tx的文本文件,再改为my.ini。2.编写my.ini。放入自己安装的路径[mysqld]#设置3306端口port=3306#设置mysql的安装目录basedir=D:\mysql-5.7.35-winx64#设置mysql数据库的数据的存放目录datadir=D:\mysql

2021-09-08 16:31:08 1984 4

原创 DataBase-数据库基础函数

DataBase-数据库基础函数上一篇 DataBase-数据库基本操作部门表CREATE TABLE dept( #部门表 deptno int primary key auto_increment NOT NULL, #部门编号 dname VARCHAR(20), #部门名称 location VARCHAR(13) #部门地点);INSERT INTO dept VALUES(1, 'accounting', '一区');INSERT INTO dept VALUES

2021-05-31 20:29:13 498 1

原创 DataBase-数据库基本操作

DataBase-数据库基本操作SQL语句定义:结构化查询语言(Structured Query Language) 简称 SQL。分类:DML(Data Manipulation language) 数据操纵语言:insert, delete, update, select。DDL(Data Definition Language) 数据定义语言:create。DCL(Data Control Language) 数据控制语言:revoke。DQL(Data Query Language)

2021-05-29 16:47:29 1635 3

原创 PCA算法(实现降维)

PCA算法步骤:例题:数据:python代码:小编用的是Jupyter Notebook运行的哈!代码仅供参考,此代码不足之处还请告诉小编import pandas as pdimport numpy as npdata = pd.read_excel('data.xlsx',encoding="gbk") #小编将上面数据放进了data文档里面了data = data.values #转化为数组area = data[:,:1]data = data[:,

2020-10-18 23:20:08 1409

原创 P1111 修复公路(并查集+排序)

P1111 修复公路题目背景A地区在地震过后,连接所有村庄的公路都造成了损坏而无法通车。政府派人修复这些公路。题目描述给出A地区的村庄数N,和公路数M,公路是双向的。并告诉你每条公路的连着哪两个村庄,并告诉你什么时候能修完这条公路。问最早什么时候任意两个村庄能够通车,即最早什么时候任意两条村庄都存在至少一条修复完成的道路(可以由多条公路连成一条道路)输入格式第1行两个正整数N,M下面M行,每行3个正整数x,y,t,告诉你这条公路连着x,y两个村庄,在时间t时能修复完成这条公路。输出格式如果

2020-10-16 17:30:08 239

原创 2020蓝桥杯B组7月省赛 试题E:矩阵(详解)

我的思路主要思想是先放第一行,在用多余的数放第二行。dp[i][j]表示从i个数中选择j个数放第一行,其余i-j个数放第二行,前提是i - j <= j 第二行个数需要小于等于第一行个数。答案:1340运行代码#include<bits/stdc++.h>using namespace std;int dp[2030][1020];int main () { int n = 2020; dp[1][1] = 1; for (int i = 2; i <=.

2020-10-16 11:03:49 2134 3

原创 P1049 装箱问题(简单动规)

P1049 装箱问题题目描述有一个箱子容量为VV(正整数,0≤V≤20000),同时有n个物品(0<n≤30,每个物品有一个体积(正整数)。要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入格式1个整数,表示箱子容量1个整数,表示有n个物品接下来n行,分别表示这n个物品的各自体积输出格式1个整数,表示箱子剩余空间。输入输出样例输入 #12468312797输出 #10说明/提示NOIp2001普及组 第4题我的思路这是一题简单的动态规

2020-10-15 21:10:30 358

原创 P1757 通天之分组背包(dp)

P1757 通天之分组背包题目背景直达通天路·小 A 历险记第二篇题目描述自 01 背包问世之后,小 A 对此深感兴趣。一天,小 A 去远游,却发现他的背包不同于 01 背包,他的物品大致可分为 k 组,每组中的物品相互冲突,现在,他想知道最大的利用价值是多少。输入格式两个数 m,n,表示一共有 n 件物品,总重量为 m。接下来 n 行,每行 3 个数 ai,bi,ci表示物品的重量,利用价值,所属组数。输出格式一个数,最大的利用价值。输入输出样例输入 #145 310 10 1

2020-10-15 20:56:48 228

原创 P1802 5倍经验日(dp)

P1802 5倍经验日题目背景现在乐斗有活动了!每打一个人可以获得5倍经验!absi2011却无奈的看着那一些比他等级高的好友,想着能否把他们干掉。干掉能拿不少经验的。题目描述现在absi2011拿出了x个迷你装药物(嗑药打人可耻….),准备开始与那些人打了由于迷你装一个只能管一次,所以absi2011要谨慎的使用这些药,悲剧的是,没到达最少打败该人所用的属性药了他打人必输>.<所以他用2个药去打别人,别人却表明3个药才能打过,那么相当于你输了并且这两个属性药浪费了。现在有n个好友,

2020-10-13 07:50:04 463

原创 P1683 入门(dfs + 涂色)

P1683 入门题目描述不是任何人都可以进入桃花岛的,黄药师最讨厌象郭靖一样呆头呆脑的人。所以,他在桃花岛的唯一入口处修了一条小路,这条小路全部用正方形瓷砖铺设而成。有的瓷砖可以踩,我们认为是安全的,而有的瓷砖一踩上去就会有喷出要命的毒气,那你就死翘翘了,我们认为是不安全的。你只能从一块安全的瓷砖上走到与他相邻的四块瓷砖中的任何一个上,但它也必须是安全的才行。由于你是黄蓉的朋友,她事先告诉你哪些砖是安全的、哪些砖是不安全的,并且她会指引你飞到第一块砖上(第一块砖可能在任意安全位置),现在她告诉你进入桃

2020-10-12 11:01:57 382

原创 P1657 选书(变形dfs)

P1657 选书题目描述学校放寒假时,信息学奥赛辅导老师有1,2,3……x本书,要分给参加培训的x个人,每人只能选一本书,但是每人有两本喜欢的书。老师事先让每个人将自己喜欢的书填写在一张表上。然后根据他们填写的表来分配书本,希望设计一个程序帮助老师求出所有可能的分配方案,使每个学生都满意。输入格式第1行:一个数x第2行~第1+x行:每行两个数,表示ai喜欢的书的序号输出格式只有一个数:总方案数total。输入输出样例输入 #151 34 52 51 43 5输出 #12

2020-10-11 08:49:11 396

原创 P2404 自然数的拆分问题(简单dfs + 回溯)

P2404 自然数的拆分问题题目描述任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和。现在给你一个自然数n,要求你求出n的拆分成一些数字的和。每个拆分后的序列中的数字从小到大排序。然后你需要输出这些序列,其中字典序小的序列需要优先输出。输入格式输入:待拆分的自然数n。输出格式输出:若干数的加法式子。输入输出样例输入 #17输出 #11+1+1+1+1+1+11+1+1+1+1+21+1+1+1+31+1+1+2+21+1+1+41+1+2+31+1+51+

2020-10-09 13:39:36 1285 2

原创 P3613 【深基15.例2】寄包柜(STL)

P3613 【深基15.例2】寄包柜输入格式第一行 2 个整数 n 和 q,寄包柜个数和询问次数。接下来 q 个整数,表示一次操作。输出格式对于查询操作时,输出答案。输入输出样例输入 #15 41 3 10000 1145141 1 1 12 3 100002 1 1输出 #11145141我的思路本题思路很简单,就是用一个二维数组存储第i个柜子和第j个格子。不过我个人认为用二维数组过于浪费空间,所以用STL中的map来存储。AC代码#include<bit

2020-10-08 17:05:32 448

原创 P1507 NASA的食物计划(dp超详解)

P1507 NASA的食物计划题目背景NASA(美国航空航天局)因为航天飞机的隔热瓦等其他安全技术问题一直大伤脑筋,因此在各方压力下终止了航天飞机的历史,但是此类事情会不会在以后发生,谁也无法保证,在遇到这类航天问题时,解决方法也许只能让航天员出仓维修,但是多次的维修会消耗航天员大量的能量,因此NASA便想设计一种食品方案,让体积和承重有限的条件下多装载一些高卡路里的食物.题目描述航天飞机的体积有限,当然如果载过重的物品,燃料会浪费很多钱,每件食品都有各自的体积、质量以及所含卡路里,在告诉你体积和质

2020-10-07 17:00:52 1021 1

原创 P1208 [USACO1.3]混合牛奶 Mixing Milk(简单AC)

P1208 [USACO1.3]混合牛奶 Mixing Milk题目描述由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要。帮助 Marry 乳业找到最优的牛奶采购方案。Marry 乳业从一些奶农手中采购牛奶,并且每一位奶农为乳制品加工企业提供的价格是不同的。此外,就像每头奶牛每天只能挤出固定数量的奶,每位奶农每天能提供的牛奶数量是一定的。每天 Marry 乳业可以从奶农手中采购到小于或者等于奶农最大产量的整数数量的牛奶。给出 Marry 乳业每天对牛奶的需求量,还有每位奶农提供的牛奶

2020-10-06 17:01:45 861

原创 P2681 众数(简单模拟)

P2681 众数题目背景Alice 和 Bob 玩游戏。题目描述Alice 现在有一个序列 a1,a2,…an。现在她需要 Bob 支持询问一个区间内的众数,还要支持修改一个位置的 ai 。输入格式第一行两个整数 n,m。第二行 n 个整数,表示 a1,…,an。接下来 m 行,每行三个整数 flag,x,y。如果 flag=0,表示询问 [x,y] 区间内的众数,如果有多个输出较小的。如果 flag=1,表示将 ax改为 y。输出格式对于每个 flag=0的询问,每行输出一个整数

2020-10-05 17:58:03 365

原创 P1644 跳马问题(动态规划)

P1644 跳马问题题目背景在爱与愁的故事第一弹第三章出来前先练练四道基本的回溯/搜索题吧……题目描述中国象棋半张棋盘如图 1所示。马自左下角 (0,0)向右上角 (m,n) 跳。规定只能往右跳,不准往左跳。比如图 1 中所示为一种跳行路线,并将路径总数打印出来。输入格式只有一行:两个数 n,m。输出格式只有一个数:总方案数 total。输入输出样例输入 #14 8输出 #137说明/提示对于 100% 的数据:n,m≤18我的思路此题乍一看就是深搜,不过小编认为dp

2020-10-04 20:08:21 1243

原创 P1595 信封问题(递推AC)

P1595 信封问题题目描述某人写了n封信和n个信封,如果所有的信都装错了信封。求所有信都装错信封共有多少种不同情况。输入格式一个信封数n(n<=20)输出格式一个整数,代表有多少种情况。输入输出样例输入 #12输出 #11输入 #23输出 #22我的思路这题是一个数论问题,运用数学知识很容易解出。全错位排序递推公式:f[n] = (n - 1)*(f[n-1] + f[n-2])全错位排序公式推导此题需要注意的是数据范围是long long, 而不是i

2020-10-03 17:08:43 793

原创 全错位排序公式推导

全错位排序全错位排列被著名数学家欧拉(Leonhard Euler,1707-1783)称为“组合数论的一个妙题”的“装错信封问题”的两个特例。“装错信封问题”是由当时最有名的数学家约翰·伯努利(Johann Bernoulli,1667-1748)的儿子丹尼尔·伯努利(DanidBernoulli,1700-1782)提出来的,大意如下:一个人写了n封不同的信及相应的n个不同的信封,他把这n封信都装错了信封,问都装错信封的装法有多少种?f[n]表示有n个信封全错位情况数可以把问题分成两种情况:①

2020-10-03 16:28:32 6905

原创 P2347 砝码称重(动态规划)

P2347 砝码称重题目描述设有1g、2g、3g、5g、10g、20g的砝码各若干枚(其总重 ≤1000),输入格式输入方式:a1 , a2 ,a3 , a4 , a5 ,a6(表示1g砝码有a1 个,2g砝码有a2 个,…,20g砝码有a6个)输出格式输出方式:Total=N(N表示用这些砝码能称出的不同重量的个数,但不包括一个砝码也不用的情况)输入输出样例输入 #11 1 0 0 0 0输出 #1Total=3解法一:01背包思想,总砝码的范围是 <=1000,

2020-10-02 20:44:37 1403 4

原创 P1115 最大子段和(动态规划dp)

P1115 最大子段和题目描述给出一个长度为 n 的序列 a,选出其中连续且非空的一段使得这段和最大。输入格式第一行是一个整数,表示序列的长度 nn。第二行有 n 个整数,第i个整数表示序列的第i个数字 ai。输出格式输出一行一个整数表示答案。输入输出样例输入 #172 -4 3 -1 2 -4 3输出 #14说明/提示样例 1 解释选取 [3, 5]子段 {3, -1, 2},其和为 44。我的思路该题主要思想是dp法,dp[1]开始, 递推dp[2], dp[2]

2020-10-02 11:30:11 935

原创 P1002 过河卒(动态规划dp法)

P1002 过河卒题目描述棋盘上 AA 点有一个过河卒,需要走到目标 BB 点。卒行走的规则:可以向下、或者向右。同时在棋盘上 CC 点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点。因此称之为“马拦过河卒”。棋盘用坐标表示,AA 点 (0, 0)(0,0)、BB 点 (n, m)(n,m),同样马的位置坐标是需要给出的。现在要求你计算出卒从 AA 点能够到达 BB 点的路径的条数,假设马的位置是固定不动的,并不是卒走一步马走一步。输入格式一行四个正整数,分别表示 BB

2020-10-01 12:26:26 582

原创 P2708 硬币翻转

P2708 硬币翻转题目描述从前有很多个硬币摆在一行,有正面朝上的,也有背面朝上的。正面朝上的用1表示,背面朝上的用0表示。现在要求从这行的第一个硬币开始,将前若干个硬币一起翻面,问如果要将所有硬币翻到正面朝上,最少要进行这样的操作多少次?输入格式一个字符串,由0和1组成,表示硬币状态输出格式一个数,表示要翻转的最少次数输入输出样例输入 #110输出 #12说明/提示样例1说明:第1次翻转:把第一个硬币翻到反面,字符串为00第2次翻转:把第一、二个硬币一起翻到正面,字符

2020-09-30 21:30:16 470

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除