自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

STcyclone的博客

每天都要修建知识的长城

  • 博客(66)
  • 收藏
  • 关注

原创 Manufactoria介绍及各关卡解法

Manufactoria是一个以制造工厂为背景的程序设计游戏。在游戏中,玩家需要在有限的平面空间中巧妙地排布传送带,打点器与分支器,完成识别或改写特定模式的字符串的任务。在每一个关卡中,存在恰好一个机器人的入口和恰好一个出口。机器人会从入口进入,每个机器人携带一个由红点或蓝点(有时还会包含绿点作为分隔符)组成的字符串编码。游戏关卡的目标分为接受字符串、改写字符串这两类。在目标为接受字符串的关卡,需要将字符串符合特定模式的机器人从工厂入口移动到工厂出口,并将其余机器人抛弃。

2022-12-09 19:48:30 886 1

原创 【数论算法】扩展欧几里得算法详解+编程求解不定方程

扩展欧几里得算法详解扩展欧几里得算法详解及模板题(洛谷P5656)解题思路题目链接题目描述数据范围扩展欧几里得算法代码模板时间复杂度算法正确性的证明归纳基础归纳步算法时间复杂度的证明b=0b=0b=0 时b≠0b \neq 0b​=0 且 a<ba < ba<b 时b≠0b \neq 0b​=0 且 a≥ba \ge ba≥b 时引理: ∀a,b∈Z+\forall a,b \in \mathbb{Z}^{+}∀a,b∈Z+,若 a≥ba \ge ba≥b,则有 a mod b≤⌊a2

2022-03-15 16:09:32 1474

原创 apiary的入门与使用

apiary.io是一个帮助设计API的网站,其可以实现以交互方式设计RESTful API,其是一个支持API Blueprint Markdown语法的所见即所得的编辑器。Apiary可以生成返回JSON有效数据的模拟服务器,这样节省了必须自己搭建模拟服务器的时间。使用Apiary也可以支持通过保持API First的方式,直到完成制定API的草稿阶段。首先打开apiary.io网站:可以通过github账号登录。之后新建一个名为"test"的API Blueprint,可以看到:上图左边的

2021-01-09 22:22:48 756

原创 Go语言执行内嵌Linux Shell命令

下面在一个文件夹内新建了一个属于main包的代码:package mainimport ( "fmt" "io/ioutil" "os/exec")func ExecCommand(strCommand string) string { cmd := exec.Command("/bin/bash", "-c", strCommand) stdout, _ := cmd.StdoutPipe() if err := cmd.Start(); err != nil { fmt.P

2021-01-09 22:00:14 2148 3

原创 Go语言连接mongoDB数据库

假设已经安装了mongodb服务器并运行了mongodb服务端(或有可以连接的mongodb服务端),这里不赘述mongodb的安装过程。go语言下使用mongodb步骤如下:下载mongodb连接驱动mgogo语言没有专门开发连接mongodb的库,不过第三方开发的库mgo可以连接mongodb,也得到了官方认可。命令行下输入:go get gopkg.in/mgo.v2下载的mongodb go语言驱动包会直接存储在GOPATH目录下。引入mgo包用下面的方式可以在go代码文件中引入mg

2021-01-09 18:37:37 1057

原创 编程实现简单的git版本管理系统

编程实现简单的git版本管理系统git在写作业,开发软件项目,特别是团队合作开发,迭代开发中有着很大的用处。为了更进一步理解git的原理,以及掌握git的用法,了解git的实现机制,这里根据git系统的功能,实现了下git的代码。下面先实现一个简化版的git(名为GeetFS)给他文件系统(GeetFS)题目背景自从被安利了版本控制软件Git,顿顿沉迷其中无法自拔。恰好最近学习了文件系统的一些知识,于是顿顿打算在办签证的途中实现一个类似于Git的特殊“文件系统”GeetFS。基本布局普通的文

2021-01-09 17:57:34 1057

原创 Go语言访问C语言数据类型

Go语言访问C语言数据类型Go语言访问C语言的数据类型,只需要将C语言的代码用注释包围起来,之后紧跟一个import “C”。之后就可以通过C.{标识符}来获取C语言中的数据类型。可以通过类型转换将其转换到Go语言中的数据类型中。新创建一个文件夹,里面声明属于包main的文件test2.gopackage main/*#include <stdio.h>char ch = 'c';int num = 10101;double value = 3.1415;*/import

2021-01-08 23:32:37 374

原创 net/http 库 web 工作原理阅读

net/http 库 web 工作原理阅读现在阅读net/http 库,解释一些关键功能实现。相比其他许多语言搭建服务器程序,go语言搭建服务器程序非常方便,利用http包可以很方便地搭建web服务器。下面的代码就可以搭建一个最基本的web服务器:package mainimport ( "fmt" "net/http")func IndexHandler(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w

2021-01-08 20:55:47 285

原创 GO语言web开发的几种Mux库阅读

DefaultServeMux阅读上一部分源码阅读中最后有用到DefaultServeMux变量。该变量为ServeMux类型,可以查看到ServeMux结构的定义如下:type ServeMux struct { mu sync.RWMutex m map[string]muxEntry hosts bool }type muxEntry struct { explicit bool h Handler pattern

2021-01-08 19:58:57 561

原创 godoc安装与自动生成API文档

先使用命令go get golang.org/x/tools/cmd/godoc来安装godoc。该命令会访问官网下载godoc,有可能访问超时。为此,需要在Bash下设置如下的环境变量:export GOPROXY=https://goproxy.ioexport GO111MODULE=on这样就可以顺利安装godoc:然后在bash下运行命令go build golang.org/x/tools/cmd/godoc再运行godoc就可以在浏览器通过http://localhost:60

2021-01-08 19:10:45 600

原创 C/C++语言调用Go库

C/C++语言调用Go库编译go代码为动态库/静态库Go语言写的代码可以编译为动态库或静态库,之后C语言链接该动态库或静态库就可以调用Go语言写的代码。下面用ubuntu20.04下的操作方法来演示。新创建一个文件夹,编写一个属于main包的go语言代码文件a.go如下:package main; import "C" func main() {} //export Hellofunc Hello() string { return "Hello"} //export P

2021-01-08 18:33:51 4188

原创 Go语言调用C语言函数

/*#include <stdio.h> void say(){ printf("hello world\n");}*/import "C" func main() { /* 1.C语言的代码都需要利用单行注册或者多行注释注释起来 2.在C语言代码紧随其后的位置写上import "C" 3.就可以在go代码中通过C.函数名称 方式来访问C语言的函数 注意点: 1,C语言代码的注释和import "C"之间不写能任何其他的内容 2

2021-01-08 13:38:11 1823 3

原创 【3D游戏编程与设计】十 游戏智能

【3D游戏编程与设计】十 游戏智能坦克对战游戏 AI 设计游戏设计要求:坦克对战游戏 AI 设计游戏设计要求:从商店下载游戏:“Kawaii” Tank 或 其他坦克模型,构建 AI 对战坦克。具体要求使用“感知-思考-行为”模型,建模 AI 坦克场景中要放置一些障碍阻挡对手视线坦克需要放置一个矩阵包围盒触发器,以保证 AI 坦克能使用射线探测对手方位AI 坦克必须在有目标条件下使用导航,并能绕过障碍。(失去目标时策略自己思考)实现人机对战...

2021-01-06 23:26:10 658

原创 【服务计算】十一 Docker技术

【服务计算】十一 Docker技术概述实验内容操作系统环境准备实验过程安装docker运行第一个容器概述Docker是一种使用Linux内核功能的容器工具,如cgroups和命名空间,它能提供网络、文件和内存资源的隔离,而无需依靠一个完整的虚拟机。最近,Docker一直保持巨大的发展势头,并且应用在越来越多的行业中。Docker能够帮助我们创建一个固定的软件版本,它可以在任何地方运行,无论目的环境中有没有安装该软件(但是必须安装Docker)。例如,如果向Docker Hub(http://hub.

2020-12-28 22:41:47 189

原创 【3D游戏编程与设计】九 UI系统 血条

【3D游戏编程与设计】九 UI系统

2020-12-27 23:28:37 437

原创 【3D游戏编程与设计】八:粒子系统与流动效果

【3D游戏编程与设计】八:粒子系统与流动效果

2020-12-02 23:31:39 281

原创 【服务计算】七 开发 web 服务程序

概述开发简单 web 服务程序 cloudgo,了解 web 服务器工作原理。任务目标熟悉 go 服务器工作原理。基于现有 web 库,编写一个简单 web 应用类似 cloudgo。使用 curl 工具访问 web 程序。对 web 执行压力测试。任务要求基本要求编程 web 服务程序 类似 cloudgo 应用。– 支持静态文件服务– 支持简单 js 访问– 提交表单,并输出一个表格(必须使用模板)使用 curl 测试,将测试结果写入 README.md。使用 ab 测

2020-11-23 23:23:12 317

原创 【3D游戏编程与设计】七 模型与动画:智能巡逻兵

【3D游戏编程与设计】七 模型与动画:智能巡逻兵编写一个智能巡逻兵游戏游戏设计要求:程序设计要求:项目架构软件版本文件组织编写一个智能巡逻兵游戏游戏设计要求:创建一个地图和若干巡逻兵(使用动画);每个巡逻兵走一个3~5个边的凸多边型,位置数据是相对地址。即每次确定下一个目标位置,用自己当前位置为原点计算;巡逻兵碰撞到障碍物,则会自动选下一个点为目标;巡逻兵在设定范围内感知到玩家,会自动追击玩家;失去玩家目标后,继续巡逻;计分:玩家每次甩掉一个巡逻兵计一分,与巡逻兵碰撞游戏结束;程序设计

2020-11-18 23:30:16 260

原创 【3D游戏编程与设计】六 物理系统与碰撞:鼠标打飞碟(Hit UFO)改进版

【3D游戏编程与设计】六 物理系统与碰撞:鼠标打飞碟(Hit UFO)改进版改进飞碟(Hit UFO)游戏:游戏内容要求游戏设计要求项目架构软件版本改进飞碟(Hit UFO)游戏:游戏内容要求游戏有 n 个 round,每个 round 都包括10 次 trial;每个 trial 的飞碟的色彩、大小、发射位置、速度、角度、同时出现的个数都可能不同。它们由该 round 的 ruler 控制;每个 trial 的飞碟有随机性,总体难度随 round 上升;鼠标点中得分,得分规则按色彩、大小、速

2020-11-11 23:33:43 177

原创 【服务计算】六 改进或扩展 RxGo 包

简介ReactiveX是Reactive Extensions的缩写,一般简写为Rx,最初是LINQ的一个扩展,由微软的架构师Erik Meijer领导的团队开发,在2012年11月开源,Rx是一个编程模型,目标是提供一致的编程接口,帮助开发者更方便的处理异步数据流,Rx库支持.NET、JavaScript和C++,Rx近几年越来越流行了,现在已经支持几乎全部的流行编程语言了,Rx的大部分语言库由ReactiveX这个组织负责维护,比较流行的有RxJava/RxJS/Rx.NET,社区网站是 reacti

2020-11-10 11:52:09 310

原创 【3D游戏编程与设计】五 与游戏世界交互:鼠标打飞碟(Hit UFO)

【3D游戏编程与设计】五 与游戏世界交互:鼠标打飞碟(Hit UFO)编写一个简单的鼠标打飞碟(Hit UFO)游戏游戏内容要求游戏的要求编写一个简单的自定义 Component (选做)编写一个简单的鼠标打飞碟(Hit UFO)游戏游戏内容要求游戏有 n 个 round,每个 round 都包括10 次 trial;每个 trial 的飞碟的色彩、大小、发射位置、速度、角度、同时出现的个数都可能不同。它们由该 round 的 ruler 控制;每个 trial 的飞碟有随机性,总体难度随 ro

2020-10-28 22:57:48 224 1

原创 【服务计算】五 程序包开发,复杂命令行支持

【服务计算】五 程序包开发,复杂命令行支持 或 Json格式序列化概述实验目的实验要求概述命令行实用程序并不是都象 cat、more、grep 是简单命令。go 项目管理程序,类似 java 项目管理 maven、Nodejs 项目管理程序 npm、git 命令行客户端、 docker 与 kubernetes 容器管理工具等等都是采用了较复杂的命令行。即一个实用程序同时支持多个子命令,每个子命令有各自独立的参数,命令之间可能存在共享的代码或逻辑,同时随着产品的发展,这些命令可能发生功能变化、添加新命令

2020-10-27 11:54:59 146

原创 【大学生数学竞赛】2019年第十一届全国大学生数学竞赛初赛非数学专业试题解答

【大学生数学竞赛】2019年第十一届全国大学生数学竞赛初赛非数学专业试题解答试题一、填空题(满分30分,共5小题,每小题6分)(1)计算极限解答一、填空题(满分30分,共5小题,每小题6分)(1)计算极限试题一、填空题(满分30分,共5小题,每小题6分)(1)计算极限lim⁡x→0ln⁡(esin⁡x+1−cos⁡x3)−sin⁡xarctan(41−cos⁡x3)=______\lim_{x \rightarrow0}\dfrac{\ln(e^{\sin x}+\sqrt[3]{1-\cos x}

2020-10-20 18:11:01 10122 4

原创 【服务计算】四 程序包开发,读简单配置文件

【服务计算】四 程序包开发,读简单配置文件概述实验目的实验内容实验要求概述配置文件(Configuration File,CF)是一种文本文档,为计算机系统或程序配置参数和初始设置。传统的配置文件就是文本行,在 Unix 系统中随处可见,通常使用 .conf,.config,.cfg 作为后缀,并逐步形成了 key = value 的配置习惯。在 Windows 系统中添加了对 section 支持,通常用 .ini 作为后缀。面向对象语言的兴起,程序员需要直接将文本反序列化成内存对象作为配置,逐步提出

2020-10-20 11:42:50 223

原创 【3D游戏编程与设计】四 游戏对象与图形基础 : 构建游戏场景+牧师与魔鬼 动作分离版

【3D游戏编程与设计】四 游戏对象与图形基础 :牧师与魔鬼 动作分离版

2020-10-19 23:40:51 273

原创 【服务计算】三 开发简单 CLI 程序

【服务计算】三 开发简单 CLI 程序概述操作系统环境准备概述CLI(Command Line Interface)实用程序是Linux下应用开发的基础。正确的编写命令行程序让应用与操作系统融为一体,通过shell或script使得应用获得最大的灵活性与开发效率。例如:Linux提供了cat、ls、copy等命令与操作系统交互;go语言提供一组实用程序完成从编码、编译、库管理、产品发布全过程支持;容器服务如docker、k8s提供了大量实用程序支撑云服务的开发、部署、监控、访问等管理任务;gi

2020-10-12 23:37:35 390 1

原创 【3D游戏编程与设计】三 空间与运动 : 牧师与魔鬼

【3D游戏编程与设计】三 空间与运动 & 牧师与魔鬼简答并用程序验证【建议做】编程实践简答并用程序验证【建议做】编程实践

2020-10-05 22:54:32 232

原创 【服务计算】二 《Learn Go with tests》“迭代”章节的练习和Go语言实现算法的TDD实践报告

【服务计算】二 《Learn Go with tests》“迭代”章节的练习和Go语言实现算法的TDD实践报告操作系统按照实验要求,结合自己的电脑设备与系统等条件,使用VirtualBox下Ubuntu 20.04系统完成实验。虚拟机相关设置与上一次实验相同。环境准备虚拟机下的实验环境与上一次实验的相同,不需要额外的配置。概念定义与理解TDD的概念TDD是测试驱动开发(Test-Driven Development)的缩写。

2020-10-05 00:09:02 428 1

原创 【3D游戏编程与设计】二 离散引擎基础 & 3D井字棋

【3D游戏编程与设计】二 3D+AI井字棋

2020-09-23 23:05:38 143

原创 【3D游戏编程与设计】一 游戏的分类与热点

【3D游戏编程与作业】一 游戏的分类与热点

2020-09-23 20:41:18 396

原创 【服务计算】一 安装 go 语言开发环境指南

【服务计算】一 安装 go 语言开发环境指南系统硬件与操作系统环境准备安装golang安装设置环境变量创建工作空间配置环境变量检查配置创建 hello world!创建源代码目录编辑代码运行安装必要的工具和插件安装 Git 客户端安装 go 的一些工具下载源代码到本地安装工具包安装运行 hello world安装与运行 go tour我的第一个包与测试实验中遇到的问题小结系统硬件与操作系统按照实验要求,以上面的环境为宿主机,使用虚拟机进行go语言开发环境的安装。环境准备安装虚拟机软件Virtua

2020-09-20 22:44:22 277

原创 【数值分析】二元函数二阶混合偏导数的近似计算式与误差阶推导

问题假设f(x,y)f(x,y)f(x,y)在全平面内存在且足够的光滑,求fxy(x0,y0)f_{xy}(x_0,y_0)fxy​(x0​,y0​)的计算式与误差阶引理一:若fxy(x0,y0),fyx(x0,y0)f_{xy}(x_0,y_0),f_{yx}(x_0,y_0)fxy​(x0​,y0​),fyx​(x0​,y0​)均在(x0,y0)(x_0,y_0)(x0​,y0​)处存在...

2019-11-04 23:06:06 8010

原创 常用概率分布的最大似然估计与矩估计及优良性比较

常用概率分布的最大似然估计与矩估计及优良性比较

2019-01-01 17:13:55 15056 2

原创 正态分布的由来及推导

P(yi=1)=∫0P(y_i=1)=\int_{0}^{}P(yi​=1)=∫0​P(Y&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;22)P(Y&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;22)P(Y&amp;amp;

2019-01-01 17:06:38 23746 6

原创 常用概率分布的矩母函数、特征函数以及期望、方差的推导

常用概率分布的矩母函数与特征函数的推导一、离散型随机变量的分布1、离散型均匀分布二、连续型随机变量的分布

2018-11-20 21:45:32 115863 17

原创 Educational Codeforces Round 53 (Rated for Div. 2)题解

Educational Codeforces Round 53 (Rated for Div. 2A. Diverse Substring)A. Diverse Substring题目大意:定义长度为n的字符串是一个多样化的字符串:当且仅当这个字符串没有一种字符数目严格大于n/2找出字符串s的一个多样化子串|s|&amp;amp;amp;amp;amp;amp;amp;lt;=1000分析:可以直接预处理前缀和数组,暴力O(∣s∣2σ)O(...

2018-10-26 17:59:29 1189

原创 洛谷p3768 简单的数学题

题目大意求∑i=1n∑j=1nijgcd(i,j)\sum_{i=1}^{n}\sum_{j=1}^{n}ijgcd(i,j)对质数p取膜的结果n<=10^10 5*10^8<=p<=1.1*10^9分析看到这种两层求和带gcd的式子 可以考虑直接用莫比乌斯反演求解。 但注意到i j的上界都是n,所以用ϕ\phi推导公式也可以解决这题。(感觉可能会简便一些)∑i=1n∑j=1nijgcd(i,

2017-06-23 20:06:27 1412

原创 51nod 1490 多重游戏

1490 多重游戏 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注 有一个两人游戏,游戏是这样的,有n个非空串。在游戏的过程是,两个玩家轮流向一个字符串后面加字母,刚开始字符串是空的。每一次操作是向当前字符串后面添加字符,形成的新字符串一定要是这n个串中某一个或几个的前缀,如果无法做到,就输了。 这样的游戏似

2016-09-11 21:45:35 1087

原创 乘法逆元的几种求法总结

乘法逆元对于缩系中的元素,每个数a均有唯一的与之对应的乘法逆元x,使得ax≡1(mod n) 一个数有逆元的充分必要条件是gcd(a,n)=1,此时逆元唯一存在 逆元的含义:模n意义下,1个数a如果有逆元x,那么除以a相当于乘以x。下面给出求逆元的几种方法1 循环找解法给定模m和需要求逆的数x,直接暴力枚举1~m-1 检查是否有x*i=1(mod m)这种算法可以应用与写暴力、对拍、模数较小,

2016-07-31 23:58:21 18502

原创 狄利克雷卷积及莫比乌斯反演定理

在数论函数集上,狄利克雷卷积定义为如下的二元运算 (f*g)(n)=d|nΣf(d)g(n/d)狄利克雷卷积运算满足交换律,结合律,分配律在数论函数集上,存在单位元函数ε(n)满足ε(1)=1 ε(n)=0(n>1) 使得(f*ε)=(ε*f)=f而常值函数1(n)则定义为1(n)=1一个数论函数f(n)与1(n)的狄利克雷卷积并不是f(n)自身,而是一个常见的式子 (f*1)(n)=d|n

2016-07-31 23:29:57 2744 1

空空如也

空空如也

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

TA关注的人

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