ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 静听溪流

[讨论] 【函数小题】取数组合求最小

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-5-20 12:53 | 显示全部楼层
我也答对了题目,奇怪了,既没有鲜花,也没有财富值奖励,这公平吗?

评分

5

查看全部评分

TA的精华主题

TA的得分主题

发表于 2020-5-20 13:51 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
=LEFT(TEXT(SUM((SMALL(MID(A2,ROW($1:$9),1)*1,ROW($1:$9)))*0.1^ROW($1:$9))*10^9,"000000000"),B2)
看了题之后发现好简单,后来发现掉了一个条件(按照数字原始出现的先后顺序),我把数字全部给重排了,哈哈,但是又觉得自己写的还挺有意思的,错误答案也放上来供大家乐一乐吧。嘿嘿

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-20 19:30 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
贴上我的公式:
274字符长火车:
=TEXT(MIN(--SUBSTITUTE(FILTERXML("<a><b>"&TEXTJOIN("</b><b>",,SUBSTITUTE(MID(CONCAT(BASE(DECIMAL(MID(SUBSTITUTE(A2,0,"A"),COLUMN(A:I),1),36)*INT(MOD(ROW(1:512)*2/2^COLUMN(A:I),2)),36)),ROW(1:512)*9-8,9),0,""))&"</b></a>","a/b[string-length(.)="&B2&"]"),"A",0)),REPT(0,B2))
239字符稍微精简了下:
=TEXT(MIN(--FILTERXML("<a><b>"&TEXTJOIN("</b><b>",,SUBSTITUTE(MID(CONCAT(TEXT((MID(A2,COLUMN(A:I),1)+1)*INT(MOD(ROW(1:512)*2/2^COLUMN(A:I),2))-1,"0;a;0")),ROW(1:512)*9-8,9),"a",""))&"</b></a>","a/b[string-length(.)="&B2&"]")),REPT(0,B2))
再来个低版本的210字符:
=TEXT(MIN(IFERROR(--LEFT(SUBSTITUTE(SUBSTITUTE(BASE(MMULT(MID(BASE(ROW(1:511),2,9),COLUMN(A:I),1)*DECIMAL(MID(SUBSTITUTE(A2,0,"A"),COLUMN(A:I),1),36),36^(9-ROW(1:9))),36)&"!",0,""),"A",0),B2),"")),REPT(0,B2))

评分

4

查看全部评分

TA的精华主题

TA的得分主题

发表于 2020-5-20 20:17 | 显示全部楼层
象山海鲜 发表于 2020-5-20 12:24
没有CONCAT 函数,凑一个

    0-10^B2     偶次方时,不改变负值,学习了 ~~~~~
  我老实用 -(N^4)  , OUT

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2020-5-21 09:36 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
=MIN((IF(LEN(MID(A2,ROW($1:$9),COLUMN($A:$I)))=B2,MID(A2,ROW($1:$9),COLUMN($A:$I)),10^10))*1)
排列组合太难了,我暂时只能按照顺序依次排列组合,功力不够啊(错误答案)

TA的精华主题

TA的得分主题

发表于 2020-5-21 10:56 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
看了答案,然后就不好意思练习了

TA的精华主题

TA的得分主题

发表于 2020-5-24 19:16 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
怎么看不懂规律,,,,

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-24 21:34 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
LWQ张无忌 发表于 2020-5-24 19:16
怎么看不懂规律,,,,

这道题是到组合题,用一般的规律来解的话估计无法完成。

TA的精华主题

TA的得分主题

发表于 2020-5-24 22:53 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 LWQ张无忌 于 2020-5-25 07:12 编辑
静听溪流 发表于 2020-5-24 21:34
这道题是到组合题,用一般的规律来解的话估计无法完成。

优先最小值全部要,次提取最后一个最小值后面的数,够位数提取最小的几个,按顺序排列,不够位数再提前面的最小个数,然后按先后顺序排列?
我想问有三个最小数间隔,然后该怎么提取?如果没有一定的规则,那么就不严谨。
image.png




TA的精华主题

TA的得分主题

 楼主| 发表于 2020-5-25 10:43 | 显示全部楼层
LWQ张无忌 发表于 2020-5-24 22:53
优先最小值全部要,次提取最后一个最小值后面的数,够位数提取最小的几个,按顺序排列,不够位数再提前面 ...

数据为9位整数(如317865402)
现假设从中需要取3个数字。那么可以从9位整数中任意取3个数字(如1,3,4)形成一个数字,而这个数字是按照选取的1,3,4在原始数据317865402中的排列先后顺序进行组合,最终的得到的数字只能是314。因为3是第一个出现的,然后是1,最后才是4。
按照这个规则,你可以得到N个3位整数,然后从这些整数中,选出最小的那个。这就是最终要的结果了。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-6-3 11:56 , Processed in 0.037822 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表