![]() | 1 shilyx OP 在 [] 标记内加入一条语句 -> 将[]替换成一条语句 本来我发的全角符号,结果发出去成半角了。 |
![]() | 2 BlackKey 2018-09-26 12:29:45 +08:00 目前想出来的最小长度是 11 |
4 besto 2018-09-26 14:01:44 +08:00 修改一下, 最短可以到 10, 910e692fdda462dde57e91a4778de7cdbf4f2090ffdebe770b90be808ed5d024 |
![]() | 6 garzon 2018-09-26 14:08:08 +08:00 10,2c37e77354dad4539dde1674c773f95d73faba8e9011aaa0d864d49b7c9ed793 |
10 Ediacaran 2018-09-26 14:27:15 +08:00 3, ca877a9acb1c71ee2b0c6443ee1177c1db48c7bcc8af9a8cb2dc0938148dccf2 gcc 和 clang 都是可以的,VC 没测试 |
11 Ediacaran 2018-09-26 14:29:20 +08:00 没有输出算吗 |
![]() | 12 innoink 2018-09-26 14:30:16 +08:00 via Android 哈哈,3 我想知道注释算不算要求的语句 |
![]() | 13 endyul 2018-09-26 14:30:47 +08:00 6、printf 一句必须能够正常输出内容 |
![]() | 14 w01230 2018-09-26 14:37:54 +08:00 先看一下,目前想出来的长度远大于 11. |
![]() | 15 chenstack 2018-09-26 14:39:12 +08:00 ![]() 答案同#6,一开始总想着用指向自己的指针实现,结果并不行,后面才意识到能用函数,再后面才发现只用声明就能用。 |
![]() | 16 pkokp8 2018-09-26 14:41:31 +08:00 via Android }int f(){//\ 我只能想到这种 |
![]() | 17 chenstack 2018-09-26 14:43:16 +08:00 修改过程同#3,去掉初值只保留声明,从 15 缩减到 10 |
![]() | 22 Phox 2018-09-26 14:53:54 +08:00 不应该是 9 哇? 645e319a3085376dbee5a71b8359010b1d9a035283156aa1b1323552bb0fac04 |
![]() | 24 Phox 2018-09-26 14:57:11 +08:00 @Phox 另外,中规中举无告警的 15,3adb4717467d81e0f3e91e6890171320c5a7c75468176c6fac58e7d6e8e1a88b |
25 GeruzoniAnsasu 2018-09-26 15:07:39 +08:00 这里有个不同于#4 #6 的: 无\n a1588fb5c7d40509cd82615825c32c65231d0713c81b054871bce4e8cd58c035 有\n c69b85657ed71cf4d671ef6f4b4861adef7c9019cfd547e020ac118388744412 长度 14 |
![]() | 26 innoink 2018-09-26 15:08:29 +08:00 910e692fdda462dde57e91a4778de7cdbf4f2090ffdebe770b90be808ed5d024 10 开-Wall 会有警告 bf9b20a32821ab49a932547b80e122e5bf66368bea36a5cd07a76d58e81f972a 10 gcc 通过,g++通不过 还有 14 的写法,很多变化,可以完全无警告 |
![]() | 30 cjw1115 2018-09-26 15:21:27 +08:00 10,2c37e77354dad4539dde1674c773f95d73faba8e9011aaa0d864d49b7c9ed793 |
![]() | 31 XiaoxiaoPu 2018-09-26 15:24:15 +08:00 @Phox 哈哈,绞尽脑汁终于想到这个了。不过你的 hash 是带了换行的吧?不带换行的是 4ccce30e94240276e8312a60e59f662783a24df6f5695e65d626196d2220c764 @GeruzoniAnsasu 跟我第一次的思路一样,证明我确实想出来了,无换行的 sha1sum 是 52f9449d2dd0ef1deb042f99a8ab1ad852c667cb 另外 gcc 下 10 个字符无警告 8a62c72686689179794818bb4efe89be7e1139e6c729a71842eb6cc4bdeb42bb |
32 besto 2018-09-26 15:28:02 +08:00 |
34 besto 2018-09-26 15:40:33 +08:00 @XiaoxiaoPu 有分号且程序有输出的确实可以到 9 4ccce30e94240276e8312a60e59f662783a24df6f5695e65d626196d2220c764 |
![]() | 35 ysc3839 2018-09-26 16:18:28 +08:00 9, 05f1e6c363cd142e9b72dfa47079a743ebc336670ce1bf05a06e6f4568800e38 测试结果 > cl t.c && t.exe Microsoft (R) C/C++ Optimizing Compiler Version 19.15.26730 for x64 Copyright (C) Microsoft Corporation. All rights reserved. t.c Microsoft (R) Incremental Linker Version 14.15.26730.0 Copyright (C) Microsoft Corporation. All rights reserved. /out:t.exe t.obj 00007FF78B881020 |
![]() | 36 whoami9894 2018-09-26 16:32:42 +08:00 10,ptr => func 好像楼上有好几个一样的了 2c37e77354dad4539dde1674c773f95d73faba8e9011aaa0d864d49b7c9ed793 |
![]() | 37 Phox 2018-09-26 16:33:19 +08:00 |
![]() | 38 marvinGet 2018-09-26 16:50:09 +08:00 来个明白人结贴 说一下答案 |
![]() | 39 yujincheng08 2018-09-26 17:01:51 +08:00 10, 2c37e77354dad4539dde1674c773f95d73faba8e9011aaa0d864d49b7c9ed793 |
![]() | 40 hmzt 2018-09-26 17:03:58 +08:00 涨知识了,不过编译器为什么会支持这种写法,语法上完全不通 |
![]() | 41 pkokp8 2018-09-26 17:12:56 +08:00 via Android @pkokp8 又想了下,想出两种方法,不带换行 9 字符 编译器 gcc 5.4.0 第一个加-Wall 有警告,第二个默认编译参数有警告 53808d5ada17e1d087fecee8c2c18ed0d013dfd482583d04a064d418d3d84f33 4ccce30e94240276e8312a60e59f662783a24df6f5695e65d626196d2220c764 |
![]() | 42 garzon 2018-09-26 18:30:11 +08:00 @pkokp8 53808d5ada17e1d087fecee8c2c18ed0d013dfd482583d04a064d418d3d84f33 这个我也得到了,然而一开始在 g++( http://cpp.sh )上编译不通过就没管,刚才试了下 gcc 竟然通过了 |
43 bp0 2018-09-26 18:37:37 +08:00 只能想出来无输出的,坐等答案。 |
![]() | 44 kkeiko 2018-09-26 18:50:26 +08:00 via iPhone 11 个 642afa25aff165250678f5fa3dd07b97a335957583763e83d182ca6d8bdc8aff |
46 where2go 2018-09-26 20:12:45 +08:00 echo -n xxxx|sha256sum - 10 无空格 2c37e77354dad4539dde1674c773f95d73faba8e9011aaa0d864d49b7c9ed793 |
47 where2go 2018-09-26 20:15:10 +08:00 echo xxxx |sha256sum - echo 不加 -n 是这个 910e692fdda462dde57e91a4778de7cdbf4f2090ffdebe770b90be808ed5d024 - |
48 where2go 2018-09-26 20:19:07 +08:00 还有个同 #25 的 14 字节的方案, 但是我为什么要这么闲呢 |
49 where2go 2018-09-26 20:27:06 +08:00 "在 [] 标记内加入一条语句" 的意思应该是 加完语句还要保留中括号吧 |
50 wevsty 2018-09-26 20:31:13 +08:00 看了各位的回复以后我才想到的答案是 11。 另外我表示谁要是给我写出这么长的*我肯定打回去重写。 SHA256: 9540245df67cac5bdd321924dae6521872883f4c593dd96ecdb2e734b2d4347b |
![]() | 51 wheeler 2018-09-26 20:55:48 +08:00 9 和#34 楼一样。 |
52 zouchtssn 2018-09-27 06:10:16 +08:00 mark |
53 where2go 2018-09-27 09:17:31 +08:00 gcc 8.2, 这个特性应该较早就支持了 9 53808d5ada17e1d087fecee8c2c18ed0d013dfd482583d04a064d418d3d84f33 |
![]() | 54 24bit 2018-09-27 11:06:36 +08:00 10 2c37e77354dad4539dde1674c773f95d73faba8e9011aaa0d864d49b7c9ed793 为什么可以这样呢? |
![]() | 55 dinjufen 2018-09-27 12:18:41 +08:00 过了这么久了,可以公布下答案吗 |
![]() | 56 ysc3839 2018-09-27 13:03:27 +08:00 @ysc3839 前面搞错了,正确的 sha256 是 4ccce30e94240276e8312a60e59f662783a24df6f5695e65d626196d2220c764。 |
57 co3site 2018-09-27 14:06:42 +08:00 带空格 11 位 9540245df67cac5bdd321924dae6521872883f4c593dd96ecdb2e734b2d4347b 实在想不到更短的了,楼主能广布答案了吗? |
![]() | 58 shilyx OP |
59 yemoluo 2018-09-27 14:40:24 +08:00 楼主哪里找来的题目? |
![]() | 60 shilyx OP @GTim 我老早就意识到了这个特性,不过昨天拿出来而已。 前两天看到有个朋友发帖提问 c 语言知识点,但是他的问题都是 malloc、free,涉及到未定义行为,不是不会答,而是不好答。所以就拿这个点出来问一问。 |
62 z0z 2018-09-27 16:58:27 +08:00 昨天我差点被这道题整死 |
![]() | 63 whoami9894 2018-09-27 18:18:26 +08:00 via Android 9 字符的那个…… gcc 支持闭包吗 |
![]() | 64 shilyx OP |
![]() | 65 shilyx OP |
![]() | 66 wheeler 2018-09-27 20:55:04 +08:00 @shilyx 9 #include <stdio.h> int main() { p();}p(){ printf("%p\n", **************************************************************p); return 0; } |
67 noinil 2018-09-27 22:00:50 +08:00 弱弱地问一下, 你们写的一长串字符是怎么用的啊? |