楼主 wshcw |
转换结果.png [竞赛题]大小转换.rar |
2楼 jackeroo |
我来回答,公式比较长,所以分成两步来做,请见附件。 如果是数字就好了。 |
3楼 gouweicao78 |
我的答案目前140 |
4楼 jackeroo |
我在做这道题的时候有个难题,我解决不了,就是直接形成{"小","大","小","大"}这种形式的内存数组后,如何把文本连接起来,对我来说我没有想出好办法,如果是数字就好办了。不知道小草用的什么办法? |
5楼 gouweicao78 |
总算缩短到117字了 是否开放式?先屏蔽答案: =LEFT(SUBSTITUTE(SUBSTITUTE(SUM(TEXT(MID(A2,COLUMN(A:O),1),"[<5]1;;2;!1")*10^(15-COLUMN(A:O))),2,"大"),1,"小"),LEN(A2)) |
6楼 jackeroo |
给个提示撒,呵呵。我刚从初级菜鸟晋升为中级菜鸟,技术肯定没有你们高。 |
7楼 omnw |
我也是难到这里了!! |
8楼 水星钓鱼 |
116个字符,方法比较笨 [code]=SUBSTITUTE(SUBSTITUTE(LEFT(SUM(TEXT(MID(A2,16-ROW($1:$15),1),"[<=4]2;;1;!0")*10^ROW($1:$15)),LEN(A2)),2,"小"),1,"大")]/code] 用函数连接文本是不可行的,楼上的两位:) |
9楼 shaowu459 |
=SUBSTITUTE(SUBSTITUTE(LEFT(SUM(IF(--(0&MID(A1,ROW($1:15),1))>4,2,1)*10^(15-ROW($1:15))),LEN(A1)),1,"小"),2,"大") 不好意思, 看一楼可以发附件以为是开放的……=SUBSTITUTE(SUBSTITUTE(LEFT(SUM(IF(--(0&MID(A1,ROW($1:15),1))>4,2,1)*10^(15-ROW($1:15))),LEN(A1)),1,"小"),2,"大") |
10楼 jackeroo |
原始文本数值超过18位,好像就不能用这种方法来做了。 提问:你们最多能做到多少位的文本数值,可以用"小","大"来标注?嘿 我最多只能做到24位的文本数值可以用“小“,”大“实现。 就等着破另一个记录了,不管用什么方法。 有谁愿意接受挑战啊? |
11楼 shaowu459 |
赫赫,有字数要求的一定要能取巧就取巧:)只看题目数据,嘿嘿 |
12楼 shaowu459 |
本社区有一点奇怪,第一页我能看见11楼的帖子,转到第二页看还是11楼打头…… |
13楼 gouweicao78 |
结合一下前面的解法113字 =LEFT(SUBSTITUTE(SUBSTITUTE(SUM(TEXT((0&MID(A2,16-COLUMN(A:O),1))-5,"2;1")*10^COLUMN(A:O)),2,"大"),1,"小"),LEN(A2)) |
14楼 mxqchina |
思路全部来自9楼,109字符。 =SUBSTITUTE(SUBSTITUTE(LEFT(SUM(IF(MID(A2,ROW($1:$15),1)>"4",2,1)*10^(15-ROW($1:$15))),LEN(A2)),1,"小"),2,"大") |
15楼 gouweicao78 |
14楼,把15-row移动到MID中,就是107字。 |
16楼 shaowu459 |
赫赫,这是哪挨哪啊,怎么又和身份证联系起来了 |
17楼 jackeroo |
|
18楼 洋五月 |
看看,学习 |
19楼 pureshadow |
函魔的题 =SUBSTITUTE(SUBSTITUTE(MID(SUM(IF(--(0&MID(9&A1,ROW(1:9),1))>4,1,)*10^(9-ROW(1:9))),2,LEN(A1)),1,"小"),0,"大") |
20楼 pureshadow |
我居然把大小用反了,汗! 再简一下: =SUBSTITUTE(SUBSTITUTE(MID(SUM((--(0&MID(9&A1,ROW(1:9),1))>4)*10^(9-ROW(1:9))),2,LEN(A1)),1,"大"),0,"小") 我改一下,因为……该妖是粗心的妖…… |
21楼 scsys1 |
看一看这一题的解法。谢谢! |
22楼 wuzhouxing |
学习一下看看答案! |
23楼 wshcw |
现将我的参考答案(公式101个字符)公布出来: =SUBSTITUTE(SUBSTITUTE(MID(SUM((1+(MID(A1,ROW($1:15),1)>"4"))/10^ROW($1:15)),3,LEN(A1)),2,"大"),1,"小") |
24楼 wshcw |
有人再简化到97字,但有缺陷: 如:数字:123491245785598结果就有误. =MID(SUBSTITUTE(SUBSTITUTE(SUM((MID(A2,ROW($1:15),1)<"5")/10^ROW($1:15)),1,"小"),0,"大"),3,LEN(A2)) |
25楼 jackeroo |
嗯,但太过于求简短了,公式首先还是要能得出想要的东西,然后才是效率问题。 |
26楼 sendsend |
均要回复啊为什么 |
27楼 syz105729913 |
=SUBSTITUTE(SUBSTITUTE(LEFT(SUM(IF(MID(A2,ROW($1:$15),1)>"4",2,1)*10^(15-ROW($1:$15))),LEN(A2)),1,"小"),2,"大") 109个字符 |
28楼 moon2778 |
。。。。。。。。。。。想了很久,目前想到这里。。。 (竞赛题)大小转换(moon2778).rar |
29楼 moon2778 |
你们好厉害。。。。。。。。。。。。。竟然利用小数点来连接数字。。。。。。。。 |
30楼 syz105729913 |
哈,月亮姐姐也来啦 |
31楼 saomai |
高手如云呀 学习先! |
32楼 donghan |
学习学习。 |
33楼 一米阳光-洋洋 |
学习了,研究之深佩服 |
34楼 xie0315 |
还是不知道如何连接内存数组中的字符 |
35楼 mosforyou |
公式长度103(包含等号) 干掉老美后99字符: =SUBSTITUTE(SUBSTITUTE(MID(SUM(2^(MID(A2,ROW($1:15),1)>"4")/10^ROW($1:15)),3,LEN(A2)),1,"小"),2,"大") [竞赛题]大小转换2.rar |
36楼 wenshui2006 |
回复学习一下,,, |
37楼 liuguansky |
看下答案再思考。 |
38楼 leroy |
向高手学习一下 |
39楼 bluexuemei |
学习学习 |
40楼 w83365040371 |
|
41楼 gowwwnet |
这个问题真的是一个问题解决。。 |
42楼 wsmot |
看看吧,大家都会支持你 |
43楼 健康快乐123 |
链接字符是利用小数点进行的,即0.1+0.001+0.0001-----=0.111------,再利用替换函数将1替换为小,2替换为大(其中把小于5的替换为1,大于4的替换为2) |
44楼 fankairong |
学习了 |
45楼 kakaco |
看看答案先。 |
46楼 csmctjg |
学习**! |
47楼 翰墨水木 |
到底怎么连接数组呢? |