ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[讨论] 内存数组五之华山论剑

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-12-11 20:17 | 显示全部楼层
dipperrrr 发表于 2019-12-11 20:10
第三问,没考虑最强跟次强相等的情况。
=INDEX(B:B,MOD(MAX(((D3:D23

既然是大佬们回题,就应该刁难一下:
公式要经得起测试才行啊,D老师的公式,假如王重阳的2招都是9的话就不对了

TA的精华主题

TA的得分主题

发表于 2019-12-11 20:20 | 显示全部楼层
solextrade 发表于 2019-12-11 20:17
既然是大佬们回题,就应该刁难一下:
公式要经得起测试才行啊,D老师的公式,假如王重阳的2招都是 ...

嗯嗯,所以我说明了没考虑最强和次强相等的情况,要区分的话我再看看。另外不会出现并列第一吧?

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-12-11 20:27 | 显示全部楼层
本帖最后由 solextrade 于 2019-12-11 20:52 编辑
dipperrrr 发表于 2019-12-11 20:20
嗯嗯,所以我说明了没考虑最强和次强相等的情况,要区分的话我再看看。另外不会出现并列第一吧?

并列第一没有,因为只有一本九阴真经,射雕里还没有九阳,神雕里才提到

我估计公式很快就会被破,因为几个坑都快被填平了

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2019-12-11 21:18 | 显示全部楼层
本帖最后由 Datous 于 2019-12-11 23:05 编辑



=INDEX(B:B,(MATCH(1,FREQUENCY(-99,(B3:B23=TRANSPOSE(B3:B23))*(D3:D23+TRANSPOSE(D3:D23))*(MUNIT(21)-1)),)+60)/21)

按楼主要求改改
=INDEX(B:B,MOD(MAX(ROW(3:23)+(ROW(3:23)<>COLUMN(C:W))/1%%*(B3:B23=TRANSPOSE(B3:B23))*(D3:D23+TRANSPOSE(D3:D23))),100))

评分

9

查看全部评分

TA的精华主题

TA的得分主题

发表于 2019-12-11 21:36 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 sbdk007 于 2019-12-11 22:22 编辑

第一、二题被老师们的精妙公式解决了,上第三题
=LOOKUP(,0/FREQUENCY(-99,-MOD(MMULT(SMALL(COLUMN(A:U)/1%+(B3:B23=TRANSPOSE(B3:B23))*D3:D23,ROW(1:7)*21-{0,1}),{1;1}),100)),B3:B23)


评分

6

查看全部评分

TA的精华主题

TA的得分主题

发表于 2019-12-12 09:49 | 显示全部楼层
本帖最后由 丢丢表格 于 2019-12-12 14:38 编辑
solextrade 发表于 2019-12-11 20:27
并列第一没有,因为只有一本九阴真经,射雕里还没有九阳,神雕里才提到

我估计公式很快就会被破 ...

刚看到 这个题。

要是不用 权重法(SMALL)  第三小题 的确不好做,要是有出现 两个第一名时, 只取首次出第一名的那个人。

公式错误
=INDEX(B:B,SECOND(MIN(IF(COUNTIFS(B:B,B3:B23,D:D,">"&10-COLUMN(A:BE)/10)>1,TIME(0,COLUMN(A:BE),ROW(3:23))))))

用 SMALL 的思路是:
=LOOKUP(1,0/FREQUENCY(-99,-MOD(MMULT(SMALL((B3:B23=TRANSPOSE(B3:B23))*D3:D23+COLUMN(C:W)/1%%,ROW(1:21)*21-{1,0}),{1;1}),100)),B3:B23)

评分

10

查看全部评分

TA的精华主题

TA的得分主题

发表于 2019-12-12 09:59 | 显示全部楼层
就是求俩俩相加的最大值,不能用large和small,撞车撞的哟,只好再琢磨去了

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2019-12-12 10:06 | 显示全部楼层
Datous 发表于 2019-12-11 21:18


=INDEX(B:B,(MATCH(1,FREQUENCY(-99,(B3:B23=TRANSPOSE(B3:B23))*(D3:D23+TRANSPOSE(D3:D23))*(MUNIT ...

你这种 矩阵 对应相加最大值法, 思路非常正确 。
这个题 常规解是 权重法 (SMALL),  可被楼主禁用。  5555
只好另开溪径。
我用的是 逐位 排除法 。只针对此题…………

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-12-12 10:11 | 显示全部楼层
丢丢表格 发表于 2019-12-12 09:49
刚看到 这个题。

要是不用 权重法(SMALL)  第三小题 的确不好做,要是有出现 两个第一名时, 只取首 ...

丢老师威武,109,拜服!!!

这真是越短的公式越难理解
另,海版的时间函数被丢老师先下手了


TA的精华主题

TA的得分主题

发表于 2019-12-12 10:30 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
丢丢表格 发表于 2019-12-12 09:49
刚看到 这个题。

要是不用 权重法(SMALL)  第三小题 的确不好做,要是有出现 两个第一名时, 只取首 ...

好聰明的寫法, 抄一下

=INDEX(B:B,MOD(MIN(IF(COUNTIFS(B:B,B3:B23,D:D,">"&10-COLUMN(A:BE)/10)>1,COLUMN(A:BE)/1%+ROW(3:23))),100))

评分

4

查看全部评分

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-6-3 15:02 , Processed in 0.053014 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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