Questions tagged «networking»

对于需要答案才能执行网络请求的挑战等

30
一个简单的TCP服务器
编写一个程序或函数,以侦听端口N上的传入TCP通信。它提供了一种简单的服务:它计算传入连接的IP地址字段的总和并返回。 程序或函数从参数或标准输入读取整数N。它侦听端口N上的传入TCP连接。当有人连接到该端口时,该程序将计算其IP地址字段的总和,并使用尾随的换行符将其发送回客户端并关闭连接。 端口号N是有效端口,并且2 10 <N <2 15 尾随换行符可以是\n或\r\n 您可以使用IPv4或IPv6。由于IPv6地址是以十六进制形式写入的,因此您还必须提供相同格式的结果,例如2001:0db8:0000:0042:0000:8a2e:0370:7334 => 12ecd。 这是代码高尔夫球。适用标准规则和漏洞。 例 您使用运行服务器./server 1234。服务器现在正在运行,正在等待端口1234上的连接。然后,客户端从此127.0.0.1连接到您的服务器。你的服务器执行一个简单的计算:127+0+0+1 => 128并且将结果发送给客户端(与尾随的换行符): 128\n。然后服务器关闭连接并等待下一个客户端。 排行榜 var QUESTION_ID=76379,OVERRIDE_USER=20569;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i; body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px} <script …

30
构造身份矩阵
挑战非常简单。给定整数输入n,输出n x n单位矩阵。单位矩阵是1从左上角到右下角的s 矩阵。您将编写一个程序或函数来返回或输出您构造的身份矩阵。您的输出可能是2D数组,或者是由空格/制表符和换行符分隔的数字。 输入和输出示例 1: [[1]] 2: [[1, 0], [0, 1]] 3: [[1, 0, 0], [0, 1, 0], [0, 0, 1]] 4: [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]] 5: [[1, 0, 0, 0, 0], [0, 1, 0, 0, 0], …

7
修正我的IPv4地址的缺失期
有时,当我输入一个IPv4地址时,我会正确地输入所有数字,但忘记输入一个或多个句点。我想要一个程序(或函数),该程序可以使用损坏的IPv4地址并输出缺失期的所有可能有效位置。 输入值 输入将始终是一个字符串,该字符串是有效IPv4地址的转换(请参见下面的详细信息)。它总是将仅通过消除一个或多个时期字符来进行转换。 您的提交不需要处理此格式以外的输入。 输出量 代表所有有效IPv4地址的字符串的集合或列表(没有特定的顺序或格式),可以通过在输入中插入句点字符来从输入中创建所有有效的IPv4地址。 输出可以是语言本机列表或其他有序或无序集合类型。 替代地,它可以是以某种明确方式界定的IPv4地址的字符串序列。 如果您使用单字符定界符来分隔字符串,则不允许使用句点和数字作为该单字符定界符。我认识到,与数字不同,句点作为分隔符不是模棱两可的(因为每个第四个句点都必须是分隔符),但是出于可读性考虑,我不允许这样做。 IPv4地址格式 尽管IPv4地址实际上只是四个二进制八位字节的序列,但此挑战使用了受限的点分十进制格式。 IPv4地址是由三个句点分隔的四个十进制值。 每四个值的范围是0到255,包容性。 任何数字值都不允许前导零。(独立单字符0被允许;开始与零的任何其它数量不是:052,00等) 测试用例 输入在第一行上,输出在第二行上(此处,结构是用逗号分隔的带引号的字符串列表,用逗号分隔,并用包围[ ],但是您可以使用上面指定的任何合理的格式或结构)。一些示例在第三行上有注释,以突出显示特定规则的应用。 192.168.1234 ["192.168.1.234", "192.168.12.34", "192.168.123.4"] 192.1681234 ["192.16.81.234", "192.168.1.234", "192.168.12.34", "192.168.123.4"] (Note: 192.1681.2.34 (etc.) is illegal because 1681 is greater than 255) 1921681.234 ["19.216.81.234", "192.16.81.234", "192.168.1.234"] 1921681234 ["19.216.81.234", "192.16.81.234", "192.168.1.234", "192.168.12.34", "192.168.123.4"] 192.168.1204 ["192.168.1.204", "192.168.120.4"] …

5
2014年世界IPv6日
为纪念世界IPv6日的周年纪念日,互联网协会在2014年6月6日发布了一项“关闭IPv4的活动”,为期一天。 IPv6地址可以长格式表示为八个冒号分隔的16位十六进制值。根据地址的不同,它们也可以按照RFC 3513的2.2节的文本文本表示中的第 2项进行缩短: 为了使写入包含零位的地址更容易,可以使用特殊语法来压缩零。“ ::”的使用表示一组或多组16位零。“ ::”在一个地址中只能出现一次。“ ::”还可以用于压缩地址中的前零或后零。 填入这个挑战将是接受无论是在或长或短格式格式化只有一个IPv6地址的程序,并显示在同一个地址都在长,短格式,按照这个顺序。 输入可能来自命令行参数STDIN或任何其他适合您选择语言的输入源。 禁止专门用于解析IPv6地址的库或实用程序(例如inet_ {ntop,pton}())。 如果输入地址无效,则输出将为空(或给出一些指示该地址无效的适当错误消息) 在::发生缩短的情况下,给定地址只能进行一次缩短操作。如果给定地址有多个潜在的缩短操作,则必须使用给出最短总地址的操作。如果在这方面有平局,将使用第一个操作。在下面的示例中对此进行了说明。 避免标准漏洞 例子: Input Output 1080:0:0:0:8:800:200C:417A 1080:0:0:0:8:800:200C:417A 1080::8:800:200C:417A FF01::101 FF01:0:0:0:0:0:0:101 FF01::101 0:0:0:0:0:0:0:1 0:0:0:0:0:0:0:1 ::1 :: 0:0:0:0:0:0:0:0 :: 1:0:0:2:0:0:0:3 1:0:0:2:0:0:0:3 1:0:0:2::3 1:0:0:8:8:0:0:3 1:0:0:8:8:0:0:3 1::8:8:0:0:3 1:2:3:4:5:6:7:8 1:2:3:4:5:6:7:8 1:2:3:4:5:6:7:8 ABCD:1234 <Invalid address format - no output> ABCDE::1234 <Invalid address format …

7
解释> <>(鱼)
虽然&gt; &lt;&gt;不是流行的语言,但它可能对打高尔夫球很有用,并且已在本网站上使用。它受到Befunge的启发,在指令上有一些相似之处。 所需命令: &gt; &lt; ^ v 更改指令指针的方向(右,左,上,下) / \ | _ # 。指针将根据其已有的方向改变方向。 x 随机方向。 + - * , % 加法,减法,乘法,除法和模。将A和B弹出堆栈,然后将B运算符A推入。除以0会引发错误。 0-9 a-f 将相应的值压入堆栈。a = 10,...,f = 15 = 从堆栈中弹出A和B,如果B = A,则按1,否则按0。 ) 比...更棒。将A和B弹出堆栈,如果B &lt;A ( 小于,则按1 。将A和B弹出堆栈,如果B&gt; A ' " 启用字符串解析,则按1 。字符串解析将找到的每个字符推入堆栈,直到找到结束引号为止。 ! 跳过以下说明。 ? 如果堆栈顶部为零或堆栈为空,则跳过以下指令。(注意:这不会从堆栈中弹出任何东西!) : 复制堆栈中的最高值。 …

20
我在你的子网中,打高尔夫的代码
挑战 给定点address分四进制表示形式的IPv4 subnet和CIDR表示形式的IPv4 ,请确定中是否address存在subnet。如果位于中subnet,则输出一个唯一且一致的值;如果不在中,则输出一个单独的唯一且一致的值subnet。输出值不一定需要使用您的语言为真/假。 CIDR子网符号简要入门 IPv4网络地址的长度为32位,分为四组,每组8位,以便于阅读。CIDR子网表示法是从最左边开始的指定位数的掩码。例如,对于/24子网,这意味着该子网中地址的最右边8位可用。因此,两个地址之间最多相隔一个255,并且具有相同的子网掩码,它们位于同一子网中。请注意,有效CIDR的所有主机位(右侧)均未设置(零)。 xxxxxxxx xxxxxxxx xxxxxxxx 00000000 ^--- subnet mask ---^ ^-hosts-^ 再举一个例子,/32子网指定所有位都是子网掩码,从本质上讲意味着每个子网仅允许一个主机/32。 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx ^--- subnet mask ---^ 例子: 使用True“子网”和False“未子网”的输出: 127.0.0.1 127.0.0.0/24 True 127.0.0.55 127.0.0.0/23 True 127.0.1.55 127.0.0.0/23 True 10.4.1.33 10.4.0.0/16 True 255.255.255.255 0.0.0.0/0 True 127.1.2.3 127.0.0.0/24 False 127.1.2.3 127.1.2.1/32 False 10.10.83.255 10.10.84.0/22 False …

2
高尔夫端到端加密
第一次挑战时,悬赏200分,并且至少连续3天保持不败。被user3080953主张。 最近有很多关于端到端加密的讨论,并且要求公司从其产品中删除它。我对它的是非不感兴趣,但是我想知道:代码能持续多久会给一家公司施加压力,使其不使用它? 这里的挑战是在两个网络系统之间实现Diffie Hellman密钥交换,然后允许用户使用生成的对称密钥来回通信。出于此任务的目的,不需要其他保护(例如,不需要循环密钥,验证身份,防止DoS等),并且您可以假定开放的Internet(您监听的任何端口都对所有人可用)。允许并鼓励使用内建函数! 您可以选择以下两种模式之一: 服务器和客户端:客户端连接到服务器,然后服务器或客户端可以向其他服务器发送消息。两者之间的第三方必须无法读取消息。一个示例流程可能是: 用户A启动服务器 用户B启动客户端并将其定向到用户A的服​​务器(例如,通过IP /端口),程序将打开连接 用户A的程序确认连接(可以选择先征求用户的同意) 用户B的程序开始生成DH机密,并将所需的数据(公钥,素数,生成器,以及您的实现所需的其他任何内容)发送给用户A 用户A的程序使用发送的数据完成共享密钥的生成,并将所需的数据(公钥)发送回用户B。从这一点来看,用户A可以输入消息(例如,通过stdin),该消息将被加密并发送给用户B(例如到标准输出)。 用户B的程序完成了共享机密的生成。从这一点来看,用户B可以向用户A发送消息。 或:一台连接有两个客户端的服务器:每个客户端与服务器对话,服务器将其消息转发给另一个客户端。服务器本身(及其之间的任何第三方)必须无法读取消息。除了初始连接之外,该过程与第一个选项中描述的过程相同。 详细规则: 您可以提供一个程序,也可以提供多个程序(例如,服务器和客户端)。您的分数是所有程序的总代码大小。 从理论上讲,您的程序必须能够通过网络进行通信(但对于测试,可以使用localhost)。如果您选择的语言不支持联网,则可以将其与兼容的语言结合使用(例如,shell脚本)。在这种情况下,您的分数就是所有使用的所有语言的总代码大小。 Diffie Hellman密钥生成可以使用硬编码的“ p”和“ g”值。 生成的共享密钥必须至少为1024位。 共享密钥后,对称密钥加密的选择就由您决定,但是您一定不能选择目前已知对其有实际攻击能力的方法(例如,在不知道密钥的情况下,进行凯撒转移很容易进行反向操作) )。允许的算法示例: AES(任何密钥大小) RC4(从理论上讲是无效的,但是我没有提到任何实际的攻击,因此这里允许) 用户A和B必须都能够交互地互相发送消息(双向通信)(例如,从stdin中读取行,不断提示或按下按钮之类的事件)。如果这样更容易,您可以假设是交替对话(即,用户发送消息后,他们必须等待响应才能发送下一条消息) 语言内置是允许的(没有必要写你自己的密码或网络的方法,如果他们已经支持)。 底层的通信格式取决于您。 上面给出的通信步骤是一个示例,但是您不必遵循这些步骤(只要共享了必要的信息,并且没有中间人能够计算出共享密钥或消息) 如果事先不知道连接到服务器所需的详细信息(例如,如果它在随机端口上侦听),则必须打印这些详细信息。您可以假定机器的IP地址是已知的。 不需要进行错误处理(例如,无效的地址,丢失的连接等)。 挑战是代码高尔夫,因此以字节为单位的最短代码将获胜。

20
分解一个数字!
您的任务是使用以下格式分解数字。 这与基本转换类似,不同之处在于digits,您列出了values,而不是在基本列表中列出,这样列表就加到了输入上。 如果给定的基为n,则列表中的每个数字都必须采用的形式k*(n**m),其中0&lt;=k&lt;n和m在整个列表中都是唯一的。 眼镜 任何合理的输入/输出格式。您的程序/功能需要2个输入并输出一个列表。 输出列表可以是任何顺序。 0 可以排除或包含。 0允许领导。 允许内置。 测试用例 number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] 计分 这是代码高尔夫球。以字节为单位的最短解决方案获胜。
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 

4
使用ASCII艺术图可视化长除法
编写一个程序,以可视化方式用ASCII艺术进行长除法。使用您选择的输入格式,输入由两个整数组成:分子和分母。 例子: 1234÷56: 22 ---- 56|1234 112 --- 114 112 --- 2 1002012÷12: 83501 ------- 12|1002012 96 --- 42 36 -- 60 60 -- 12 12 -- 0÷35 0 - 35|0 规则: 编程语言的除法运算符的用途是允许的。 也允许使用大整数支持。 为了保持一致: 如果商为零,则在跳水板的末端打印一个零。 如果余数为零,请不要打印。 不要在任何数字上打印前导零。 末尾多余的换行符和右边的尾随空格是允许的。 字符最少的解决方案获胜。 限制: 0 &lt;=分子&lt;= 10 72 - 1 1 &lt;=分母&lt;= 9999999 …

7
屏蔽IP地址并广播
背景 受这个Unix.SE问题(当然还有我自己的回答)的启发。 当为接口指定IP地址时,通常以点分十进制形式给出: a.b.c.d e.f.g.h 其中a.b.c.d,实际地址e.f.g.h是子网掩码。 当用二进制表示时,网络掩码基本上是一堆1比特,然后是一堆0比特。当将网络掩码与给定的IP地址按位与时,结果将是地址的网络部分,或者只是网络地址。这将被编程到主机的路由表中,以便主机知道从该接口发送发往该网络的任何内容。 通过从上面获取网络地址并将所有主机位设置为1,可以得出网络的广播地址。广播地址用于发送到给定网络内的所有地址。 挑战 给定点分十进制的IP地址和有效的网络掩码作为输入,请以点分十进制格式提供网络地址和广播地址作为输出。 输入的地址和掩码必须为点分十进制格式的两个字符串。您可以将其作为2个单独的字符串,作为2个字符串元素的列表或数组,或者将地址和掩码由一些合理的分隔符分隔的单个字符串传递。 输出格式受与输入格式相同的约束。 例子 Input Output 192.168.0.1 255.255.255.0 192.168.0.0 192.168.0.255 192.168.0.0 255.255.255.0 192.168.0.0 192.168.0.255 192.168.0.255 255.255.255.0 192.168.0.0 192.168.0.255 100.200.100.200 255.255.255.255 100.200.100.200 100.200.100.200 1.2.3.4 0.0.0.0 0.0.0.0 255.255.255.255 10.25.30.40 255.252.0.0 10.24.0.0 10.27.255.255

7
详细IP范围生成器
给定两个IP地址a和b,该任务很简单,输出该范围内的所有地址。 例子 范例1: f(a = 192.168.0.1, b = 192.168.0.4) 192.168.0.1 192.168.0.2 192.168.0.3 192.168.0.4 Example#2(TIO将截断它,在测试时使用较小的范围): f (a = 123.0.200.0, b = 124.0.0.0) 123.0.200.0 123.0.200.1 ... # Omitted pattern 123.0.200.255 123.0.201.0 ... # Omitted pattern 123.0.201.255 ... # Omitted pattern 123.0.255.255 123.1.0.0 ... # Omitted pattern 123.255.255.255 124.0.0.0 输入输出 a &lt; b …

2
输出所有有效的有类公共单播IPv4地址
IPv4地址为32位宽,因此地址空间的大小为2 32或4,294,967,296。但是,这只是理论上的上限。它不能准确表示公共互联网上可能实际使用的所有地址。 出于此挑战的目的,假定所有寻址都是分类的。实际上,地址空间的有类别细分已被CIDR(无类别域间路由和VLSM(可变长度子网掩码))取代,但此挑战被忽略。 根据分类地址方案,分为3类: A类- 0.0.0.0以127.255.255.255与/8网络掩码长度 B类- 128.0.0.0以191.255.255.255与/16网络掩码长度 C类- 192.0.0.0到223.255.255.255与/24网络掩码长度 还定义了类D(多播)和E(保留),但是它们不用于公共单播地址。 根据该类别的网络掩码将每个类别细分为网络。 因此3.0.0.0就是一个A类网络的例子。对于A类网络掩码长度为8,所以对于这个网络的完整地址空间是3.0.0.0给3.255.255.255。但是,第一个地址(3.0.0.0)保留为网络地址,最后一个地址(3.255.255.255)保留为该网络的广播地址。因此可用地址的实际范围是3.0.0.1至3.255.255.254为2 24 - 2(= 16777214)总地址。 同样,200.20.30.0是C类网络的示例。对于C类网络掩码长度是24,所以该网络的完整地址空间是200.20.30.0给200.20.30.255。卸下网络和广播地址叶可用地址的实际范围是200.20.30.1至200.20.30.254为2 8 - 2(= 254)的总的地址。 可用于公共单播的地址范围还有其他限制。根据RFC 6890,不允许的范围是: 0.0.0.0/8 -本地网络 10.0.0.0/8 -私人使用 100.64.0.0/10 -共享地址空间 127.0.0.0/8 -环回 169.254.0.0/16 -本地链接 172.16.0.0/12-私人使用 192.0.0.0/24 -IETF协议分配 192.0.2.0/24 -保留供文档使用 192.88.99.0/24 -6to4中继任意播 192.168.0.0/16 -私人使用 198.18.0.0/15 -标杆管理 198.51.100.0/24 -保留供文档使用 203.0.113.0/24 -保留供文档使用 请注意,上面的列表使用VLSR网络掩码来有效地指定范围。在除一种情况外的所有情况下,给定的掩模长度在范围开始时的特异性均小于或等于正常分类掩模的长度。因此,这些VLSR范围中的每一个都等效于一个或多个分类网络。例如172.16.0.0/12等同于B类网络172.16.0.0到172.31.0.0或地址范围172.16.0.0来172.31.255.255。 …

7
高尔夫代码:弗雷序列(I)
挑战 在此任务中,您将得到一个整数N(小于10 ^ 5),输出N阶的Farey序列。 输入N在单行中给出,输入由EOF终止。 输入项 4 3 1 2 输出量 F4 = {0/1, 1/4, 1/3, 1/2, 2/3, 3/4, 1/1} F3 = {0/1, 1/3, 1/2, 2/3, 1/1} F1 = {0/1, 1/1} F2 = {0/1, 1/2, 1/1} 约束条件 输入数量不会超过10 ^ 6个值 您可以使用任何选择的语言 最短的解决方案获胜!
10 code-golf  math  code-golf  math  code-golf  number  number-theory  code-golf  math  arithmetic  repeated-transformation  code-golf  geometry  popularity-contest  code-golf  code-golf  tips  haskell  math  fastest-algorithm  code-golf  combinatorics  code-golf  math  polynomials  rational-numbers  code-golf  code-golf  popularity-contest  javascript  code-golf  kolmogorov-complexity  code-golf  code-golf  math  combinatorics  permutations  code-challenge  restricted-source  random  array-manipulation  code-challenge  generation  code-golf  code-golf  ascii-art  arithmetic  division  code-challenge  number  code-golf  math  number  binary  code-golf  ascii-art  code-golf  interpreter  stack  code-golf  internet  networking  code-golf  math  code-golf  ascii-art  code-golf  math  sequence  code-golf  hello-world  restricted-source  code-golf  ascii-art  code-golf  geometry  code-golf  kolmogorov-complexity  pi  code-golf  math  combinatorics  permutations  code-golf  math  code-challenge  ascii-art  code-golf  string  code-golf  quine  code-golf  math  floating-point  golfscript  code-golf  string  code-golf  sliding-puzzle  code-challenge  arithmetic  code-golf  math  code-golf  geometry  optimized-output 

1
建立一个简单的代理
制作最短的代理服务器。 输入/输出规格 客户: 输入:端口号(32位整数)(,)或(空格) URL(请参见测试用例) 输出:URL的html源 服务器: 输入:要侦听的端口(32位整数) 输出:从客户端接收到输入时为REC,在将html源发送给客户端后为OK。 规则 您可以使用解释语言制作完整的程序或功能。 输入通过stdin或作为参数给出。 您的代码仅适用于给定的测试用例(更多是可选的,更少是无效的)。 客户端输出必须与从浏览器“查看源代码”获得的输出相同。 服务器可以在每个已处理的请求之后退出(即不必是持久的/守护程序) (编辑)禁止指定以外的任何其他输入/输出。 测试用例(客户输入) N 1 https://stackoverflow.com/ N 2 http://en.wikipedia.org/wiki/Proxy_server N 3 http://stackexchange.com/search?q=code+golf 其中N i是1到2048之间的随机整数。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.