刘新宇

  • 关注
  • 短消息
  • 送银子
文章
11
评论
7
推荐
1
收藏
0
社区会龄
3 年
个人网站
--
个人简介

《算法新解》作者

  • 刘新宇 7推荐

    同构——用数论指纹寻找子串排列

    有一道编程趣题, 要求判断一段文字T中,是否包含一个字符串W的某种排列。 据说不少公司还用这道题目用来面试程序员。题目的答案在网络上也到处都能搜索到。这道题目存在一个特别优雅的解法,体现了数学同构的优美。 数论中的算术基本定理说:任何一个正整数都可以唯一地表示成若干素…...

  • 刘新宇 5推荐

    用洛书幻方对抗人类玩家的井字棋程序

    我们在[此前的文章][1]中,给出了一个练习题: 编程实现一个井字棋游戏是传统人工智能中的经典问题,而计算机可以轻松算出三个数字的和并判断其是否等于15。请利用这个同构编写一个简化的井字棋程序,并做到不被人类玩家击败。 现在我们给出这道题目的参考答案。我们的思路是使用《…...

  • 刘新宇 10推荐

    2019年读完的书

    这是连续第三年分享书单了。按照惯例每本书都列出读完的日期、作者、译者,链接、出版社、出版年、ISBN号。 今年破例我给出一些书的短评,并附有图片。 1. 2月3日,[法] 昂利 彭加勒(庞加莱),李醒民 译,《[科学与假设][1]》,商务印书馆,2006-8,ISBN: 97…...

  • 刘新宇 3推荐

    同构——费马小定理

    费马小定理 费马小定理是法国数学家费马于1636年发现的。他在1640年10月18日写给友人法国数学家贝西(Bernard Frénicle de Bessy)的信中首次提出了这个定理。1736年,欧拉给出了费马小定理的一个证明。但从莱布尼茨未发表的手稿中发现他在1683年…...

  • 刘新宇 3推荐

    同构——分红包问题

    这是一道小学三年级上学期,数学广角中关于搭配的题目。大意说,高个子舅舅春节回家,想给三个可爱的孩子小明、小强、小红一些红包用来买过年的玩具。他准备了6个红包,每个里面10元钱。每个小朋友肯定能得到红包,但不一定均分。问一共有几种发的方法。 这道题目如果编程暴力穷举的话会非常容…...

评论了

  • 今年 05-07 11:02

    已移植到Python3

  • 今年 05-05 15:10

    才注意到:https://www.python.org/dev/peps/pep-0373/ 截止到4/20日,Python 2.7终于走过了20年的一个时代。

  • 今年 05-02 21:09

    完整的代码,包括解决长整型字长限制的解法详见: https://github.com/liuxinyu95/unplugged/blob/master/infinity/src/PermuteSubstr.java

  • 今年 05-02 15:20

    也许更加简单的做法是把52换成256,然后直接将c转换为整数,或者用c减去\0。

  • 今年 05-02 15:06

    我第一版程序的确是直接hardcode了前52个素数。并且是这样copy/past命令行的 Prelude> let sieve (x:xs) = x : sieve [y | y <- xs, y `mod` x > 0] Prelude> take 52 $ sieve [2..] [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239] Prelude> 后来改为stream主要是出于介绍无穷流的目的。见这两个程序: * 无穷流和余代数:https://github.com/liuxinyu95/unplugged/blob/master/infinity/src/FCoalg.hs * 本题的Haskell实现:https://github.com/liuxinyu95/unplugged/blob/master/infinity/src/PermuteSubStr.hs