一键下载网易云歌单

如果从网易云音乐内部直接下载,得到的是 ncm 文件,无法用其它音乐播放器打开,如果想要得到 mp3 格式的歌曲,则需要去一些特殊的下载网站,如 https://music.zhuolin.wang/, 手动搜索歌名然后下载,效率低下。

因此我实现了一个只需要输入网易云歌单链接就可以直接下载歌单内所有歌曲的程序,在此记录下使用方法和代码原理。

Read more

使用VPN加速Git操作

直接打开 VPN 只能加速网页浏览等场景,对于使用 Git 访问 GitHub 而言起不到效果。的确可以使用国内的 GitHub 镜像达到加速下载的效果,但是在某些情况下这样并不方便。比如你已经 clone 了远程仓库,需要 push 一些 change 上去;又或者你要用其他人写的,使用到 Git 相关操作的脚本,就需要全局搜索正常的 GitHub 网址替换为国内的 GitHub 镜像。

但是通过很简单的操作配置一下 gitconfig 文件,就可以使用 VPN 加速 Git 命令(当然前提是开了 VPN),下面将讲一下如何操作。

Read more

Vim配置及操作

早在初次接触 Linux 系统时就听闻过 Vim 的大名,但是当时只会连进入编辑和退出编辑都不会,印证了那句话:“生成随机字符串的最好方法是让新手尝试退出 Vim”。后来学会了基础的使用方法,终于可以使用 Vim 做一些简单的终端文字处理,但是面对一坨黑框和没有高亮的代码,改一句简单的代码都痛苦万分,于是找教程配置插件,终于将 Vim 打造成了高端的模样。下面的内容分为两部分,第一部分是 Vim 常用的操作合集,第二部分是 Vim 的配置方法。(可能会不断更新,毕竟 Vim 太需要折腾了)

Read more

Codeforces 题解 1553B [Reverse String]

【题目大意】 给定字符串 s,给出一个由 s 生成新字符串 t 的方法 M:将指针 p 放在 s 的某一位上,然后将 p 向右移动若干次,再向左移动若干次(p 始终指向 s 中的字符),p 指到的所有字符排列成一个新字符串 t。例如 s 为 abcdef,p 初始为 2(即指向 c),向右移动 2 次,向左移动 3 次,生成的 t 为 cdedcb。现给出若干组 s 和 t,判断 t 能否由 s 使用 M 方法生成。

【数据范围】 组数 $q \le 500$, $|s| \le 500$,$sum(|s|) \le 500$

Read more

Codeforces 题解 1557A [Ezzat and Two Subsequences]

【题目大意】 给定 n 个数字组成的数组(可为负),将其分为两组非空的子数组 a, b,定义 f(x) 为数组 x 的平均值,求 f(a) + f(b) 的最大值。

【数据范围】 组数 $t \le 10^3$, $n \le 10^5$,$|a_i|\le 10^9$,$sum(n)\le 3\cdot 10^5$

Read more

Codeforces 题解 1557B [Moamen and k-subarrays]

【题目大意】 给出 n 个数组成的数组 a,记操作 M 为:将 a 切分为 k 份,这 k 份任意排列,组成序列 b。若存在某种操作 M,使得 b 单调不减,则输出 Yes,否则 No

【数据范围】 组数 $t \le 10^3$,$k \le n \le 10^5$,$|a_i| \le 10^9$ 且 $a_i$ 互不相等,$\sum n \le 3\cdot 10^5$

Read more

Jetson Nano 安装 Tensorflow2

Jetson Nano 是 arm 架构的处理器,Tensorflow 官网的安装教程无法适用,需要从 NVIDIA 官网下载专门的安装包。下面是在 Jetson Nano 上安装 Tensorflow2 的详细流程。

Read more

Git 操作简介

此简易教程的初稿写于大二寒假,用于科协的 FC18 项目开发组的代码远程管理,因为涉及 Unity 项目,所以使用了 Git LFS 和 YAML Merge 等比较高级的工具。

在大三暑假时做过一次修改,用于管理电设小学期团队的机械臂项目 JetArm 的合作开发。新版删除了涉及 Unity 的部分,并做了精简优化,这里发出来作为存档,以便随时参考。

注意:该教程使用 GitLab,但是与 GitHub 的操作差不多,可以作为参考

Read more

Windows 下使用 Anaconda 安装 Tensorflow2

该教程使用 Anaconda 在 Windows 下配置基于 GPU 的 Tensorflow2 的运行环境。优点是不需要手动下载 NVIDIA CUDA 等底层支持包,一键安装;缺点是只支持 tf2.1 及以下的版本,conda 在安装高版本的 tf 不会自动补全显卡依赖。所以如果需要使用基于 GPU 的高于 2.1 版本的 tensorflow,建议按照 Tensorflow GPU支持 手动安装 NVIDIA Driver, CUDA, cuDNN SDK 等依赖。

Read more