首页 > 其他分享 >sicp每日一题[2.40]

sicp每日一题[2.40]

时间:2024-10-10 08:51:37浏览次数:14  
标签:2.40 11 pairs 10 prime 每日 sicp unique sum

Exercise2.40

Define a procedure unique-pairs that, given an integer n, generates the sequence of pairs (i, j) with 1 < j < i < n. Use unique-pairs to simplify the definition of prime-sum-pairs given above.


这道题还是挺简单的,最难的部分书上已经实现了,我们只要理解了书上这部分的代码,然后再加个大小的判断即可。

(define (unique-pairs n)
  (flatmap (lambda (i) (map (lambda (j) (cond ((> i j) (list i j))))
                            (enumerate-interval 1 (- i 1))))
           (enumerate-interval 1 n)))

(unique-pairs 5)

(define (prime-sum-pairs n)
  (map make-pair-sum
       (filter prime-sum? (unique-pairs n))))

(prime-sum-pairs 10)

; 执行结果
'((2 1) (3 1) (3 2) (4 1) (4 2) (4 3) (5 1) (5 2) (5 3) (5 4))
'((2 1 3) (3 2 5) (4 1 5) (4 3 7) (5 2 7) (6 1 7) (6 5 11) (7 4 11) (7 6 13) (8 3 11) (8 5 13) (9 2 11) (9 4 13) (9 8 17) (10 1 11) (10 3 13) (10 7 17) (10 9 19))

标签:2.40,11,pairs,10,prime,每日,sicp,unique,sum
From: https://www.cnblogs.com/think2times/p/18455542

相关文章

  • Python 工具库每日推荐【openpyxl 】
    文章目录引言PythonExcel处理库的重要性今日推荐:openpyxl工具库主要功能:使用场景:安装与配置快速上手示例代码代码解释实际应用案例案例:自动生成月度销售报告案例分析高级特性条件格式数据验证扩展阅读与资源优缺点分析优点:缺......
  • 每日学学Java开发规范,集合处理(附阿里巴巴Java开发手册(终极版))
    前言每次去不同的公司,码不同的代码,适应不同的规范,经常被老大教育规范问题,我都有点走火入魔的感觉,还是要去看看阿里巴巴Java开发规范,从中熟悉一下,纠正自己,码出高效,码出质量。想细看的可以去官网下载,或者下面自取阿里巴巴Java开发手册(终极版)五、集合处理【强制】关于ha......
  • sicp每日一题[2.36-2.37]
    果然习惯不能停,就两天没学,昨天就忘的干干净净了。。今天把昨天的补上Exercise2.36Theprocedureaccumulate-nissimilartoaccumulateexceptthatittakesasitsthirdargumentasequenceofsequences,whichareallassumedtohavethesamenumberofelements......
  • 力扣(leetcode)每日一题 1845 座位预约管理系统| treeSet和priority Queue的区别|线段树
    之前发过一篇,感觉还有深挖的地方,于是又补充一些信息这题目虽然是middle难度题目,要解答出来是只要easy的时间,但是深挖可以有hard的难度题解1可以帮助复习线段树的使用,题解2可以复习一下java基础知识题解1线段树这是自己憋出来的线段树classSeatManager{......