องค์ประกอบที่หายไป


17

กำหนดสตริงSและรายชื่อของดัชนีXปรับเปลี่ยนSโดยการเอาองค์ประกอบที่ดัชนีของแต่ละขณะที่ใช้ผลที่เป็นค่าใหม่SS

ตัวอย่างเช่นกำหนดS = 'codegolf'และX = [1, 4, 4, 0, 2],

0 1 2 3 4 5 6 7  |
c o d e g o l f  |  Remove 1
c d e g o l f    |  Remove 4
c d e g l f      |  Remove 4
c d e g f        |  Remove 0
d e g f          |  Remove 2
d e f

งานของคุณคือการดำเนินการตามกระบวนการนี้รวบรวมค่าSหลังจากการดำเนินการแต่ละครั้งและแสดงแต่ละรายการในการขึ้นบรรทัดใหม่ คำตอบสุดท้ายก็คือ

S = 'codegolf'
X = [1, 4, 4, 0, 2]

Answer:

codegolf
cdegolf
cdeglf
cdegf
degf
def
  • นี่คือเพื่อให้รหัสของคุณสั้นที่สุด
  • คุณอาจคิดว่าค่าต่างๆXนั้นเป็นดัชนีที่ถูกต้องอยู่เสมอSและคุณอาจใช้ดัชนีที่เป็น 0 หรือ 1 ก็ได้
  • สตริงจะมีเพียง [A-Za-z0-9]
  • อาจว่างSหรือไม่xก็ได้ ถ้าSว่างเปล่ามันxจะต้องว่างเปล่า
  • คุณอาจใช้Sเป็นรายการอักขระแทนสตริง
  • คุณสามารถพิมพ์ผลลัพธ์หรือส่งคืนรายการสตริง ช่องว่างนำหน้าและต่อท้ายเป็นที่ยอมรับ รูปแบบของเอาต์พุตใด ๆ ก็ใช้ได้ตราบใดที่อ่านได้ง่าย

กรณีทดสอบ

S = 'abc', x = [0]
'abc'
'bc'

S = 'abc', x = []
'abc'

S = 'abc', x = [2, 0, 0]
'abc'
'ab'
'b'
''

S = '', x = []
''

S = 'codegolfing', x = [10, 9, 8, 3, 2, 1, 0]
'codegolfing'
'codegolfin'
'codegolfi'
'codegolf'
'codgolf'
'cogolf'
'cgolf'
'golf'
code-golf  string  array-manipulation  code-golf  string  ascii-art  code-golf  number  sequence  pi  code-golf  number  array-manipulation  code-golf  string  ascii-art  code-golf  math  number  game  code-golf  math  sequence  polynomials  recursion  code-golf  math  number  sequence  number-theory  code-golf  permutations  balanced-string  code-golf  string  ascii-art  integer  code-golf  decision-problem  hexagonal-grid  code-golf  ascii-art  kolmogorov-complexity  code-golf  number  code-golf  matrix  binary-matrix  code-golf  math  statistics  code-golf  string  polyglot  code-golf  random  lost  code-golf  date  path-finding  code-golf  string  code-golf  math  number  arithmetic  number-theory  code-golf  tetris  binary-matrix  code-golf  array-manipulation  sorting  code-golf  number  code-golf  array-manipulation  rubiks-cube  cubically  code-golf  grid  optimization  code-golf  math  function  code-golf  string  quine  code-golf  ascii-art  grid  code-golf  decision-problem  grid  simulation  code-golf  math  sequence  code-golf  path-finding  code-golf  ascii-art  grid  simulation  code-golf  number  whitespace  code-golf  sequence  code-golf  sequence  code-golf  sequence  integer  code-golf  math  game  code-golf  internet  stack-exchange-api  code-golf  sequence  code-golf  internet  stack-exchange-api  code-golf  math  factoring  code-challenge  sequence  polyglot  rosetta-stone  code-golf  string  browser  code-golf  date  code-golf  base-conversion  code-challenge  cops-and-robbers  hello-world  code-golf  cops-and-robbers  hello-world 

เราขอSเป็นรายชื่อตัวละครได้ไหม
Mr. Xcoder

@ Mr.Xcoder แน่นอนฉันจะเพิ่มในสเป็ค
ไมล์

เราขอพิมพ์เป็นรายการตัวละครได้ไหม
Erik the Outgolfer

เราสามารถข้ามรายการแรก (สตริงเดิม) ในผลลัพธ์ได้หรือไม่
ETHproductions

@ETHproductions ไม่เอาต์พุตควรเป็นสตริงดั้งเดิมก่อนจากนั้นแต่ละสตริงที่เป็นผลลัพธ์จากการลบอักขระ ดังนั้นเอาต์พุตควรมีlen(x)+1สตริง
ไมล์

คำตอบ:


8

Haskell, 38 33 ไบต์

s#i=take i s++drop(i+1)s
scanl(#)

ตรงไปข้างหน้า: ใช้องค์ประกอบก่อนและหลังดัชนี i ซ้ำกันอีกครั้งและรวบรวมผลลัพธ์

ลองออนไลน์!

แก้ไข: @Lynn บันทึก 5 ไบต์ ขอบคุณ!


s#i=take i s++drop(i+1)sสั้นกว่าจริงและประหยัดได้ 5 ไบต์
ลินน์

1
ไม่ตอนนี้คุณอายุ 33 แล้ว - อย่าลืมว่ามี TIO snippet q=อยู่ในนั้น ^^;
Lynn

ใช่คุณพูดถูก
nimi

8

JavaScript (ES6), 57 50 48 45 42 ไบต์

รับสตริงเป็นอาร์เรย์ของอักขระแต่ละตัวเอาต์พุตอาร์เรย์ที่มีสตริงที่คั่นด้วยเครื่องหมายจุลภาคของต้นฉบับตามด้วย subarray ของสตริงที่คั่นด้วยเครื่องหมายจุลภาคสำหรับแต่ละขั้นตอน

s=>a=>[s+"",a.map(x=>s.splice(x,1)&&s+"")]
  • บันทึก 3 ไบต์ด้วยArnauld แนะนำว่าฉันใช้ข้อมูลจำเพาะที่ปล่อยออกมาอย่างไม่เหมาะสมมากกว่าที่ฉันทำไปแล้วซึ่งทำให้ฉันต้องใช้มันมากกว่านี้เพื่อประหยัดอีก 3 ไบต์

ทดสอบมัน

o.innerText=JSON.stringify((f=

s=>a=>[s+"",a.map(x=>s.splice(x,1)&&s+"")]

)([...i.value="codegolf"])(j.value=[1,4,4,0,2]));oninput=_=>o.innerText=JSON.stringify(f([...i.value])(j.value.split`,`))
label,input{font-family:sans-serif;font-size:14px;height:20px;line-height:20px;vertical-align:middle}input{margin:0 5px 0 0;width:100px;}
<label for=i>String: </label><input id=i><label for=j>Indices: </label><input id=j><pre id=o>


คำอธิบาย

เรารับอินพุตทั้งสองผ่านพารามิเตอร์s(อาเรย์สตริง) และa(อาเรย์จำนวนเต็ม) ในรูปแบบ currying ซึ่งหมายถึงเราเรียกฟังก์ชันด้วยf(s)(a)ในความดีความชอบไวยากรณ์ความหมายที่เราเรียกฟังก์ชั่นที่มี

sเราสร้างอาร์เรย์ใหม่และเริ่มออกด้วยเดิม อย่างไรก็ตามเนื่องจากspliceวิธีการที่เราจะใช้ในภายหลังในการปรับเปลี่ยนอาร์เรย์เราจำเป็นต้องทำสำเนาของมันซึ่งเราสามารถทำได้โดยการแปลงเป็นสตริง (เพียงผนวกสตริงว่าง)

เพื่อสร้าง subarray เราmapมากกว่าอาร์เรย์จำนวนเต็มa(ที่xเป็นจำนวนเต็มปัจจุบัน) และสำหรับแต่ละองค์ประกอบเราsplice1 องค์ประกอบจากเริ่มต้นที่ดัชนีs xเราคืนค่าที่แก้ไขsแล้วสร้างสำเนาอีกครั้งโดยแปลงเป็นสตริง


เนื่องจากรูปแบบการแสดงผลใด ๆ จะปรับได้ตราบเท่าที่สามารถอ่านได้ง่ายฉันจึงคิดว่าควรมีรูปแบบที่ยอมรับได้:s=>a=>[s+'',...a.map(x=>s.splice(x,1)&&s+'')]
Arnauld

Nice one, @Arnuald - ฉันคงไม่คิดที่จะผลักมันไปไกลขนาดนั้น
Shaggy

6

Japtap , 6 ไบต์

åjV uV

ทดสอบออนไลน์!

คำอธิบาย

UåjV uV   Implicit: U = array of integers, V = string
Uå        Cumulatively reduce U by
  j         removing the item at that index in the previous value,
   V        with an initial value of V.
     uV   Push V to the beginning of the result.

อีกวิธีหนึ่งคือ:

uQ åjV

UuQ       Push a quotation mark to the beginning of U.
    å     Cumulatively reduce by
     j      removing the item at that index in the previous value,
      V     with an initial value of V.

ใช้งานได้เนื่องจากการลบรายการที่ดัชนี"ไม่ได้ทำอะไรเลยและส่งคืนสตริงเดิม


6

Husk , 7 ไบต์

G§+oh↑↓

รับสตริงก่อนจากนั้นจึงใช้ดัชนี (อิง 1) ลองออนไลน์!

คำอธิบาย

G§+oh↑↓
G        Scan from left by function:
           Arguments are string, say s = "abcde", and index, say i = 3.
      ↓    Drop i elements: "de"
     ↑     Take i elements
   oh      and drop the last one: "ab"
 §+        Concatenate: "abde"
         Implicitly print list of strings on separate lines.

ฉันจะใช้รายการดัชนีที่ว่างได้xอย่างไร
ไมล์

@miles คุณต้องระบุชนิดเช่นนี้
Zgarb

ฉันเห็นขอบคุณ ฉันไม่คุ้นเคยกับ Haskell หรือ Husk มากนัก
ไมล์

6

Python 2 , 43 ไบต์

s,i=input()
for i in i+[0]:print s;s.pop(i)

ลองออนไลน์!

รูปแบบของเอาต์พุตใด ๆ ก็ใช้ได้ตราบใดที่อ่านได้ง่าย

ดังนั้นสิ่งนี้จึงพิมพ์เป็นรายการตัวอักษร


1
ดีมาก แต่ทำไมคุณถึงเลือกการใช้เครื่องหมายในทางที่ผิดfor i in i+[0]?
Mr. Xcoder

@ Mr.Xcoder เพราะวิธีที่แสดงบรรทัดสุดท้าย (และเหตุผลที่ฉันโพสต์แยกต่างหากตั้งแต่แรก)
Erik the Outgolfer

ไม่มีไม่ได้ผมกำลังพูดคุยเกี่ยวกับ+[0] เทียบเท่าfor i in ifor k in iเทียบเท่า
Mr. Xcoder

@ Mr.Xcoder เพราะฉันชอบวิธีนั้น ...
Erik the Outgolfer

โอเคแค่อยากรู้อยากเห็น ... บางทีมันอาจเป็นกลอุบายที่ข้าไม่รู้ :)
Mr. Xcoder

5

Python 2 , 47 ไบต์

สิ่งนี้อาจลดลงเหลือ43 ไบต์ตามที่ @LuisMendo ชี้ให้เห็น แต่นั่นเป็นวิธีการแก้ปัญหาของ @ ErktheOutgolfer แล้ว

a,b=input();print a
for i in b:a.pop(i);print a

ลองออนไลน์!


`a`[2::5]แทน''.join(a)
Rod

@Rod ทำงานอย่างไรกว่า?
Mr. Xcoder

reprและการแยกสตริงใช้งานได้ดีเพื่อเปลี่ยนรายชื่อตัวละครให้เป็นสตริง`a`[1::3]นอกจากนี้ยังสามารถใช้กับรายการตัวเลขได้ด้วย
Rod

@Rod ฉันรู้ว่าพวกเขาคืออะไรฉันไม่เข้าใจวิธีการ::5ทำงานที่นี่: P
Mr. Xcoder

@ Mr.Xcoder ดีจากนั้นศึกษาการแบ่งสตริง;) โดยทั่วไปจะใช้เวลาทุกถ่าน 5 เริ่มต้นจาก 2
Erik the Outgolfer

4

Java 8, 78 ไบต์

นี่คือแลมบ์ดาที่ถูกสาปจาก int[]ไปของผู้บริโภคหรือStringBuilder StringBufferเอาท์พุทจะพิมพ์ออกมามาตรฐาน

l->s->{System.out.println(s);for(int i:l)System.out.println(s.delete(i,i+1));}

ลองใช้ออนไลน์


1
คำตอบที่สองของคุณคือรายการที่ถูกต้อง ไม่มีอะไรที่ห้ามไม่ให้คุณเลือกประเภทอินพุตของคุณอย่างระมัดระวังตราบใดที่เหมาะสม ฉันได้รับการStreamป้อนข้อมูลหลายครั้งแล้วและได้รับคำตอบที่ดีมาก ที่จริงแล้วภาษาการเล่นกอล์ฟเกือบทั้งหมดใช้กระแสข้อมูลที่เทียบเท่าภายใน ดังนั้นโดยการเลือกอินพุตของคุณคุณเพิ่งเลื่อนระดับเล็กน้อย +1 อย่างไรก็ตาม
Olivier Grégoire

บางทีคุณพูดถูก ฉันคิดว่าฉันมักจะหัวโบราณมากกว่าเรื่องเหล่านี้ ฉันจะเปลี่ยนไปใช้วิธีแก้ปัญหาที่สอง
จา

3

05AB1E , 11 ไบต์

v=ā0m0yǝÏ},

ลองออนไลน์!

v           # For each index:
 =          #   Print without popping
  ā         #   Push range(1, len(a) + 1)
   0m       #   Raise each to the power of 0. 
            #   This gives a list of equal length containing all 1s
     0yǝ    #   Put a 0 at the location that we want to remove
        Ï   #   Keep only the characters that correspond to a 1 in the new list
         }, # Print the last step

บรรทัดแรกไม่ได้อยู่ที่นั่น โอ้และไม่แน่ใจว่าคุณสามารถพิมพ์แบบนั้นได้ไหม
Erik the Outgolfer

@EriktheOutgolferAny form of output is fine as long as it is easily readable
Riley

ฉันสามารถบันทึกบางไบต์แล้ว ...
Erik the Outgolfer


3

R , 46 32 ไบต์

function(S,X)Reduce(`[`,-X,S,,T)

ลองออนไลน์!

รับอินพุตเป็นรายการของอักขระและXใช้แบบ 1 Reduceคือ R เทียบเท่าfoldฟังก์ชันในกรณีนี้[คือเซตย่อย ทำซ้ำ-Xเพราะการทำดัชนีเชิงลบใน R จะลบองค์ประกอบและinitถูกตั้งค่าSด้วยaccum=TRUEดังนั้นเราจึงสะสมผลลัพธ์ระดับกลาง

R , 80 ไบต์

function(S,X,g=substring)Reduce(function(s,i)paste0(g(s,0,i-1),g(s,i+1)),X,S,,T)

ฟังก์ชั่น 2 ข้อโต้แย้งใช้เวลาX1 ดัชนี ใช้Sเป็นสตริง

ลองออนไลน์!


ฉลาดมากที่จะใช้Reduceที่นี่ ทำได้ดี!
djhurio


3

PowerShell , 94 84 ไบต์

param($s,$x)$a=[Collections.Generic.list[char]]$s;$x|%{-join$a;,$a|% r*t $_};-join$a

ลองออนไลน์!

รับอินพุต$sเป็นสตริงและ$xเป็นอาร์เรย์ที่ชัดเจน จากนั้นเราสร้าง$aตาม$sรายการ

อาร์เรย์ใน PowerShell มีขนาดคงที่ (สำหรับจุดประสงค์ของเราที่นี่) ดังนั้นเราต้องใช้ความยาว [System.Collections.Generic.list]ประเภทที่เพื่อที่จะเข้าถึง.removeAt()ฟังก์ชั่นได้

ฉันเสียสละ 10 ไบต์เพื่อรวมสอง-joinคำสั่งเพื่อให้ผลลัพธ์สวย OP ระบุว่าการส่งออกรายการตัวอักษรเป็นเรื่องปกติดังนั้นฉันสามารถส่งออกได้$aมากกว่า-join$aแต่มันน่าเกลียดจริงๆในความคิดของฉัน

บันทึก 10 ไบต์ด้วยนักเทศน์


คุณสามารถปล่อยออกและการใช้งานเพียงแค่System [Collections.Generic.list[char]]เพื่อให้สวยโดยไม่ต้องเสียสละไบต์คุณสามารถใส่-join$aส่วนท้ายในส่วนท้ายใน TIO
นักเทศน์

ฉันคิดว่าคุณยังสามารถบันทึก 3 ไบต์โดยการเปลี่ยนไป$a.removeat($_) ,$a|% r*t $_
ต้มตุ๋น

@ Briantist ขอบคุณสำหรับสิ่งเหล่านั้น - ฉันลืมที่จะลบออกSystemจากชื่อคลาสเสมอ น่าเศร้าที่-join$aจำเป็นสำหรับรหัสสุดท้ายดังนั้นฉันไม่สามารถย้ายไปยังส่วนท้าย
AdmBorkBork


2

05AB1E , 9 7 ไบต์

=svõyǝ=

ลองออนไลน์!


=s        # Print original string, swap with indices.
  v       # Loop through indices...
   õyǝ    # Replace current index with empty string.

-2 ขอบคุณไอเดียจาก @ETHProductions


สิ่งนี้จะไม่พิมพ์อะไรเลยถ้าxว่างเปล่า
Riley

@Riley คงที่ (แก้ไข #ETHProductions)
Magic Octopus Urn

1
คุณไม่สามารถทำ=sv""yǝ=หรือสิ่งที่คล้ายกันแทนการขึ้นบรรทัดใหม่แล้วลบบรรทัดใหม่ได้หรือไม่
ETHproductions

@ETHproductions ใช้õงานได้เช่นกัน :)
Magic Octopus Urn

ฉันไม่รู้ 05AB1E, ฮ่าฮ่า
ETHproductions

2

เรติน่า 58 ไบต์

¶\d+
¶¶1$&$*
+1`(?=.*¶¶.(.)*)(((?<-1>.)*).(.*)¶)¶.*
$2$3$4

ลองออนไลน์! คำอธิบาย:

¶\d+

จับคู่ดัชนี (ซึ่งไม่เคยอยู่ในบรรทัดแรกดังนั้นจะขึ้นบรรทัดใหม่เสมอ)

¶¶1$&$*

เว้นวรรคของดัชนีแปลงเป็นคู่และเพิ่ม 1 (เนื่องจากเลขศูนย์ยากในเรตินา)

+1`

เปลี่ยนการจับคู่ครั้งแรกซ้ำ ๆ ซึ่งเป็นค่าปัจจุบันของสตริงเสมอ

   (?=.*¶¶.(.)*)

$#1ดึงดัชนีต่อไปใน

                (           .    ¶)

จับสตริงรวมถึง$#1อักขระ th และหนึ่งบรรทัดใหม่

                 ((?<-1>.)*) (.*)

แยกส่วนนำหน้าและส่วนต่อท้ายของ$#1อักขระ th ของสตริงแยกจากกัน

                                   ¶.*

ตรงกับดัชนี

$2$3$4

แทนที่สตริงด้วยตัวเองและดัชนีด้วยคำนำหน้าและคำต่อท้ายของ$#1อักขระ th



2

PowerShell, 54 58 bytes

param($s,$x),-1+$x|%{$z=$_;$i=0;-join($s=$s|?{$z-ne$i++})}

Try it online!

Explanation

Takes input as a char array ([char[]]).

Iterates through the array of indices ($x) plus an injected first element of -1, then for each one, assigns the current element to $z, initializes $i to 0, then iterates through the array of characters ($s), returning a new array of only the characters whose index ($i) does not equal (-ne) the current index to exclude ($z). This new array is assigned back to $s, while simultaneously being returned (this happens when the assignment is done in parentheses). That returned result is -joined to form a string which is sent out to the pipeline.

Injecting -1 at the beginning ensures that the original string will be printed, since it's the first element and an index will never match -1.


1
Very clever way of pulling out the appropriate indices.
AdmBorkBork

2

q/kdb+, 27 10 bytes

Solution:

{x _\0N,y}

Examples:

q){x _\0N,y}["codegolf";1 4 4 0 2]
"codegolf"
"cdegolf"
"cdeglf"
"cdegf"
"degf"
"def"
q){x _\0N,y}["abc";0]
"abc"
"bc"
q){x _\0N,y}["abc";()]
"abc"
q){x _\0N,y}["abc";2 0 0]
"abc"
"ab"
,"b"
""    
q){x _\0N,y}["";()]
""

Explanation:

Takes advantage of the converge functionality \ as well as drop _.

{x _\0N,y}
{        } / lambda function, x and y are implicit variables
     0N,y  / join null to the front of list (y), drop null does nothing
   _\      / drop over (until result converges) printing each stage
 x         / the string (need the space as x_ could be a variable name)

Notes:

If we didn't need to print the original result, this would be 2 bytes in q:

q)_\["codegolfing";10 9 8 3 2 1 0]
"codegolfin"
"codegolfi"
"codegolf"
"codgolf"
"cogolf"
"cgolf"
"golf"

2

Perl 5, 55 bytes (54 + "-l")

sub{print($s=shift);for(@_){substr$s,$_,1,"";print$s}}

Try it online!


Nice! I came up with a very similar approach, but as a full program (using -pa) for 44 bytes: $_=<>;substr$_,shift@F,print,""while@F&&$_
Dom Hastings

Nice! Not sure you need the final &&$_ since you can assume the input is valid (the list of indices can't be longer than the string). Using the return value of print as the number of characters is quite slick.
aschepler

Ah, that's true! I didn't notice that part of the spec! I thought my answer was far too similar to yours to post separately though!
Dom Hastings

2

MATL, 8 bytes

ii"t[]@(

Indexing is 1-based.

Try it online! Or verify the test cases.

Explanation

i      % Input string. Input has to be done explicitly so that the string
       % will be displayed even if the row vector of indices is empty
i      % Input row vector of indices
"      % For each
  t    %   Duplicate current string
  []   %   Push empty array
  @    %   Push current index
  (    %   Assignment indexing: write [] to string at specified index
       % End (implicit). Display stack (implicit)

2

C# (.NET Core), 87 87 74 70 bytes

S=>I=>{for(int i=0;;S=S.Remove(I[i++],1))System.Console.WriteLine(S);}

Try it online!

Just goes to show that recursion isn't always the best solution. This is actually shorter than my original invalid answer. Still prints to STDOUT rather than returning, which is necessary because it ends with an error.

-4 bytes thanks to TheLethalCoder


Per a recent meta consensus (that I can't find) recursive lambdas in C# are disallowed unless you specify what they compile to in the byte count. Therefore, a full method is shorter in this case. I am downvoting until this is fixed, let me know when.
TheLethalCoder

@TheLethalCoder I may not agree with the consensus, but it does seem to be consensus. I've updated my answer.
Kamil Drakari

70 bytes. Use currying and move one statement into the loop to stop needing the loop braces.
TheLethalCoder

@TheLethalCoder Ah, so THAT's how you use currying in C#! I knew it was shorter for exactly two arguments, but it always ended up complaining about some part of my syntax. Thanks for the improvements
Kamil Drakari

No worries and yeah the first one must always be a Func that returns the other Func, Action, Predicate,...
TheLethalCoder



1

Gaia, 9 bytes

+⟪Seḥ+⟫⊣ṣ

I should really add a "delete at index" function...

Try it online!

Explanation

+          Add the string to the list
 ⟪Seḥ+⟫⊣   Cumulatively reduce by this block:
  S         Split around index n
   e        Dump the list
    ḥ       Remove the first char of the second part
     +      Concatenate back together
        ṣ  Join the result with newlines

1

V, 12 bytes

òdt,GÙ@-|xHx

Try it online!

This is 1-indexed, input is like:

11,10,9,4,3,2,1,
codegolfing

Explanation

ò              ' <M-r>ecursively until error
 dt,           ' (d)elete (t)o the next , (errors when no more commas)
    G          ' (G)oto the last line
     Ù         ' Duplicate it down
        |      ' Goto column ...
      @-       ' (deleted number from the short register)
         x     ' And delete the character there
          H    ' Go back home
           x   ' And delete the comma that I missed

How do I use an empty list of indices x?
miles

@miles By adding a few bytes :). Simply an empty first line will now work. Would you be OK if I took lists with a trailing comma? IE 1,2,3,. Empty list would be nothing, Singleton would be 1,
nmjcman101

Sure, you can use that input format.
miles


1

Pyth, 8 bytes

+zm=z.Dz

Test suite!

explanation

+zm=z.DzdQ    # implicit: input and iteration variable
  m      Q    # for each of the elements of the first input (the array of numbers, Q)
     .Dzd     # remove that index from the second input (the string, z)
   =z         # Store that new value in z
+z            # prepend the starting value



โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.