Retina 0.8.2, 100(削除) 100 (削除ここまで) 69 bytes
33$*2080$*.
M!`.
$'¶{65}
^33=`.+
$&0$&0
+1`+s`.(?<=(.)*)((0)\0\.\.|(0+|\.\|\.?)(0.))|\.*¶.(?<-1>.)*(?(1)^0)(?!.{65})
$&3ドル5ドル0
.(.+).
1ドル
Try it online! Try it online! Explanation:
33$*.
2080$*.
$'¶
Create a triangle ofInsert 2080 .s. The generation code below requires each line to start with a
M!`.{65}
Split it into 32 lines of 65., and creating a triangle is slightly golfier as well as probably faster.
^33=`.+
$&0$&0
AddChange the middle 0. on the first line and append some moreto a .0s.
+1`+`
Make replacements one at a time. This isRepeat the code will actually generate afollowing change until no more . below the twos can be changed into .0s at the end of a line, and we only want this to apply as a last resort.
s`.(?<=(.)*)((0)\.\.|(0+|\0\.\.?)(|\.))0.*¶|\.(?<-1>.)*(?(1)^0)(?!.{65})
$&3ドル5ドル0
Look for either aChange all 0.. pattern, where thes to 0s if there is captured, or either a 0. (but not 0..), 00., or 000 pattern, where the . is captured (in the case of 000, the next .00 is captured), or a .0, ..0 or ... (or at the end of a line ..0) pattern, where the last character is captured, and append this character to on the next line, if it would go underneath the middle character above.
.(.+).
1ドル
TrimRemove the leadingleft and trailing . from each lineright columns.
Retina 0.8.2, 100 bytes
33$*.
.
$'¶
^.+
$&0$&
+1`(?<=(.)*)((0)\.\.|(0+|\.\.?)(.)).*¶.(?<-1>.)*(?(1)^)(?!.)
$&3ドル5ドル
.(.+).
1ドル
Try it online! Explanation:
33$*.
.
$'¶
Create a triangle of .s. The generation code below requires each line to start with a ., and creating a triangle is slightly golfier as well as probably faster.
^.+
$&0$&
Add 0 on the first line and append some more .s.
+1`
Make replacements one at a time. This is the code will actually generate a . below the two .s at the end of a line, and we only want this to apply as a last resort.
(?<=(.)*)((0)\.\.|(0+|\.\.?)(.)).*¶.(?<-1>.)*(?(1)^)(?!.)
$&3ドル5ドル
Look for either a 0.. pattern, where the 0 is captured, or either a 0. (but not 0..), 00., or 000 pattern, where the . is captured (in the case of 000, the next . is captured), or a .0, ..0 or ... (or at the end of a line ..) pattern, where the last character is captured, and append this character to the next line, if it would go underneath the middle character.
.(.+).
1ドル
Trim the leading and trailing . from each line.
Retina 0.8.2, (削除) 100 (削除ここまで) 69 bytes
2080$*.
M!`.{65}
33=`.
0
+s`.(?<=(0\.\.|\.0.|\..0).{65})
0
.(.+).
1ドル
Try it online! Explanation:
2080$*.
Insert 2080 .s.
M!`.{65}
Split it into 32 lines of 65..
33=`.
0
Change the middle . on the first line to a 0.
+`
Repeat the following change until no more .s can be changed into 0s.
s`.(?<=(0\.\.|\.0.|\..0).{65})
0
Change all .s to 0s if there is either 0.., .00, .0. or ..0 on the line above.
.(.+).
1ドル
Remove the left and right columns.
Retina 0.8.2, 100 bytes
33$*.
.
$'¶
^.+
$&0$&
+1`(?<=(.)*)((0)\.\.|(0+|\.\.?)(.)).*¶.(?<-1>.)*(?(1)^)(?!.)
$&3ドル5ドル
.(.+).
1ドル
Try it online! Explanation:
33$*.
.
$'¶
Create a triangle of .s. The generation code below requires each line to start with a ., and creating a triangle is slightly golfier as well as probably faster.
^.+
$&0$&
Add 0 on the first line and append some more .s.
+1`
Make replacements one at a time. This is the code will actually generate a . below the two .s at the end of a line, and we only want this to apply as a last resort.
(?<=(.)*)((0)\.\.|(0+|\.\.?)(.)).*¶.(?<-1>.)*(?(1)^)(?!.)
$&3ドル5ドル
Look for either a 0.. pattern, where the 0 is captured, or either a 0. (but not 0..), 00., or 000 pattern, where the . is captured (in the case of 000, the next . is captured), or a .0, ..0 or ... (or at the end of a line ..) pattern, where the last character is captured, and append this character to the next line, if it would go underneath the middle character.
.(.+).
1ドル
Trim the leading and trailing . from each line.