- 2025年美赛数学建模 MCM Problem B: Managing Sustainable Tourism 问题 B:可持续旅游管理 思路+代码解析【第一问】
一键难忘
付费专栏数学建模2025美赛2025年美赛数学建模可持续旅游管理
本文为个人解题笔记,仅供参考学习。本文B题的第一问。其他问题均在本专栏内,订阅一次,全部可见。本文为个人解题笔记,仅供参考学习。第一小问【为阿拉斯加州朱诺建⽴⼀个可持续旅游业模型。】BuildamodelforasustainabletourismindustryinJuneau,Alaska.Youmaywanttoconsiderfactorssuchasthenumberofvisitors
- Android Gradle Kotlin DSL,使用Kotlin来构建Gradle
张雨zy
kotlinAndroid基础
Demohttps://gitee.com/olleh/my-kotlin-dsl.gitGradleKotlinDSL我们现在AndroidStudio是使用Gradle来编译,而默认的构建语言是Groovy,我们可以用Kotlin来代替Groovy,Groovy构建脚本是.gradle结尾,Koltin构建的脚本则是.gradle.kts结尾优势:节约Groovy的学习成本错误提示代码自动补全
- stream流-去重
今天学点啥6
Javajava后端
针对基本数据类型集合publicclassDistinctDemo{ publicstaticvoidmain(String[]args){ ArrayListusers=newArrayListSystem.out.println(u)); }}针对对象集合根据对象中的某一个成员变量进行去重使用filter根据集合中对象的某个成员变量进行去重publicclassDis
- python求一个数的阶乘_阶乘计算python
weixin_39540725
python求一个数的阶乘
广告关闭腾讯云11.11云上盛惠,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元!问题本身很简单,主要是通过这个小问题来演示python的一些用法,例如测试代码运行时间、函数嵌套定义等等。fromtimeimporttimefrommathimportfactorialfromfunctoolsimportreducefromrandomimportrandintd
- spring 整合mybatis 出现解析不了配置文件的问题
yxlc_liushy
mybatisspringmybatis3spring
1,错误内容:org.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'sqlSessionFactory'definedinclasspathresource[spring/applicationContext.xml]:Invocationofinitmethodfailed;nested
- mybatis(134/134)完结
一缕叶
mybatismybatisspringjava
一级缓存(默认情况下开启)同一个sqlsession中执行相同的查询语句走一级缓存二级缓存:同一个sqlsessionfactory,sqlsession关闭了才会将一级缓存提交到二级缓存中外部编写的缓存PageHelper插件:方便进行分页,同时前端可以容易拿到对于分页相关的所有数据调用getXXX方法12天最终完结mybatis,后续找机会手敲一下源码加深了解。
- MyBatis配置多数据源
hui_ss
mybatisjava
MyBatis配置多数据源在做项目的过程中,有时候一个数据源是不够,那么就需要配置多个数据源。本例介绍mybatis多数据源配置。前言一般项目单数据源,使用流程如下:单个数据源绑定给sessionFactory,再在Dao层操作,若多个数据源的话,那不是就成了下图可见,sessionFactory都写死在了Dao层,若我再添加个数据源的话,则又得添加一个sessionFactory。所以比较好的做
- electron实现热更新以及和前端同时启动(三)
SquirrelPineal
前端electronvue.js
1、安装3个模块npminstall-Dwait-onnpminstall-Dconcurrentlynpminstallnodemon设置好端口"scripts":{"dev":"vite","build":"vue-tsc--noEmit&&vitebuild","preview":"vitepreview",
- UE4的导航系统:基于Tile的导航
你一身傲骨怎能输
UE4虚幻引擎ue4
前言UE4的导航使用的是RecastDetour组件,这是一个开源组件,主要支持3D场景的导航网格导出和寻路,或者有一个更流行的名字叫做NavMesh。不管是Unity还是UE都使用了这一套组件。Github上有更为详细的源码、Demo和说明:https://github.com/recastnavigation/recastnavigation这一篇会阐述UE4是如何划分Tile,并基于Tile
- 项目集成OpenFeign + cloud整体测试
S-X-S
javaspringboot开发语言OpenFeigncloud
文章目录1.环境搭建1.创建模块sunrays-common-cloud-openfeign-starter2.目录结构3.OpenFeignAutoConfiguration.java自动配置类4.spring.factories5.pom.xml2.sunrays-common-cloud模块整体测试1.创建demo模块2.新建三个服务都注册到Nacos1.项目结构2.sunrays-comm
- Qt 项目架构:架构设计
Qt开发老杰
开发语言c++qt
除了极小的微型demo级别项目外,其余项目建议用pri分门别类不同文件夹存放代码文件,方便统一管理和查找。同类型功能的类建议统一放在一起,如果该目录下代码文件数量过多,也建议拆分多个目录存放,比如系统配置的窗体放在一个目录下,日志管理的窗体放在一个目录下。很多通用功能,多个项目都会用到,可以考虑封装成pri形式的模块,俗称轮子,不断完善这些轮子,多个项目共享该模块,一旦遇到BUG修复,只需要更改一
- python的模块导入问题_python导入模块错误怎么解决
weixin_39645165
python的模块导入问题
经常在运行一些Python项目的时候会出现模板报错的情况,比如以下的报错信息:Traceback(mostrecentcalllast):File"D:/Python/Demo/mapdemo/chinamap.py",line1,inimportmatplotlibs.pyplotaspltImportError:Nomodulenamed'matplotlibs'出现这种情况,可能会是没有安装
- demo之springboot-vue前后端分离session过期重新登录
djryygn6576
javajavascript后端ViewUI
简单回顾cookie和sessioncookie和session都是回话管理的方式Cookiecookie是浏览器端存储信息的一种方式服务端可以通过响应浏览器set-cookie标头(header),浏览器接收到这个标头信息后,将以文件形式将cookie信息保存在浏览器客户端的计算机上。之后的请求,浏览器将该域的cookie信息再一并发送给服务端cookie默认的存活期限关闭浏览器后失效,即浏览器
- 虚幻新手C++入门
芙头帮帮主
虚幻c++游戏引擎
代码命名规则模版类:T前缀(如TArray,TMap,TSet)UObject派生类:U前缀AActor派生类:A前缀SWidget派生类:S前缀全局对象:G开头(如GEngine)抽象接口:I前缀枚举:E开头bool变量:b前缀其他的大部分以F开头(如FString,FName)typedef的以原型名前缀为准(如typedefTArrayFArrayOfMyTypes)在编辑器里和C#里,类型
- 设计模式--建造者模式(C++实现)
zhang_zhilai
c++设计模式
创建型设计模式共5种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。建造者模式:适用于复杂对象的构建,可以将其一步一步的构造出来,能够更精细的控制构建过程(每一步都可以控制)。从上述UML图可以看出,抽象Builder聚合在Direactor类中,通过多态将RealBuilderA或RealBuilderB赋值给Builder。其中,RealBuilderA和RealBuilderB
- kinetics-skeleton格式行为数据提取方法
青年夏日科技工作者
python人工智能深度学习
用自建kinetics-skeleton行为识别数据集训练st-gcn网络流程记录,利用Lightweight-OpenPose生成kinetics-skeleton格式数据0.准备工作1.下载/裁剪视频2.利用OpenPose提取骨骼点数据,制作kinetics-skeleton数据集3.训练st-gcn网络4.用自己训练的st-gcn网络跑demo,并可视化0.准备工作首先就是把st-gcn网
- 使用AES CTR模式实现任意位置数据加解密
lxkj_2024
linux
目录需求AES加密CTR模式计数器完整demo实现openssl命令行进行验证需求最近对我们的项目进行安全优化,我们的服务程序在使用过程中会持续接受客户端的一些数据并追加写到文件中,文件写入完毕后还支持客户端的随机访问来获取这些结构化信息。之前数据的写入都是明文方式,因此考虑使用最广泛使用的AES对称加密来进行处理,我们想到了两种方式进行:1)写入完毕后另起一个线程/进程读文件->加密->写文件-
- Mybatis如何书写
黄袜子的小希
mybatis数据库java
kh下面我们开始书写mybatis①首先开始的时候创建数据库和表结构:createdatabasemybatis_demo;usemybatis_demo;CREATETABLE`user`(`id`int(11)NOTNULLauto_increment,`username`varchar(32)NOTNULLCOMMENT'用户名称',`birthday`datetimedefaultNULL
- Python数据可视化 Pyecharts 制作 Sankey 桑基图
Mr数据杨
Python数据可视化python数据可视化pyecharts数据分析
桑基图作为一种强大的数据可视化工具,常用于展现不同节点之间的流动关系及其数量分布。其通过直观的连线展示,帮助用户理解复杂系统中各个部分的连接和交互。Python的pyecharts库提供了Sankey类,支持用户灵活创建各种桑基图,不仅能够展示流动数据,还能根据节点层级及连线样式进行高度定制,使得桑基图在信息传达和视觉表现上更具表现力。文章目录Sankey:桑基图Demo总结Sankey:桑基图桑
- 微服务网关springcloud gateway整合nacos实现动态路由
程序猿20
nacos微服务springcloudgatewaynacos微服务
1.添加依赖com.alibaba.cloudspring-cloud-starter-alibaba-nacos-config2.添加配置spring:cloud:nacos:config:#配置中心地址server-addr:127.0.0.1:8848#配置文件格式file-extension:ymlusername:password:3.定义读取配置和监听类packagecom.demo.
- Solon Cloud Gateway 开发:熟悉 ExContext 及相关接口
组合缺一
SolonJavaFrameworkgatewaysolonjava后端
分布式网关的主要工作是路由及数据交换,在定义时,会经常用到:接口说明RouteFilterFactory路由过滤器工厂RoutePredicateFactory路由检测器工厂CloudGatewayFilter分布式网关过滤器ExFilter交换过滤器ExPredicate交换检测器ExContext交换上下文ExFilter应用场景CloudGatewayFilterextendsExFilte
- Qt Ribbon使用实例
依梦_728297725
QTc++ribbonSARibbon
采用SARibbon创建简单的ribbon界面实例代码如下所示:1、头文件:#pragmaonce#include#include"SARibbonMainWindow.h"classQTextEdit;classSAProjectDemo1:publicSARibbonMainWindow{Q_OBJECTpublic:SAProjectDemo1(QWidget*parent=Q_NULLPT
- android mvvm框架搭建_轻松搭建基于JetPack组件的MVVM框架
weixin_39962285
androidmvvm框架搭建androidstudiomvvm模板生成javassm框架项目实例
原文链接:轻松搭建基于JetPack组件的MVVM框架-掘金Brickgithubgitee介绍辅助android开发者搭建基于JetPack组件构建MVVM框架的注解处理框架。通过注解自动生成ViewModel的Factory类、lazy方法等;支持在项目的任意位置注入ROOM的dao层接口与Retrofit库中的api接口。特点android开发者可以将brick理解为一个轻量级的注入框架,使
- 强化学习很多ac架构的算法比如ppo,为什么使用状态价值网络而不使用动作价值网络实现critic呢?|状态价值网络的优势与挑战|Actor-Critic|状态价值|强化学习
concisedistinct
人工智能算法人工智能架构
目录1.强化学习的基础1.1策略与价值函数2.Actor-Critic架构概述2.1Critic的作用3.为什么选择状态价值网络?3.1训练稳定性3.2计算效率3.3高维动作空间的适应性4.使用状态价值网络的挑战4.1收敛速度4.2欠拟合风险5.解决方案与未来方向5.1改进的状态价值网络5.2结合动作价值和状态价值6.结论随着强化学习技术的不断发展,其在诸如游戏、机器人控制和金融预测等领域的应用越
- 强化学习中,为什么用AC架构
资源存储库
算法强化学习算法
目录强化学习中,为什么用AC架构为什么用AC架构?AC架构的工作原理AC架构的优缺点优点:缺点:相关算法:基于AC架构的算法总结强化学习中,为什么用AC架构在强化学习(ReinforcementLearning,RL)中,AC架构(即Actor-Critic架构)是一种非常常用的架构,用于训练智能体(Agent)在环境中执行任务。AC架构结合了策略梯度方法和价值迭代方法,通过分离策略和价值函数的估
- React Native常见报错解决整理
飞翔的熊blabla
react
转载于:https://blog.csdn.net/u010127332/article/details/83622209ReactNative从开发环境到入门练手,再到跑几个开源demo的整个过程中,遇到了不少问题,以下是对报错现象及解决方法的记录:Mac上运行iOS项目问题1:npmERR!UnexpectedendofJSONinputwhileparsingnear‘…ire-main-f
- .NET MAUI进行UDP通信(二)
聿琴丶
MAUI.netudp网络协议
上篇文章有写过一个简单的demo,本次对项目进行进一步的扩展,添加tabbar功能。1.修改AppShell.xaml文件,如下所示:-->-->1).将MainPage注释掉2).添加tabbar功能3).第一个ShellConten的路由设置为Mine文件,注意到ContentTemplate="{DataTemplateminePage:Mine}",当前不是local,是因为我们引用了命名
- java设计模式之工厂模式的使用|普通工厂模式、多个工厂方法模式、静态工厂方法模式、抽象工厂模式的使用|工厂模式的高级使用
小小鱼儿小小林
#设计模式面试这样回答设计模式工厂模式
目录工厂方法模式(FactoryPattern)前言1.普通工厂模式demo:运行结果:2、多个工厂方法模式demo:运行结果:3、静态工厂方法模式demo:运行结果:4、抽象工厂模式(AbstractFactory)demo:运行结果:高级使用1、通过if...else...来判断demo运行结果:2、通过注解,切面编程demo:运行结果:工厂方法模式(FactoryPattern)前言工厂方法
- [论文笔记] llama-factory 微调qwen2.5、llama3踩坑
心心喵
论文笔记深度学习人工智能
一、bug1、pre-tokenize的时候,会OOM解决:在yaml文件中添加streaming参数#tokenizestreaming:Truemax_steps:10000https://github.com/hiyouga/LLaMA-Factory/blob/3a023bca2a502810a436cfba7708df164754ea62/src/llamafactory/hparams
- 项目集成Nacos
S-X-S
javaNacos
文章目录1.环境搭建1.创建模块sunrays-common-cloud-nacos-starter2.目录结构3.pom.xml4.自动配置1.NacosAutoConfiguration.java2.spring.factories5.引入cloud模块通用依赖2.测试1.创建模块sunrays-common-cloud-nacos-starter-demo2.目录结构3.pom.xml4.a
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http