凑8游戏由 Max,也就是创办这个网站的人,于初一军训期间介绍给笔者。规则如下:

开局时,两个人两只手都是1,双方轮流,每轮玩家可以将自己手上的一个数字的值变为该数字和对方手上某个数字的和(只准加,不准加自己),如果超过7,一律变为1,如果为8,则撤手,两只手都撤下为赢。

此游戏有无数变种(正因此随机找一个人很有可能因不认同规则而玩不起来),但 Max 的变种最吸引笔者,因为可以靠自己变7乃至双7限制对方的选择,给纯粹随波逐流的游戏增添了策略。高中时,笔者就试图分析此游戏的策略,无奈学艺不精,半途而废。4年后,笔者受室友影响,沉迷上了国际象棋,对求解器的原理颇好奇,于是一鼓作气,将其解出。

笔者目前的编程功底不能说比往年高了多少,至今仍然几乎是高一用 Python 刷洛谷攒下的功底,换任何一门语言都不能习惯——即使是类型系统严谨很多的 Rust 和目前最熟悉的 TypeScript。能写出来,也许要感谢 ChatGPT 和 Copilot 吧。

本文写给无博弈论基础者。

阅读全文 »

在上一篇 post 中,我们介绍了在椭圆曲线上的 weil pairing 和 tate pairing。在这一篇中我们考虑椭圆曲线在丢番图方程上的一些应用。

阅读全文 »

为了更好理解 weil-pairing 以及 miller 算法,这里使用 python 从 0 开始实现了一遍。

用到的依赖只有 pow 函数,math.inf 和深拷贝函数 copy.deepcopy,且使用了本人并不顺手的 OOP 编程范式。

虽然写了之后对 weil-pairing 和 OOP 的理解同时加深了(

阅读全文 »

我们先来看题面,点进去之前可以先思考一下:

Given an array of integers nums containing n+1n + 1 integers where each integer is in the range [1,n][1, n] inclusive, n105n \le 10^5.

There is only one repeated number in nums, return this repeated number.

You must solve the problem without modifying the array and using only constant extra space.

阅读全文 »

小学的时候家父给我炫耀他上学的时候学过手算开平方根,说以后在朋友间炫耀可能有用。当时我可能学会了,但之后这个方法似乎在数学教材中绝版了,只记得“二十倍初商加次商”这个口诀。这篇文章的主要目的就是叙述,我如何回忆起来的过程。

阅读全文 »

introduction

在前序文章《从零搭建一个又快又安全的 VNC 服务》中,我们实现了从非公网机器连接到使用了 ddns 的公网机器,并搭建了公网机器的 VNC 服务;在中序文章《Learn 内网穿透 the hard way》中,我们使用了 ddns 的公网机器作为跳板机,连接到了另一台非公网机器,从而实现了居家办公的梦想;接下来这篇文章的目的是在中序文章的基础上,在另一台非公网机器搭建 web 服务(也就是 overleaf),本地访问,从而达到省掉一年 $89 订阅费用的目的。

阅读全文 »

随着 deepseek 与 chatGPT o3-mini 的出炉,我们欣喜地看到 LLM 正不断朝着“降本”抑或“增效”的方向而不断努力。但毕竟 LLM 训练也带着 paper-oriented 的特性,我们需要警惕,再朝着这样的方向进行下去,LLM 有可能变成下一个“做题家”。

阅读全文 »
0%