生成100个Java Tuple类


37

编写一个脚本,将其写到标准输出或您的语言的等效输出中,以以下内容开头的100行Java代码:

class Tuple1 {public Object _0;}
class Tuple2 {public Object _0,_1;}
class Tuple3 {public Object _0,_1,_2;}
class Tuple4 {public Object _0,_1,_2,_3;}
class Tuple5 {public Object _0,_1,_2,_3,_4;}
class Tuple6 {public Object _0,_1,_2,_3,_4,_5;}
class Tuple7 {public Object _0,_1,_2,_3,_4,_5,_6;}
class Tuple8 {public Object _0,_1,_2,_3,_4,_5,_6,_7;}
class Tuple9 {public Object _0,_1,_2,_3,_4,_5,_6,_7,_8;}
class Tuple10 {public Object _0,_1,_2,_3,_4,_5,_6,_7,_8,_9;}
class Tuple11 {public Object _0,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10;}
class Tuple12 {public Object _0,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11;}

最后一行应以开头class Tuple100

这是,因此以字节为单位的最短代码胜出!


6
我接受挑战!实际上,我将用Java来做!
Ashwin Gupta'2

我可以编写函数还是必须是完整程序?
Ashwin Gupta

3
我是该网站的新手,所以要求提供脚本,但是我一直在听到允许使用函数的习惯,对于Java而言,这很有意义,public static void main(String[] args)如果您愿意的话,绝对不要提供函数。
Ray Toal

1
大!谢谢雷!
Ashwin Gupta

它的大小还不够小,但是我认为这是共享我n用Java写的-tuple生成器的理想场所:github.com/kenzierocks/Tuplocity。它生成完全通用的元组!
Octavia Togami,

Answers:


8

Jolf,42个字节

我有史以来最好的分数击败果冻吗?包含无法打印的内容,因此您可能想在此处在线尝试。为了便于阅读,我将不可打印的内容替换为其各自的alt索引。

‼Μz~1d"Ξ/êί Tuple% {Ξ0î⌂ Ξ2Qμ_ %;}"HRzH",_

说明

‼Μz~1d"Ξ/êί Tuple% {Ξ0î⌂ Ξ2Qμ _%;}"HRzH",_
 Μz~1d                                     map the range 1..100 with the following function
      "                                    begin a string
       Ξ/êί                                short for "class"
            Tuple% {               H       string interpolate H (current number)
                    Ξ0î⌂ Ξ2Qμ              short for "public Object"
                              _%;}" RzH    string interpolate with a range from 1..H joined
                                       ",_  by the string ",_" (auto-closed quotes)

1
我想。如果以后有新分数出现,在此站点上更改接受的答案是否合适?
Ray Toal

6
@RayToal是的,这是正确的,甚至建议这样做。
Conor O'Brien

这是什么字符编码?我知道高尔夫语言经常使用它们自己的编码,但是我看不出jolf可能使用的编码。我意识到这很旧。
递归

@recursive希腊ISO-8859-7,这一本:en.wikipedia.org/wiki/ISO/IEC_8859-7
Conor O'Brien

23

vim 56 54击键

iclass Tuple1 {public Object _0;}<esc>qyYp<C-a>$y2bPr,<C-a>q98@y

由于V向后兼容,因此您可以在线尝试!

这是vim的完美任务!我可能以后再打高尔夫球。另请注意,这<c-a>表示Control-A,它算作一次按键。

说明:

iclass Tuple1 {public Object _0;}<esc>         'Enter the starting text


qy                          'Start recording in register y
  Yp                        'Yank the current line, the print on the line below
     <C-a>                  'Increment the next digit to occur by one
          $                 'Move to the end of this line
           y2b              '(yank) 2 words (b)ack. This will grab '_0;'
              P             'Print the previously yanked word before the cursor.
               r,           '(r)eplace the char under the cursor with a comma.
                 <c-a>q     'Increment the current digit, then stop recording
                       99@y 'Playback macro 'y' 99 times.

1
如果算上控制-A作为一个按键,你可以代替yyY
seequ 2016年

1
@Seeq Haha,我刚刚意识到同样的事情,并在看到您的评论之前立即对其进行了编辑。英雄所见略同!
DJMcMayhem

这似乎是要去的class Tuple101,而不是class Tuple100问题所要求的。
numbermaniac

1
@numbermaniac简单的一对一错误。感谢您指出了这一点!现在修复:)
DJMcMayhem

10

果冻,44个字节

R’j“,_”
“¤>%,oỊȤʠ“ØụĊ5D³ṃṠɼQ»j;Ç;“;}¶”
ȷ2RÇ€

我的第一个果冻答案。在线尝试!


我做错了吗,还是只是输出一个巨型列表而不是字符串?
Denker

@DenkerAffe好像现在正在工作!果冻中有一个临时错误。(此外,该链接是我的解决方案的旧版本,因此我已对其进行更新。)
Lynn

很好...到目前为止,它比CJam解决方案短9个字节!
雷·托尔

8

Pyth,53 50 48字节

VS100%." }SüÆðQ´Ó3Ô«%&a´4UçõÛ"[Nj",_"UN

在线尝试!

在range(1,100)上直接进行迭代,并通过格式化将字符串打包成相应的字符串。

说明

VS100%。“} SüÆðQ´Ó3Ô«%&a´4UçõÛ” [Nj“,_” UN

VS100#迭代范围(1,100)
     %。“”} SüÆðQ´Ó3Ô«%&a´4UçõÛ“#解压缩字符串并将其格式化
                              [#用于格式化参数的列表
                               N#元组数
                                j UN#连接对象编号...
                                 “,_”#...在分隔符上,“ _”

解压后的字符串是 class Tuple%i {public Object _%s;}


两次高尔夫:s[代替所有这些+[创建一个任意长度列表,并将其s连接起来。此外,因为你想[1, 2, ... 100],不[0, 1, .. 99],使用VS100,并且您将不再需要任何h
isaacg '16

@isaacg谢谢,不知道S-trick!:)已经开始摆脱所有问题++++,我知道有更好的方法。
Denker

别客气。顺便说一句,您似乎"不必要地添加了结尾。
isaacg '16

1
@isaacg是否有任何理由j<str><int>U
lirtosiast '16

1
不,不是。会做。
isaacg '16

7

CoffeeScript,86 84字节

console.log "class Tuple#{i} {public Object _#{[0...i].join ',_'};}"for i in[1..100]

在线查看解决方案


欢迎来到PPCG!只是为了让您知道,改善答案的编辑通常会被皱眉(如果最终出现在审阅队列中,则应予以拒绝)。因此,人们更有可能发表评论并提出建议,因此您可以自己进行审查。:)(至于实际提示,我认为您既不需要前面的空间,for也不需要后面的空间in。)
Martin Ender

console.log"工作吗?(不知道咖啡的脚本,这是一个普通的把戏。
艾迪生克伦普

不,就像在删除空间一样。:PI知道它的存在,我只是不知道那是有效的语法。
Addison Crump

@VoteToClose我较早尝试过(使用coffeescript.org上的实时编译器,它不起作用)。
Martin Ender

@VoteToClose哦,对不起,没有看到。不。某种程度上,语法是需要空间的,但是我仍然不清楚为什么(还)。例如,CoffeeScript中的间距非常重要,x? y:z与完全不同x ? y:z。你可以说,console.log?"hello"但不能console.log"hello"。大量空白。有时很好,有时很奇怪。
Ray Toal

7

Java中,160,125个字节

感谢@ DenkerAffe,@ Denham Coote和@Mathias Ettinger所做的改进。

Java编写Java(因为有人必须这样做!)

void z(){String s="_0";for(int i=1;i<101;){System.out.println("class Tuple"+(i++)+" {public Object "+s+";}");s+=",_"+i;}}

和非高尔夫版本

void z(){
    String s = "_0";
    for(int i = 1 ;i < 101;){
        System.out.println("class Tuple" + (i++) + " {public Object "+ s + ";}");
        s += ",_" + i;
        }
    }

2
欢迎来到编程难题和代码高尔夫球!除非在挑战中另有说明,否则您可以全部使用函数代替完整程序。因此,您应该在此处使用Java8-lambda(返回结果)来保存所有public static void main...内容。
Denker

4
欢迎来到PPCG。此答案在对象声明的末尾包括一个额外的逗号...class Tuple1 {public Object _0,;} class Tuple2 {public Object _0,_1,;}
Denham Coote

3
您可以通过在sysout(++ i)而不是(i + 1)中增加循环计数器并i++从for循环设置中删除来进一步节省3个字节
Denham Coote

你应该开始你的String s = "_0",所以你可以s += ",_" + i和保存字节。它还将解决拖尾昏迷的问题。您需要启动for循环,从1到小于,101并且能够通过将(i+1)输出消息中的in 转换为only 来删除额外的4个字节i。显然,您需要递增之前进行打印s
409_Conflict 2016年

谢谢,做了所有这些事情,并且肯定会对java8-lambda有所了解。
SoloKix '16

6

Oracle SQL 9.2, 138 137字节

SELECT REPLACE('class Tuple'||LEVEL||' {public Object'||SYS_CONNECT_BY_PATH(LEVEL-1,',_')||';}','t,','t ')FROM DUAL CONNECT BY LEVEL<101;

@Peter感谢指出0/1错误。

该查询使用层次查询的CONNECT BY CLAUSE生成100行。

LEVEL伪列包含每行的行号。

SYS_CONNECT_BY_PATH连接第一个参数,即每行的行号,并使用第二个参数作为分隔符。


请添加一些说明
Eumel,2016年

聪明:)开头Object _1不是Object _0,所以又要占用两个字节(-1)。但是,_可以将char添加到char中SYS_CONNECT_BY_PATH而不是进行连接,再次将其减少两个字节:REPLACE('class Tuple'||LEVEL||' {public Object'||SYS_CONNECT_BY_PATH(LEVEL-1,',_')||';}','t,_','t _')
Peter Lang

6

批处理,128字节

@set m=_0
@for /l %%t in (1,1,100)do @call:b %%t
@exit/b
:b
@echo class Tuple%1 {public Object %m%;}&set m=%m%,_%1

编辑:由于@Bob,节省了10个字节。感谢@EʀɪᴋᴛʜᴇGᴏʟғᴇʀ,节省了1个字节。


3
我总是很高兴看到高尔夫上的批量代码,而且,除了在所有地方都使用@之外,您可以重定向输出以附加到名为x的文件并将其用作输出
Dennis van Gils,2016年

@DennisvanGils可悲的是命令被回显到标准输出。
尼尔,

消除enabledelayedexpansion了117个字节:gist.github.com/Elusive138/4cea555114a979954dcb-如果您不介意关闭控制台窗口,则可以通过删除/barg 来节省两个exit
鲍勃,

@Neil大声笑好吧,所以我只是尝试运行它,现在我意识到您做了什么。非常聪明。
Ashwin Gupta

刚开始使用时@echo off
Elliot A.


5

Powershell-65字节

(根据评论进行修订)

全部归功于TimmyD

1..100|%{"class Tuple$_ {public Object _$(0..($_-1)-Join",_");}"}

为什么投票失败?(请注意,这是我的第一个帖子,不是很受欢迎吗?)
bulletprooffool


4

的R - 199个 132 123 118字节

版本4

p=paste0;for(i in 1:10)cat(p("class Tuple",i," {public Object ",toString(sapply(0:(i-1),function(x)p("_",x))),";}\n"))

版本3

p=paste0;for(i in 1:8)cat(p("class Tuple",i," {public Object ",p(sapply(0:(i-1),function(x)p("_",x)),collapse=","),";}\n"))

版本2

p=paste0;for(i in 1:100)cat(p("class Tuple",i," {public Object ",p(sapply(0:(i-1),function(x)p("_",x)),collapse=","),";}"),sep="\n")

版本1

for (i in 1:100){
  foo <- paste0("class Tuple", i, " {public Object ")
  for (j in 0:(i - 1)){
    foo <- if (j < (i - 1)) paste0(foo, "_", j, ",") else paste0(foo, "_", j, ";}")
  }
  print(foo)
}

3
欢迎来到编程难题和代码高尔夫球!由于这是一场代码高尔夫比赛,因此您需要使代码尽可能短。您可以先将变量名缩短为每个字符,然后删除空格,然后使用=赋值而不是<-
Alex A.

144个字节:for(i in 1:100){f=(p=paste0)("class Tuple",i," {public Object ");for(j in 0:(i-1))f=if(j<i-1)p(f,"_",j,",")else p(f,"_",j,";}");cat(f,sep="\n")}
Alex A.

没问题。:)而且,您无需在帖子正文中跟踪版本,因为可以通过显示“ X分钟前编辑”的链接访问修订历史记录。
Alex A.

(尽管可能值得在编辑摘要中或在帖子中给出一些指示,以便您对每个修订进行更改,以便其他人可以从您的修订过程中学习)
quintopia '16

4

Ruby,71个字节

100.times{|i|puts"class Tuple#{i+1} {public Object _#{[*0..i]*',_'};}"}

2
TIL [*0..i]*',_'
雷·托尔

4

Java,103个字节

s->{s="_0";for(int i=0;i++<100;s+=",_"+i)System.out.printf("class Tuple%s {public Object %s;}\n",i,s);}

我第一次来 嗨,您好!我去了一个Java8 lambda表达式(又名匿名函数)。

非高尔夫版本

s -> {
    s = "_0";
    for (int i = 0; i++ < 100; s += ",_" + i)
        System.out.printf("class Tuple%s {public Object %s;}\n", i, s);
}

要像在Java8中一样,实际使用它,必须将其分配给适当的功能接口的变量(或将其强制转换为),然后调用其方法。但是从技术上讲,该函数只是lambda表达式本身,因此我仅在此数数。

它还需要一个输入参数,这可以节省几个字节,因为我可以将其用作局部变量而不必指定其类型。我不确定这是否被认为是作弊,但对我来说似乎在规则之内:我只看到人们声明允许发布函数,而不是如何调用该函数。:)而且它实际上并没有读取参数,因此该函数仍然是独立的;您可以将任何String传递给它,甚至可以传递null,它将仍然产生正确的输出。

这是如何使用它:

import java.util.function.Consumer;

public class Main {
    public static void main(String[] args) {
        Consumer<?> r =
            s->{s="_0";for(int i=0;i++<100;s+=",_"+i)System.out.printf("class Tuple%s {public Object %s;}\n",i,s);}
        ;
        r.accept(null); 
    }
}

3

python 2,96

def f(n=99):s=n and f(n-1)+',_'+`n`or"class Tuple%d {public Object _0";print s%-~n+';}';return s

Python 3、98

def f(n=99):s=n and f(n-1)+',_%d'%n or"class Tuple%d {public Object _0";print(s%-~n+';}');return s

用法:

f()

取消高尔夫:

def javatuple(n=99):
    if n == 0:
        s = "class Tuple%d {public Object _0"
    else:
        s = javatuple(n-1) + ',_' + str(n)
    print(s%(n+1) + ';}')
    return s

前者:

103

r=range
for i in r(100):
 print"class Tuple%d {public Object _%s;}"%(i+1,',_'.join(`j`for j in r(i+1)))

108

def f(n=99):
 if n:f(n-1)
 print"class Tuple%d {public Object _%s;}"%(n+1,',_'.join(`i`for i in range(n+1)))

在您的python2答案中,最后一行似乎是不完整的: print f(3) 给: class Tuple1 {public Object _0;} class Tuple2 {public Object _0,_1;} class Tuple3 {public Object _0,_1,_2;} class Tuple4 {public Object _0,_1,_2,_3;} class Tuple%d {public Object _0,_1,_2,_3
Dieter

@dieter最后一行是结果。仅当您以交互方式运行它时才打印。
pacholik '16


2

Groovy,74个字符

“ join()”无与伦比...感谢@yariash,这是新的解决方案

100.times{println"class Tuple$it {public Object _${(0..it-1).join',_'};}"}

旧解决方案,共78个字符:

(1..100).each{println"class Tuple$it {public Object _${(0..it-1).join',_'};}"}

2
您可以使用100.times{}代替(1..100).each{}
KrzysztofAtłasik'16 May 17'9

@yariash感谢您的提示!
t0r0X

1

朱莉娅77字节

for i=1:100;println("class Tuple$i {public Object _$(join(0:i-1,",_"));}")end

1

Lua,128106字节

我仍在尝试找到一种直接在打印值而不是字符串上工作的方法。

编辑:部分找到它!我仍然需要一个字符串作为“ _0,_1 ...”部分,但这已经更好了:)。

s=""for i=0,99 do s=(s..",_"..i):gsub("^,",s)print(("class Tuple"..(i+1).." {public Object ")..s..";}")end

旧的128字节解决方案

s="class Tuple1 {public Object _0;}"print(s)for i=1,99 do s=s:sub(1,s:find";"-1):gsub("e%d+","e"..i+1)..",_"..i..";}"print(s)end

不打高尔夫球

s=""
for i=0,99
do
  s=(s..",_"..i)              -- concatenate s with ",_i"
      :gsub("^,",s)           -- remove the leading "," for ",_0"
  -- then print the concatenated string
  print(("class Tuple"..(i+1).." {public Object ")..s..";}")
end

1

Python 3 111 109 105字节

[print('class Tuple%s {public Object %s;}'%(i,','.join('_%i'%j for j in range(i))))for i in range(1,101)]

这不是世界上最短的事情,我只是参加。

edit1:0,先删除2个字节range

edit2:我不必要地转换int为,str而不是仅仅使用%i...降至105。


欢迎您,美好的开始!如果有兴趣,尝试range(i)代替range(0,i)或者因为你使用range了两次,尽量r=range早然后引用每次调用只r(如其他Python的解决方案)。
Ray Toal

gh,我range默认默认忘了从0开始。减少2个字节,但是,r=range;在开头添加的字符数完全相同,我已经尝试过了!:D
Issak '16

与我对Dair的评论相同:',_'.join(map(str,range(i)))此处短7个字节。
409_Conflict 2016年

1

Mathematica,130字节

{"class Tuple",ToString[#]," {public Object ",StringReplace[ToString[#-1&/@Range@#],{" "|"{" ->"_","}"->";}\n"}]}&/@Range[100]<>""

提示:\n可以用文字换行符代替。
LegionMammal978 '16

1

Scala,85字节

for(u<-1 to 100)println(s"class Tuple$u {public Object _${0 to u-1 mkString ",_"};}")

1

爪哇,116

(仅用于打印功能-根据一些评论,这符合规则)

import static java.lang.System.*;
public class T
{
    public static void main(String[] args)
    {
        T t = new T();
        t.p();
    }

    void p(){String s="_0";for(int i=0;i<100;){out.println("class Tuple"+ ++i+" {public Object "+ s + ";}");s+=",_"+i;}}
}

1

PHP,112字节

<?php for($i=0;$i<100;$i++){$m.=$i==0?'_'.$i:',_'.$i;echo 'class Tuple'.($i+1).' {public Object '.$m.';}<br/>';}

您可以通过将回声切换为双引号来节省一些字节:<?php for($i=0;$i<100;$i++){$m.=$i==0?"_$i":",_$i";echo 'class Tuple'.($i+1)." {public Object $m;}\n";}
Samsquanch '16

1
@Samsquanch另外,echo 'class Tuple'.($i+1)." {public Object $m;}\n";也可以使用echo'class Tuple',$i+1," {public Object $m;}\n";,它短3个字节,而不是。另外,根据meta,您可以删除<?php并假定您的代码将通过执行php -r "code"。另外,您可以for(;++$i<101;)echo"class Tuple$i {public Object ",$m=($m?"$m,":'')."_$i",";}\n";处理80个字节(您需要\n用真实的换行符替换)。在这里尝试:ideone.com/oOzKtP
Ismael Miguel,

1

严重的是55个字节

2╤R`;r"$'_+"£M',j@k"c╙ò T╒α%d {pu▐V Object %s;}"⌡%`M'
j

十六进制转储(与可逆xxd -r):

00000000: 32e2 95a4 5260 3b72 2224 275f 2b22 c2a3  2...R`;r"$'_+"..
00000010: 4d27 2c6a 406b 2263 e295 99c3 b220 54e2  M',j@k"c..... T.
00000020: 9592 ceb1 2564 207b 7075 e296 9056 204f  ....%d {pu...V O
00000030: 626a 6563 7420 2573 3b7d 22e2 8ca1 2560  bject %s;}"...%`
00000040: 4d27 0a6a                                M'.j

在线尝试!

是的,该换行符应该在那里。

说明(用换行符替换\n):

2╤R`;r"$'_+"£M',j@k"c╙ò T╒α%d {pu▐V Object %s;}"⌡%`M'\nj
2╤R                                                       push range [1,100]
   `                                              `M      map:
    ;r                                                      push a, range(a)
      "$'_+"£M                                              map:
       $'_+                                                   stringify, prepend "_"
              ',j                                           join with commas
                 @k                                         swap and push stack as list
                   "c╙ò T╒α%d {pu▐V Object %s;}"⌡           decompress, result is
                                                              "class Tuple%d {public Object %s;}"
                                                 %          string format
                                                    '\nj  join with newlines

1

Japt,52个字节

Lo £`cÓ? TÕà{X} \{puÞV Object {Xò ®'_+Z}&}` r&59d} ·

?应为原义字节0x95。在线测试!

Japt具有:

  • 简洁的语法有助于缩短代码。
  • 字符串压缩以帮助进一步缩短它。
  • 许多错误,使您想要将计算机扔到窗外。

我什至不能在字符串中使用分号,因为它包装的函数希望在分号后返回所有内容。这只能是46个字节:

Lo £`cÓ? TÕà{X} \{puÞV Object {Xò ®'_+Z};}`} ·

但是,事实并非如此。我将看看能否在接下来的几个小时内修复这些错误。

这个怎么运作

Lo £       }  // Generate the range [0..100), and map each item X in this range to:
`cÓ? TÕà{X}   //  "class Tuple" + X +
\{puÞV Object //  "{public Object" +
{Xò ®'_+Z}    //   Create the range [0..X] and map each item Z to "_" + Z.
              //   Upon stringification, this automatically inserts the commas.
&}`           //  + "&}"
r&59d         //  Replace the "&" with String.fromCharCode(59), or ";".
·             // Join the result with newlines.

呸! 忍者〜18个月!X顺便说一句,您需要增加第一个。
毛茸茸的

1

Javascript,112110字节

感谢@CᴏɴᴏʀO'Bʀɪᴇɴ2字节。

_=>[...Array(100)].map((x,i)=>`class Tuple${++i} {public Object ${[...Array(i)].map((y,j)=>'_'+j)};}`).join`
`

取消高尔夫:

_=>                                         // anonymous function
    [...Array(100)].map((x,i)=>             // 100 times [0..99]
        `class Tuple${++i} {public Object   // Tuple index + 1
            ${[...Array(i)].map(            // (index + 1) times
                (y,j)=>'_'+j                // _+j with j in [0..index]
            )}                              // Array without join prints comma in between
        ;}`                                 // as literal string
    ).join`\n`                              // display array line by line

1
我想你可以替换${i+1}使用${i++}和替换${[...Array(i++)]${[...Array(i)]
科纳·奥布莱恩

@CᴏɴᴏʀO'Bʀɪᴇɴ。谢谢,我更新为++i


1

Python 2,96字节

r=range
for i in r(1,101):print"class Tuple%d {public Object _%s;}"%(i,',_'.join(map(str,r(i))))

感谢@DenkerAffe有关使用的建议lambda

感谢@MathiasEttinger的join想法。


2
如果您在reduce-call中使用lambda而不是为此定义函数,则可以将其压缩为111个字节:reduce(lambda x,y:'%s,_%s'%(x,y), r(i))
Denker

1
',_'.join(map(str,r(i)))用于额外的14个字节的删除(或15个,因为您在中保留了额外的空间reduce)。
409_Conflict 2016年

1

C ++, 164 159 157个字节(仅155个功能)

#include <iostream>
#define o std::cout<<
int main(){int j,i=0;for(;i<100;++i){o"class Tuple"<<i+1<<" {public Object _0";for(j=0;++j<=i;)o",_"<<j;o";}\n";}}

这是一个完整程序。如果替换为int main(),则可以仅函数形式保存2个字节void f()

在Ideone中运行代码

空洞的,包括宏扩展

#include <iostream>
int main()
{
    int j,i=0;
    for(;i<100;++i)
    {
        std::cout << "class Tuple"<< i+1 <<" {public Object _0";
        for(j=0;++j<=i;)
            std::cout << ",_" << j;
        std::cout << ";}\n";
    }
}

欢迎来到编程难题和代码高尔夫球!不错的第一答案!除非在挑战中另有说明,否则您始终可以使用函数而不是完整程序,因此可以节省一些字节。您仍然必须包括iostream tho,因为输出需要它。
Denker

您可能还想j=1在for循环中进行操作,因此没有if(j)
Ethiraric's

@Ethiraric但是,当然!我多么草率。我想我太专注于“记住在第一行跳过添加内容”的想法,而最终也写得太真实了。
sendaran'2

@sendaran甚至可能for(int j=0;++j<=i;)会节省一个字节。
Ethiraric's

@Ethiraric做到了这一点,并通过提取变量声明节省了一个多余的字节,从而启用了另一个空表达式。
sendaran'2
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.