[2021年秋招笔试记录]_阿里_8.28

本文包含两道编程挑战题的详细解析。第一题探讨如何通过最少步骤将一个01串转换为另一个,允许的操作包括交换、翻转和替换。第二题则要求从一个给定数字的数位中找出能被特定数整除的所有排列组合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目一

输入 A和B 两个长度为n 的 01 串,问 A至少通过几步操作才能变成B。字符串操作有:

  • 交换两个位置的数
  • 将1换为0;或者 0换成1
  • 翻转字符串

例如:
输入:
7(字符串的长度)
1111000
0010011
输出
3

题目二

给n和m,将n的数位进行排列,如520,可以组合成520,502,250,205,052,025;问其中有多少个不含前导0且整除m的数字
例:
输入:
322 2
输出:
2 ------322 和232
输入:
97284 4
输出:
36(记不清了)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值