《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q09)

《程序员的算法趣题》Q08 优秀的扫地机器人 《程序员的算法趣题》Q08 优秀的扫地机器 第一次写博客,请多见谅。 目前在看图灵程序设计丛书绝云译的《程序员的算法趣题》,书中是用Ruby实现的。因为没学过Ruby,只能大致理解。python也是刚入门,感觉网上的答案有点难理解,自己尝试写了一个比较初级的代码。 问题描述 现在有很多制造商都在卖扫地机器人,可是这些机器人有时候会反复清扫某一个地方。假设有一款机器人不会反复清扫同一个地方,它只能前... 阅读详情

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~

在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6)

Q09 落单的男女

    人们聚集在某个活动会场上,根据到达会场的顺序排成一排等待入场。假设你是活动的主办人员,想把人们从队列的
某个位置分成两组。
    你想要让分开的两组里每一组的男女人数都均等,但如果到场顺序不对,可能出现无论怎么分,两组都不能男女均等的情况。
    举个例子,有 3 位男性、 3 位女性以“男男女男女女 ” 的 顺 序 到 场, 如图所示,无论从队列的那个位置分开,两组的男女人数都不均等。但如果到场顺序为“男男女女男女”,那么只需要在第 4 个人处分组就可以令分开的两组男女人数均等了。

                                                    

问题
       求男性 20 人、女性 10 人的情况下,有多少种到场顺序会导致无论怎么分组都没法实现两组男女人数均等?(原书,感觉有问题!)

       看原书分析,比较合理的问题应该是:

        求男性20人、女性10人的情况下,有多少种到场顺序会导致无论怎么分组都没有任何一组内部男女人数能够均等?

分析图:

 

问题可简化为:从0点至蓝点,不经过红点,有多少种可能?

利用最短路径的思路:

                              

man_number = 20
female_number = 10

man_number += 1
female_number += 1
array = [[0]*man_number for i in range(female_number)]
array[1][0] = 1
array[0][1] = 1
for man in range(man_number):
    for female in range(female_number):
        if (man != female) and (man_number-man != female_number-female):
            try:
                if man > 0:
                    array[female][man] += array[female][man-1]
                if female > 0:
                    array[female][man] += array[female-1][man]
            except IndexError:
                pass
result = array[female_number-2][man_number-1] + array[female_number-1][man_number-2]
print("有%s种" % result)

运行结果:

            有2417416种

YOLO26改进策略【卷积层】| SPD-Conv 针对小目标和低分辨率图像的检测任务 SPD-Conv是一种新的 CNN 构建模块,用于替代传统 CNN 架构中使用的步长卷积(strided convolution)和池化(pooling)层,它由空间到深度(Space-to-depth,SPD)层和非步长卷积(non - strided convolution)层组成。 阅读详情

相关推荐

别再为采样窗口发愁了!手把手教你用STM32实现三电阻分扇区电流采样(附代码避坑)

本文详细介绍了STM32平台下三电阻分扇区电流采样的实现方法,重点解决采样窗口选择不当和扇区切换逻辑问题。通过PWM定时器与ADC协同工作的底层机制分析,提供可移植的代码示例和实战经验,帮助工程师在电机矢量控制(FOC)系统中实现高精度相电流采样。

weixin_42531516的博客 165

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q11)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q11 斐波那契数列      斐波那契数列由两个 1 开端,其后的每一位数字都是前两位数字之和。譬如 1 和 1 的和为 2, 1 和 2 的和...

cloudly89的专栏 290

抖音用户主页视频数据爬虫详解(点赞,收藏,分享等)

的包中有个max_cursor参数,请求载荷中也有一个这样的参数,每次请求的数据中max_cursor是下一个请求的载荷,,,同时has_more为1时候代表还能请求,0为不能请求,我们做如下判断。最后发现cookie很容易过期,批量爬取有点困难,,,,我们采用drissoinpage进行自动化获取。首先进行抓包分析,,,随便找个主页,f12,关键词搜索,发现这个包是以post开头。请你第一次运行先按0,进行登录(或者触发反爬的时候),登录完成之后,按1进行爬取,完整代码请在知识星球。

m0_74823507的博客 3429

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q02)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q02 数列的四则运算     在各个数字之间插入四则运算的运算符组成算式,然后计算算式的结果(某些数位之间可以没有运算符,但最少要插入 1 个运...

cloudly89的专栏 415

欧姆龙 CJ1W-SCU模块使用通配符+结束码实现非固定长度数据的接收

实验设备:CJ2M-CPU33、CJ1W-SCU21、XW2Z-200T 实验目的:了解 CJ1W-SCU 通配符使用 1.硬件接线: CJ1W-SCU21单元号拨码置于8,使用串口1(232口)。 2.软件设置: ① 新建工程,选择PLC型号CJ2M-CPU33,切换到编程模式,如下图: 、 ② 创建I/O并进行相关配置,如下图: ③ 设置为用户设置,协议宏模式,8位数据位,2位停止位,偶校验9600波特率,如下图: 、 ④ 打开CX-Protocal软件,新建工程: .

weixin_42118352的博客 1984

别再只会用QTcpSocket了!手把手教你用QSslSocket为你的Qt网络应用加上SSL/TLS加密(附完整代码示例)

本文详细介绍了如何将Qt网络应用从QTcpSocket迁移到QSslSocket,实现SSL/TLS加密传输。通过对比API差异、解析核心机制和提供完整代码示例,帮助开发者快速掌握安全网络编程技巧,有效防范数据窃听和中间人攻击等安全风险。

weixin_30654583的博客 400

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q06)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q06 (改版)考拉兹猜想       “考拉兹猜想”是一个数学上的未解之谜。 考拉兹猜想 对自然数 n 循环执行如下操作。 ·n 是...

cloudly89的专栏 291

400G光模块测试全攻略:从PCS层到CMIS合规的避坑指南

本文为网络设备测试工程师和光通信研发人员提供了一份详尽的400G光模块测试实战指南。文章深入剖析了从PCS层信号完整性、FEC容限到CMIS管理接口合规性测试的全流程,并分享了ANLT协议分析、SerDes眼图调试以及系统级流量压力测试中的核心技巧与常见避坑点,旨在帮助读者构建一套高效、精准的测试体系,确保高速光模块的可靠性与性能。

weixin_29300931的博客 210

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q04)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q04 切分木棒     假设要把长度为 n 厘米的木棒切分为 1 厘米长的小段,但是 1 根木棒只能由 1 人切分,当木棒被切分为 3 段后,可...

cloudly89的专栏 274

从零手搓大模型(一)文本如何变成 LLM 的输入

本文介绍了从原始文本到LLM输入向量的完整处理流程。主要内容包括: 文本预处理:通过正则表达式将原始文本分割成token列表,处理标点和空格。 词表构建:创建token到ID的映射字典(vocabulary),这是文本数字化的关键步骤。 简单tokenizer实现:封装了编码(encode)和解码(decode)功能,完成文本与token ID的相互转换。 处理流程:原始文本 → 分词 → token ID → 嵌入表示 → 最终输入向量。 数据形状变化:从字符串逐步转换为(batch_size, cont

echo的博客 998

C/C++ LMS算法详解及源码

LMS(Least Mean Squares)算法是一种自适应滤波器算法,用于估计一个系统的参数,以使输出信号与期望信号之间的均方误差最小化。LMS算法通过使用梯度下降的方法,逐步调整自适应滤波器的权值来优化滤波效果。

希望我的博客,能帮上你解决学习中工作中所遇到的问题 3276

程序员的算法趣题

内容简介 本书是一本解谜式的趣味算法书,从实际应用出发,通过趣味谜题的解谜过程,引导读者在愉悦中提升思维能力、掌握算法精髓。此外,本书作者在谜题解答上,通过算法的关键原理讲解,从思维细节入手,发掘启发性算法新解,并辅以 Ruby、JavaScript 等不同语言编写的源代码示例,使读者在算法思维与编程实践的分合之间,切实提高编程能力。 本书适合已经学习过排序、搜索等知名算法,并想要学习更多有趣算法...

GitChat 3863

面向RKNN平台的YOLOv11 Pose部署实战:模型转换、优化与端侧姿态估计推理

本文研究了YOLOv11 Pose模型在Rockchip RKNN平台上的部署方案。通过分析模型架构和关键技术,提出完整的转换流程,包括ONNX格式转换、检测头优化和量化配置。在RK3588硬件平台上实现了100 FPS的实时姿态检测,验证了该方案的可行性。研究主要贡献包括:1)提出YOLOv11 Pose到RKNN平台的完整转换方案;2)优化后处理算法;3)实现高效的边缘计算部署。实验结果表明,该方案能有效解决边缘设备计算资源受限的问题,为人机交互等应用场景提供了实用的技术方案。

m0_71589036的博客 613

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q07)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q07 日期的二进制转换      把年月日表示为 YYYYMMDD 这样的 8 位整数,然后把这个整数转换成二进制数并且逆序排列,再把得到的二进制...

cloudly89的专栏 294

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q08)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q08 优秀的扫地机器人     假设有一款不会反复清扫同一个地方的机器人,它只能前后左右移动。举个例子,如果第 1 次向后移动,那么连续移动 3 ...

cloudly89的专栏 391

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q16)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q16 3 根绳子折成四边形     假设分别将 3 根长度相同的绳子摆成 3 个四边形。其中 2 根摆成长方形,剩下 1 根摆成正方形。这时,会...

cloudly89的专栏 344

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

程序员的算法趣题:Q09 落单的男女(Java版)

题目说明 人们聚集在某个活动会场上,根据到达会场的顺序排成一排等待入场。 假设你是活动的主办人员,想把人们从队列的某个位置分成两组。 求男性 20 人、女性 10 人的情况下, 有多少种到场顺序会导致无论怎么分组都没法实现任一组的男女人数均等?(原书表述有歧义,此处已修改) 即两组内的男女数量均不相同。 思路 如上图所示, 在10行20列的网格中,每一个交叉点的坐标都表示男、女的数量 x增加1,表示到一个男生;y增加1,表示到一个女生。 第一组:x和y相等的点标为"红点", 第二组:(20-x)

lanying100的博客 445

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q22)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q22 不缠绕的纸杯电话      绳子连接纸杯制作“纸杯电话”——这应该勾起了很多人对理科实验的回忆。如果把绳子拉直,对着一边的纸杯讲话,声音就可...

cloudly89的专栏 358

14万程序员挑战过的算法趣题

计算机的世界每天都在发生着深刻的变化。新操作系统的发布、CPU性能的提升、智能手机和平板电脑的流行、存储介质的变化、云的普及……这样的变化数不胜数。在这样日新月异的时代中...

Java 架构师之路 502

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q03)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q03 翻牌     这里有 100 张写着数字 1~100 的牌,并按顺序排列着。最开始所有牌都是背面朝上放置。某人从第 2 张牌开始,隔 1 ...

cloudly89的专栏 301

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q05)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q05 还在用现金支付吗     当下,坐公交或者地铁时大部分人都是刷卡的。不过,时至今日还在用现金支付的人还是比想象的多。本题我们以安置在公交上的...

cloudly89的专栏 332

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q29)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby(为主),JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q29 合成电阻的黄金分割比     我们在物理课上都学过“电阻”,通过把电阻串联或者并联可以使电阻值变大或者变小。电阻值分别为 R1、 ...

cloudly89的专栏 417

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q23)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q23 二十一点通吃     赌场经典的二十一点游戏 A中,每回合最少下注 1 枚硬币,赢了可以得到 2 枚硬币,输了硬币会被收走。     假设...

cloudly89的专栏 386

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q18)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q18 水果酥饼日     日本每月的 22 日是水果酥饼日。因为看日历的时候, 22 日的上方刚好是 15 日,也就是“‘22’这个数字上面点缀...

cloudly89的专栏 369

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q14)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q14 世界杯参赛国的国名接龙     2014 年 FIFA 世界杯的 32 个参赛国                            ...

cloudly89的专栏 367

《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q20)

《程序员的算法趣题》-(日)增井敏克 , 书中为69 道数学谜题编写了解题程序, 编程语言为:Ruby,JavaScript,C语言。有兴趣的同学,可以购书阅读~ 在此更新个人编写的Python版,仅供学习使用。(运行环境:Python3.6) Q20 受难立面魔方阵     西班牙有个著名景点叫圣家堂,其中“受难立面”上主要画着耶稣从“最后的晚餐”到“升天”的场景,其中还有一个如图所示的...

cloudly89的专栏 357
上一篇: 《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q08)
下一篇: 《程序员的算法趣题》-(日)增井敏克 Python解题 -- (Q10)
JemmaLiu
博客等级 码龄15年 9粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值