
1 guizer 2016-06-22 11:33:08 +08:00 这是什么语言啊,第一张图片我居然看懂了 |
2 mns 2016-06-22 11:35:10 +08:00 via Android 有意思 |
3 xx314327475 2016-06-22 11:37:26 +08:00 代码程序要是设计的再复杂一点就好了 |
5 SvenWong 2016-06-22 11:42:09 +08:00 java 代码的缩进有点问题 |
6 viko16 2016-06-22 11:42:31 +08:00 第一眼就觉得是 HR 的新阴谋! |
7 lichun 2016-06-22 11:45:45 +08:00 tel = '18013820100' arr = list(set(tel)) index = [arr.index(number) for number in tel] |
8 fcicq 2016-06-22 11:47:35 +08:00 正常的语言不应该能执行的. 越界了. |
9 sunchen 2016-06-22 11:48:54 +08:00 坚决不和 Java 程序员合租。他们做事太繁琐。我这样说可以引起骂战吗,哈哈哈 |
11 kindjeff 2016-06-22 11:53:56 +08:00 via iPhone 缩进没对齐,+=前面不加空格,冒号前面加了个空格。天呐,怎么能和这样的人当室友。 |
12 ipconfiger 2016-06-22 11:56:02 +08:00 租房代码生成器 |
13 ipconfiger 2016-06-22 11:56:53 +08:00 |
14 zzzreg 2016-06-22 12:01:47 +08:00 ruby 版的还可以再精简,不用 to_s 的 ```ruby index.map { |i| arr[i] }.join ``` |
15 guizer 2016-06-22 12:41:37 +08:00 啊。我写个 shell 吧 ,不会精简.... /惊哭 arr=(8 2 1 0 3) index=(2 0 3 2 4 0 1 3 2 3 3) for i in ${index[*]};do tel+=${arr[$i]} done printf "$tel\n" |
16 Biwood 2016-06-22 12:46:05 +08:00 虽然不知道是什么语言,但是这个逻辑本身就很简单,目测就能写出号码了: 18013820100 |
18 asj 2016-06-22 12:53:31 +08:00 Haskell putStrLn $ ($ (head.show) `map` [8,2,1,0,3]) `map` (flip(!!) `map` [2,0,3,2,4,0,1,3,2,3,3]) |
19 inisun 2016-06-22 12:58:38 +08:00 看见这种写法,一般都是近几年的年轻人了,工作量大的时候,看这种 foreach 很累人 |
20 majunbo 2016-06-22 13:19:00 +08:00 var arr = [8,2,1,0,3]; var index = [2,0,3,2,4,0,1,3,2,3,3]; var tel = ""; index.forEach(function(e){ tel+=arr[e]; }) document.write("联系方式:"+tel); |
21 broadliyn 2016-06-22 13:19:19 +08:00 还不如画张图找最短路径组成的手机号。。。 比这个无脑的 foreach 要高级多了 |
22 21grams 2016-06-22 13:22:15 +08:00 这是在秀智商下限吗? |
23 RemRain 2016-06-22 13:26:34 +08:00 图片上的解法无非都是把多行写到一行,我来贴个简单的: |
24 RemRain 2016-06-22 13:26:43 +08:00 print "18013820100" |
25 ethanlu 2016-06-22 13:27:29 +08:00 via Android 学过一点 swift 居然对了 |
26 solaya 2016-06-22 13:28:55 +08:00 别去,写 java 的人不会自己做垃圾回收的 |
27 ajan 2016-06-22 13:30:40 +08:00 [2,0,3,2,4,0,1,3,2,3,3].map(i=>[8,2,1,0,3][i]).join('') |
28 surfire91 2016-06-22 13:32:25 +08:00 毫无 ps 痕迹啊 |
30 yuyang1110 2016-06-22 13:41:58 +08:00 屎一般的缩进。。。。果断不能去啊。。 |
31 ifake 2016-06-22 13:50:21 +08:00 难道就我关心……群租该举报? |
32 palmers 2016-06-22 13:52:16 +08:00 哈哈哈哈哈 |
33 doushiyinweini 2016-06-22 14:01:49 +08:00 $arr = [8,2,1,0,3]; $index = [2,0,3,2,4,0,1,3,2,3,3]; echo implode('', array_map(function($i) use ($arr){ return $arr[$i]; }, $index)); |
34 npc0der 2016-06-22 14:06:10 +08:00 我的号码只包含 1805 开头也是 1805 |
35 ChaosPark 2016-06-22 14:10:41 +08:00 这样水平的人不适合当室友。 |
36 hiboshi 2016-06-22 14:19:12 +08:00 <?php $arr = [8,2,1,0,3]; $index = [2,0,3,2,4,0,1,3,2,3,3]; foreach ($index as $k=>$v) { echo $arr[$v]; } 我是来引杖的。。。。。。。。。。。。。。。 |
37 chuhemiao 2016-06-22 14:23:26 +08:00 还是 rust 看着帅!!! |
38 tangzhehao 2016-06-22 14:23:58 +08:00 卧槽,这个还要这么复杂么?直接推理就能猜出来。 即使不懂代码,也知道 $arr 和 $index 一个是数集,一个是序列,按照手机号是 11 位,即可以推测出 $index 是序列, $arr 作为数集只有 5 个数字,序列之中有 0 没有 5 ,自然是 0 开始计数。如此对应下来: 序号 0 1 2 3 4 数集 8 2 1 0 3 20324013233 18013820100 对否? |
40 woshiyigexiaohao 2016-06-22 14:24:42 +08:00 |
41 chuhemiao 2016-06-22 14:28:04 +08:00 @tangzhehao 赞,原来这才是作者的初始目地 |
42 lingo233 2016-06-22 14:29:12 +08:00 ''.join(map(lambda i:str([8,2,1,0,3][i]), [2,0,3,2,4,0,1,3,2,3,3])) |
43 4641585 2016-06-22 14:29:48 +08:00 一般来说 print var //是 python2 console.log() //是 js system.out.println(); //是 java 这几个比较有特点。。 |
44 slfmessi 2016-06-22 14:31:24 +08:00 550 ,好便宜 |
47 tangzhehao 2016-06-22 14:32:46 +08:00 @chuhemiao 其实可以了,愿意这样去推理的,肯定也是有心想要去租房的、且有点头脑的。 |
48 ys0290 2016-06-22 14:33:55 +08:00 via iPhone 没人在意这个号码被打爆吗? |
49 yiios 2016-06-22 14:45:19 +08:00 func tel () -> String { let count = [1,2,3,5,7,0] let index = [0,3,4,3,2,5,2,5,5,1,5] var tel = "" for i in index { tel = tel + String(count[i]) } return tel } |
50 tatsuteng 2016-06-22 14:57:23 +08:00 脸酸 |
51 virusdefender 2016-06-22 15:05:16 +08:00 不能和写 Java 的做室友,因为他们很多不会自己进行垃圾回收 |
52 cashew 2016-06-22 15:10:23 +08:00 慎重选择用三个字符缩进的室友。。。。。 |
53 florije 2016-06-22 15:13:20 +08:00 妈蛋,都上当了,这是中介看不懂,然后发帖引诱小伙伴们帮忙解答…… |
55 KKKKKK 2016-06-22 15:41:44 +08:00 via Android |
57 warcraft1236 2016-06-22 15:50:52 +08:00 把 Java 改成其他语言而已 |
58 zcqshine 2016-06-22 15:51:07 +08:00 你们难道没发现这段代码实际上的输出应该是: 联系方式: 25 吗????? |
61 ccloli 2016-06-22 16:05:00 +08:00 建议下次用位运算提升难度 |
62 kkurs 2016-06-22 16:05:06 +08:00 fn main() { let arr = [8, 2, 1, 0, 3]; let index = [2, 0, 3, 2, 4, 0, 1, 3, 2, 3, 3]; println!("{}", index.iter().fold(String::new(), |phone, &i| phone+&arr[i].to_string())); } 我贴个 Rust 的好了 |
63 cocacold 2016-06-22 16:08:56 +08:00 var num = [8,2,1,0,3]; var index = [2,0,3,2,4,0,1,3,2,3,3]; var tel = ""; for(var i in index){tel += num[index[i]];} console.log(tel); |
64 fanTasy 2016-06-22 16:15:46 +08:00 ([2,0,3,2,4,0,1,3,2,3,3].map(n => { return [8,2,1,0,3][n] })).join('') |
66 homfen 2016-06-22 16:26:52 +08:00 console.log([2,0,3,2,4,0,1,3,2,3,3].reduce((a, b) => a + [8,2,1,0,3][b], '')) |
67 Ouyangan 2016-06-22 16:29:03 +08:00 为何又把我 java 黑了一圈 |
68 easing 2016-06-22 16:44:37 +08:00 秀优越的无非是用高阶函数替换 foreach 而已,也并不一定比原来 java 的简洁易懂。作为中立方,这里支持 java 一把。 |
69 KDr2 2016-06-22 17:34:31 +08:00 Rscript -e 'c(8,2,1,0,3)[c(2,0,3,2,4,0,1,3,2,3,3)+1]' |
70 aitaii 2016-06-22 17:38:37 +08:00 lBoleBzoloo |
71 momo1999 2016-06-22 17:46:30 +08:00 print("18013820100") 人工智能语言,不服不辨 |
72 ihuzhou 2016-06-22 17:46:57 +08:00 真是给南京程序员丢人 |
73 zencoding 2016-06-22 18:00:53 +08:00 我也恶搞一下 <?php foreach ([2,0,3,2,4,0,1,3,2,3,3] as $i) echo [8,2,1,0,3][$i]; |
74 Dreawer 2016-06-22 18:03:47 +08:00 ruby 版 arr = [8, 2, 1, 0 ,3] index = [2, 0, 3, 2, 4, 0, 1, 3, 2 ,3 ,3] tel = "" for i in 0..index.size tel += arr[index[i]].to_s end puts "联系方式:" + tel |
75 irockytan 2016-06-22 18:15:19 +08:00 via iPhone 贴代码的都是 Mac |
76 uztyzrxd 2016-06-22 18:48:30 +08:00 不过是展示下各种语言的特性, 谈不上秀优越吧 @guizer bash? arr=(8 2 1 0 3) tel=$(eval echo '${arr['{2,0,3,2,4,0,1,3,2,3,3}']}') echo "联系方式:" ${tel// } 这样如何? |
78 guizer 2016-06-22 19:17:57 +08:00 via iPhone @welsonla 确定吗,这语言和 java 差不多吗?前面有朋友说是 java ,公司同事也说是 JAVA … |
79 magicdawn 2016-06-22 19:35:42 +08:00 |
80 magicdawn 2016-06-22 19:36:05 +08:00 |
81 KomeijiSatori 2016-06-22 19:44:42 +08:00 <?php $arr = [8,2,1,0,3]; $index = [2,0,3,2,4,0,1,3,2,3,3]; foreach ($index as $i) echo $arr[$i]; |
82 nameldk 2016-06-22 20:04:26 +08:00 来个 PHP 版的: echo join('', array_map(function($i){return [8,2,1,0,3][$i];}, [2,0,3,2,4,0,1,3,2,3,3])); |
85 Dowding 2016-06-22 20:49:04 +08:00 <?php echo implode('', array_map(function ($i) {return [8, 2, 1, 0 ,3][$i];}, [2, 0, 3, 2, 4, 0, 1, 3, 2 ,3 ,3])); |
86 lululau 2016-06-22 21:02:16 +08:00 ``` (let ((arr '(8 2 1 0 3)) (idx '(2 0 3 2 4 0 1 3 2 3 3))) (--reduce-from (+ (* acc 10) (nth it arr)) 0 idx)) ``` |
89 zhuangzhuang1988 2016-06-22 21:58:31 +08:00 都闲得蛋疼.. |
90 eoo 2016-06-22 22:06:52 +08:00 via Android echo "18013820100"; |
91 lujiajing1126 2016-06-22 22:29:27 +08:00 via iPhone 第一眼觉得为什么不用 StringBuilder |
92 Henrybsbhp 2016-06-22 22:34:49 +08:00 这个可以自己心算然后写出来吧... |
93 bullettrain1433 2016-06-22 22:57:46 +08:00 都没缩进,好着急 |
94 SonicY 2016-06-22 23:19:42 +08:00 我去楼上诸位的看起来都好复杂 foreach (@arr[@index]) { print $_; } |
96 SonicY 2016-06-22 23:58:09 +08:00 |
97 twl007 2016-06-23 01:11:31 +08:00 噗 - - 好吧…… perl 果然是自由哎~~ |
99 araraloren 2016-06-23 09:17:14 +08:00 @webjin1 那是 Perl 如果改用 Perl6 来写就是这样 ```perl6 say ([8, 2, 1, 3, 0][2, 0, 3, 2, 4, 0, 1, 3, 2, 3, 3]).join(''); ``` |