คำถามติดแท็ก string

การแข่งขันเพื่อแก้ปัญหาเฉพาะผ่านการใช้งานและการจัดการของสตริง

30
คำบิด!
คำบิด! รับสตริงและจำนวนเต็มบวก คุณต้องบิดสายไปมา ตัวอย่างอินพุต / เอาท์พุต อินพุต Programming Puzzles & Code Golf 4 เอาท์พุต Prog mmar ing zzuP les oC & de G flo อินพุต อินพุตสามารถใช้ผ่าน STDIN หรืออาร์กิวเมนต์ของฟังก์ชัน การป้อนข้อมูลจะประกอบด้วยสตริงและจำนวนเต็มบวก n จำนวนเต็มจะกำหนดความยาวของแต่ละเส้นบิด สตริงถูกบิดไปมา อินพุตHELLO, WORLD!และ 5 มีลักษณะดังนี้: เอาท์พุต ผลลัพธ์จะเป็นข้อความที่บิดเบี้ยว มันอาจจะไม่ช่องว่างต่อท้าย หากความยาวของสตริงที่ป้อนเข้าไม่หารด้วยความยาวของบรรทัดให้เพิ่มช่องว่างจนกว่าจะเติมบรรทัด: ตัวอย่างของสิ่งนี้: อินพุต Hello, World! 5 เอาท์พุท (หมายเหตุช่องว่างที่ปลายสุด) Hello roW , …
34 code-golf  string 

30
ใช้อักษรตัวแรกของป้อนคำให้พิมพ์ใหญ่
อันนี้ค่อนข้างเร็ว แต่ฉันแน่ใจว่าคุณจะชอบ Codegolf เป็นโปรแกรมที่จะป้อนข้อมูลในรูปแบบของประโยคและให้ผลลัพธ์ด้วยตัวอักษรตัวแรกในแต่ละคำ กฎ: ข้อมูลที่ส่งอาจไม่อยู่ในรูปแบบของฟังก์ชัน ดังนั้นไม่: function x(y){z=some_kind_of_magic(y);return z;} เป็นคำตอบสุดท้ายของคุณ ... รหัสของคุณจะต้องแสดงว่ามันต้องใช้อินพุตและให้เอาต์พุต รหัสจะต้องรักษาอักษรตัวใหญ่อื่น ๆ ที่มีการป้อนข้อมูล ดังนั้น eCommerce and eBusiness are cool, don't you agree, Richard III? จะถูกแสดงผลเป็น ECommerce And EBusiness Are Cool, Don't You Agree, Richard III? บางคนอาจจะคิดว่า "ง่ายฉันจะใช้ regex!" และการใช้ regex ดั้งเดิมในภาษากอล์ฟที่คุณเลือกจะมีโทษ 30 ตัวซึ่งจะถูกนำไปใช้กับการนับรหัสสุดท้ายของคุณ ปีศาจหัวเราะ "คำ" ในกรณีนี้คือสิ่งที่คั่นด้วยช่องว่าง ดังนั้นจึงpalate …

30
สตริง Interlace
ความท้าทายของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นซึ่งเมื่อได้รับความยาวเท่ากันสองสายจะทำการสลับอักขระอื่น ๆ และเอาท์พุท / ส่งคืนสตริงผลลัพธ์ตามลำดับอย่างใดอย่างหนึ่ง ตัวอย่าง "Hello," "world!" --> "Hollo!" "werld," "code" "golf" --> "codf" "gole" "happy" "angry" --> "hnpry" "aagpy" "qwerty" "dvorak" --> "qvertk" "dworay" "1, 2, 3" "a, b, c" --> "1, b, 3" "a, 2, c" "3.141592653589" "2.718281828459" --> "3.111291623489" "2.748582858559" "DJMcMayhem" "trichoplax" --> "DrMcMoylex" "tJichapham" "Doorknob" …
34 code-golf  string 

9
อัลกอริทึมการเรียงลำดับ
มี "อัลกอริทึมการเรียงลำดับ" บางครั้งเรียกว่าการเรียงลำดับสตาลินเพื่อเรียงลำดับรายการคุณเพียงแค่ลบองค์ประกอบออกจากรายการจนกว่าจะเรียงลำดับตามลำดับที่เพิ่มขึ้น ตัวอย่างเช่นรายการ [1, 2, 4, 5, 3, 6, 6] เมื่อ "เรียง" โดยใช้การเรียงลำดับสตาลินจะกลายเป็น [1, 2, 4, 5, 6, 6] ทั้งสามถูกลบเพราะมันไม่เป็นระเบียบ ตอนนี้เห็นได้ชัดว่ามีหลายวิธีในการลบองค์ประกอบเพื่อจัดเรียงรายการ ตัวอย่างเช่นรายการใด ๆ ที่มีองค์ประกอบน้อยกว่าสองรายการจะต้องเรียงลำดับดังนั้นเพียงแค่ลบองค์ประกอบมากพอที่สุ่มสี่สุ่มห้าเราสามารถเรียงลำดับรายการได้เสมอ เนื่องจากเป็นกรณีนี้เราจึงสนใจเฉพาะผลลัพธ์ที่ยาวที่สุดเท่าที่เป็นไปได้จากการเรียงลำดับของสตาลิน งานของคุณจะใช้รายการของจำนวนเต็มบวกและส่งออกความยาวของรายการเรียงลำดับ (เพิ่มขึ้น) ที่ยาวที่สุดที่สามารถมาถึงได้โดยการเอาองค์ประกอบออกจากรายการต้นฉบับ นั่นคือความยาวของรายการย่อยที่เรียงลำดับยาวที่สุด (อาจไม่ต่อเนื่องกัน) รายการที่เรียงลำดับสามารถมีองค์ประกอบเดียวกันมากกว่าหนึ่งครั้งในแถว คุณไม่จำเป็นต้องสนับสนุนรายการว่างเปล่าเว้นแต่ว่าโปรแกรมของคุณจะว่างเปล่า เกณฑ์การให้คะแนน คำตอบของคุณจะได้รับคะแนนตามความยาวของการเรียงลำดับสตาลินที่ยาวที่สุดเท่าที่จะเป็นไปได้ โปรแกรมจะถูกตีความเป็นลำดับของไบต์แทนที่จะเป็นตัวอักษรและลำดับของโปรแกรมจะเป็นแบบธรรมชาติที่เกิดขึ้นโดยการตีความจำนวนไบต์เป็นตัวเลข คะแนนต่ำกว่าดีกว่า นี่ไม่ใช่รหัสกอล์ฟ ต่อไปนี้เป็นเครื่องมือที่ไม่ซับซ้อนเพื่อช่วยให้คุณได้คะแนนคำตอบของคุณ กรณีทดสอบ [1, 2, 4, 5, 3, 6, 6] -> 6 [19, …

24
จำนวนสามารถแบ่งออกเป็นพลังของ 2?
เมื่อวานขณะที่เล่นกับลูกของฉันฉันสังเกตเห็นตัวเลขในรถไฟของเล่นของเขา: เรามีที่สามารถแบ่งออกเป็นหรือ4281428142814−2−8−14−2−8−14-2-8-122-21-23-2022-21-23-202^2-2^1-2^3-2^0 ความท้าทายง่ายๆ: ให้ค่าที่ไม่ใช่ค่าลบเป็นอินพุตคืนค่าความจริงที่สอดคล้องกันและค่าเท็จที่แสดงว่าสตริงแทนตัวเลขหรือไม่ (ในฐาน 10 และไม่มีเลขศูนย์นำหน้า) สามารถแบ่งออกเป็นตัวเลขที่เป็นพลังของ 2 . ตัวอย่าง: 4281 truthy (4-2-8-1) 164 truthy (16-4 or 1-64) 8192 truthy (the number itself is a power of 2) 81024 truthy (8-1024 or 8-1-02-4) 101 truthy (1-01) 0 falsey (0 cannot be represented as 2^x for any x) 1 truthy …

21
สตริงย่อยที่ไม่ซ้ำที่ยาวที่สุด
รับสตริงเป็นอินพุตค้นหาสตริงย่อยต่อเนื่องที่ยาวที่สุดที่ไม่มีอักขระใด ๆ สองครั้งหรือมากกว่า หากมีสตริงย่อยหลายรายการคุณอาจส่งออกอย่างใดอย่างหนึ่ง คุณอาจสมมติว่าอินพุตอยู่ในช่วง ASCII ที่พิมพ์ได้หากคุณต้องการ เกณฑ์การให้คะแนน คำตอบจะถูกจัดอันดับโดยความยาวของสตริงย่อยที่ไม่ซ้ำกันที่ยาวที่สุดของพวกเขาเองแล้วตามด้วยความยาวทั้งหมด คะแนนที่ต่ำกว่าจะดีกว่าสำหรับทั้งสองเกณฑ์ ขึ้นอยู่กับภาษานี้อาจจะรู้สึกเหมือนเป็นความท้าทายของนักกอล์ฟที่มีข้อ จำกัด เกี่ยวกับแหล่งที่มา เรื่องขี้ปะติ๋ว ในบางภาษาที่ทำคะแนนได้1, x (lenguage) หรือ2, x (flak-Brain และ tarpits turing อื่น ๆ ) นั้นค่อนข้างง่าย ฉันสนุกมากที่ได้คะแนน 2 ใน Haskell ดังนั้นฉันขอแนะนำให้คุณค้นหาภาษาที่งานนี้สนุก กรณีทดสอบ "Good morning, Green orb!" -> "ing, Gre" "fffffffffff" -> "f" "oiiiiioiiii" -> "io", "oi" "1234567890" -> "1234567890" …

30
Flippign Lettesr Aroudn
ในการแชทที่เรามักจะรวดเร็ว typers และไม่ได้จริงๆมองไปที่คำสั่งของตัวอักษรก่อนโพสต์ข้อความ เนื่องจากเราขี้เกียจเราจำเป็นต้องมีโปรแกรมที่แลกเปลี่ยนตัวอักษรสองตัวสุดท้ายในคำของเราโดยอัตโนมัติ แต่เนื่องจากเราไม่ต้องการตอบช้าเกินไปรหัสต้องสั้น งานของคุณถ้าคุณต้องการที่จะยอมรับมันคือการเขียนโปรแกรมที่พลิกตัวอักษรสองตัวสุดท้ายของแต่ละคำในสตริงที่กำหนด (ดังนั้นคำThanskจะเปลี่ยนเป็นThanks) คำเป็นลำดับของสองคนหรือมากกว่าตัวอักษรในตัวอักษรภาษาอังกฤษที่คั่นด้วยเดี่ยวพื้นที่ สตริง / รายการตัวละครที่คุณได้รับจากการป้อนข้อมูลนั้นรับประกันว่าจะมีตัวอักษรและช่องว่างเท่านั้น (ASCII [97 - 122], [65 - 90] และ 32) คุณสามารถรับอินพุตและให้เอาต์พุตผ่านวิธีมาตรฐานใด ๆในภาษาการเขียนโปรแกรมใด ๆในขณะที่รับทราบว่าช่องโหว่เหล่านี้เป็นสิ่งต้องห้ามตามค่าเริ่มต้น เอาต์พุตอาจมีหนึ่งช่องว่างต่อท้ายและ / หรือขึ้นบรรทัดใหม่หนึ่งบรรทัด ข้อมูลที่ป้อนจะมีคำศัพท์อยู่เสมอ (และช่องว่างที่เกี่ยวข้อง) และจะประกอบด้วยคำอย่างน้อยหนึ่งคำ นี่คือรหัสกอล์ฟดังนั้นการส่งสั้นที่สุด (คะแนนเป็นไบต์) ในแต่ละภาษาชนะ! กรณีทดสอบ โปรดทราบว่าสตริงนั้นล้อมรอบด้วยเครื่องหมายคำพูดเพื่อให้สามารถอ่านได้ อินพุต -> เอาท์พุท "Thansk" -> "ขอบคุณ" "Youer welcoem" -> "ยินดีต้อนรับคุณ" "นี่คือแอปเปิ้ล" -> "Thsi si na appel" …
33 code-golf  string 

28
มันเป็นคำที่แข็งแกร่ง?
พวกเขาพูดว่าhateเป็นคำที่หนักแน่น ฉันอยากรู้ว่าทำไมฉันจึงดูคำนี้ดี ฉันสังเกตว่าพยัญชนะทุกตัวมีสระอยู่หลังนั้น นั่นทำให้ฉันดูค่อนข้างแข็งแกร่งดังนั้นฉันจึงตัดสินใจว่านั่นคือสิ่งที่ทำให้คำมีความแข็งแกร่ง ฉันต้องการคำศัพท์ที่แรงกว่านี้ดังนั้นฉันต้องการโปรแกรมสำหรับมัน! การค้นหาคำที่แข็งแกร่ง คำที่แข็งแกร่งคือคำที่ทุก ๆ พยัญชนะ (ตัวอักษรในชุดBCDFGHJKLMNPQRSTVWXZ) ตามด้วยสระ (ตัวอักษรในชุดAEIOUY) แค่นั้นแหละ. ไม่มีอะไรอื่นที่สำคัญ หากคำเริ่มต้นด้วยเสียงสระคุณไม่ต้องกังวลเกี่ยวกับตัวอักษรใด ๆ ก่อนที่จะมีพยัญชนะตัวแรก หากคำนั้นไม่มีพยัญชนะอยู่เลยมันก็เป็นคำที่แข็งแกร่งโดยอัตโนมัติ! ตัวอย่างบางส่วนของคำพูดที่แข็งแกร่งagate, และhate ยังคงเป็นคำที่แข็งแกร่งเพราะแม้ว่ามันจะเริ่มต้นด้วยเสียงสระพยัญชนะทุกตัวยังคงตามด้วยเสียงสระ เป็นคำที่แข็งแกร่งเพราะไม่มีพยัญชนะyouagateyou ไม่มีการจำกัดความยาวของคำศัพท์ที่เข้มงวด ความท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่รับสตริงที่ไม่ว่างเปล่าเป็นอินพุตและส่งออกค่าจริงถ้าเป็นคำที่แรงหรือค่าเท็จหากไม่ได้ ชี้แจง คุณอาจตัดสินใจรับอินพุตเป็นตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่ ระบุว่าในคำตอบของคุณ คำพูดจะไม่มีเครื่องหมายวรรคตอนใด ๆ ABCDEFGHIJKLMNOPQRSTUVWXYZพวกเขาจะประกอบด้วยตัวอักษรธรรมดาในชุด แทนที่จะเป็นค่าจริงและเท็จคุณอาจเลือกค่าที่แตกต่างและสอดคล้องกันสองค่าเพื่อส่งกลับค่าจริงและเท็จ หากคุณทำเช่นนี้ระบุค่าที่คุณเลือกในคำตอบของคุณ คุณอาจส่งออกค่าเท็จสำหรับคำที่แข็งแกร่งและเป็นความจริงสำหรับคำที่ไม่แข็งแกร่ง กรณีทดสอบ Input -> Output hate -> true love -> true popularize -> true academy -> true …

13
สุขสันต์วันเกิด Raffaele Cecco!
Raffaele Ceccoเป็นโปรแกรมที่ผลิตบางส่วนของที่ดีที่สุดวิดีโอเกมสำหรับZX สเปกตรัมคอมพิวเตอร์ในช่วงปลายทศวรรษที่แปดสิบ ท่ามกลางคนอื่น ๆ เขาพัฒนาสะเทือนใจCybernoidและExolon Raffaele จะเปลี่ยน 50 เมื่อ 10 พฤษภาคม 2017 ความท้าทายนี้เป็นเครื่องบรรณาการเล็กน้อยสำหรับเขาในช่วงเวลาแห่งความสุขที่พวกเราหลายคนใช้เวลาเล่นเกมที่ยอดเยี่ยมเหล่านั้นและเพื่อเป็นแรงบันดาลใจที่พวกเขานำมา ความท้าทาย จุดประสงค์คือการผลิตกระโจมสี่เหลี่ยมที่ได้รับแรงบันดาลใจจากสิ่งที่เห็นในหน้าจอเมนูหลักของ Cybernoid แต่เป็นศิลปะ ASCII โดยเฉพาะอย่างยิ่งสตริง"Happy birthday Raffaele Cecco "(หมายเหตุช่องว่างสุดท้าย) จะแสดงการหมุนไปตามขอบของสี่เหลี่ยม 12 × 5 โดยมีเวลาหยุดชั่วคราวระหว่างสแน็ปช็อตอย่างต่อเนื่อง ตัวอย่างเช่นสมมติว่าข้อความแสดงตามเข็มนาฬิกาและหมุนทวนเข็มนาฬิกา (ดูตัวเลือกด้านล่าง) นี่คือภาพรวมสามภาพติดต่อกันของปะรำสี่เหลี่ยม: Happy birthd a o y c ceC eleaffaR แล้วก็ appy birthda H y o R cceC eleaffa แล้วก็ …

30
ลบอักขระที่ดัชนีที่ระบุ
(แรงบันดาลใจอย่างมากจากองค์ประกอบของสตริงที่ดัชนีที่ระบุ ) กำหนดสตริงsและจำนวนเต็มnแทนดัชนีในsเอาท์พุทที่sมีตัวละครที่nตำแหน่ง -th ลบออก 0-indexing และ 1-indexing ได้รับอนุญาต 0 การจัดทำดัชนี, จะไม่เป็นลบและน้อยกว่าความยาวของns สำหรับ 1 การจัดทำดัชนีจะเป็นบวกและน้อยกว่าหรือเท่ากับความยาวของns sจะประกอบด้วยอักขระ ASCII ที่พิมพ์ได้เท่านั้น ( \x20-\x7Eหรือ ผ่าน~) อนุญาตอินพุต / เอาท์พุตที่สมเหตุสมผล ช่องโหว่มาตรฐานใช้ ทดสอบ (ดัชนี 0): n s output 0 "abcde" "bcde" 1 "abcde" "acde" 2 "a != b" "a = b" 3 "+-*/" "+-*" 4 "1234.5" "12345" …
33 code-golf  string 

13
ค้นหารูปแบบที่ดีที่สุด
รับสายsประกอบด้วยตัวอักษรตัวพิมพ์เล็กเช่น aabaaababbbbaaba และเป็นจำนวนเต็มบวกnเช่น4, เอาท์พุท length- nสตริงทีดังกล่าวว่าเมื่อเสื้อซ้ำแล้วซ้ำอีกกับความยาวของsพวกเขามีตัวอักษรเป็นจำนวนมากในการร่วมกันเป็นไปได้ สำหรับตัวอย่างที่กำหนดเอาต์พุตที่ดีที่สุดจะเป็นaabaเพราะมีสิบสามตัวอักษรร่วมกันกับสตริงเป้าหมาย: s: aabaaababbbbaaba t: aabaaabaaabaaaba (aaba) ^^^^^^^^ ^ ^^^^ และไม่มีความเป็นไปได้ทีมีมากขึ้น อย่างไรก็ตามaaaaaabมีสองเอาต์พุตที่เป็นไปได้: aaaaและaabaแต่ละรายการมี 6 ตัวอักษรร่วมกันกับสตริงเป้าหมาย: s: aaaaaab t: aaaaaaaa (aaaa) ^^^^^^ s: aaaaaab t: aabaaaba (aaba) ^^ ^^^^ อย่างใดอย่างหนึ่งaaaaหรือaabaสามารถเอาท์พุทหรือทั้งสองอย่างถ้าคุณต้องการ โปรดทราบว่าsจะไม่เคยซ้ำ; การลากaในค่าทั้งสองซ้ำของtจะถูกละเว้น กรณีทดสอบ Inputs -> Valid outputs 1 a -> a 1 aa -> a 2 …
33 code-golf  string 

24
ยกเลิกการทำซ้ำสตริง
บทนำ ลองสังเกตสตริงต่อไปนี้: AABBCCDDEFFGG คุณจะเห็นว่าจดหมายทุกฉบับได้รับการซ้ำEยกเว้นตัวอักษร นั่นหมายความว่าตัวอักษรที่Eได้รับde-ซ้ำ ดังนั้นสิ่งเดียวที่เราต้องทำที่นี่คือการย้อนกระบวนการนั้นซึ่งทำให้เราไม่ได้ทำซ้ำสตริงต่อไปนี้: AABBCCDDEEFFGG ลองตัวอย่างที่ยากกว่านี้: AAAABBBCCCCDD คุณจะเห็นว่ามีจำนวนติดต่อกันไม่สม่ำเสมอBดังนั้นหมายความว่าหนึ่งในBBนั้นถูกทำซ้ำจากสตริงเดิม เราจำเป็นต้องยกเลิกการคัดลอกจดหมายฉบับนี้ซึ่งทำให้เรา: AAAABBBBCCCCDD ความท้าทาย รับสตริงที่ไม่ซ้ำกันที่ไม่ว่างประกอบด้วยอักขระที่เป็นตัวอักษรเท่านั้น (ไม่ว่าจะเป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กเท่านั้น) ให้ส่งคืนสตริงที่ไม่ซ้ำกัน คุณสามารถสันนิษฐานได้ว่าจะมีอักขระที่ซ้ำกันอย่างน้อยหนึ่งตัวในสตริงเสมอ กรณีทดสอบ AAABBBCCCCDDDD --> AAAABBBBCCCCDDDD HEY --> HHEEYY AAAAAAA --> AAAAAAAA N --> NN OOQQO --> OOQQOO ABBB --> AABBBB ABBA --> AABBAA นี่คือรหัสกอล์ฟดังนั้นการส่งที่ถูกต้องสั้นที่สุดในหน่วยไบต์ชนะ!
33 code-golf  string 

21
จำลองการกดแป้น
งานของคุณคือการจำลองการกดแป้นที่ผู้ใช้พิมพ์ อินพุต อาเรย์สตริงหรือสตริงที่มีตัวคั่นที่คุณเลือก (นอกช่วง 32-126) ที่มี 'การกดแป้นพิมพ์' อย่างน้อยหนึ่งรายการ อาร์เรย์นี้จะมีสตริงสองประเภทเท่านั้น: การกดแป้นพิมพ์แบบพาสซีฟ (ตัวอักษรเดียว) และคำสั่ง (ตัวอักษรภายในเครื่องหมายวงเล็บ[ ]) การกดแป้นเรื่อย ๆ รหัสอักขระ ASCII [32-126] คำสั่ง: [B] : backspace (ลบอักขระตัวสุดท้ายที่เพิ่มหากมี) [C] : คัดลอกทุกสิ่งที่เขียนไปแล้ว [D] : ลบสิ่งที่เขียนทั้งหมด [P] : วางสิ่งที่คัดลอกมา เอาท์พุต สตริงที่ผลิตโดยการกดแป้น ตัวอย่าง ['H', 'e', 'l', 'l', 'o'] -> 'Hello' ['H', 'e', 'l', 'l', 'o', ' ', …
33 code-golf  string 

24
Loeschian หมายเลขนี้หรือไม่
จำนวนเต็มบวกkคือจำนวน Loeschianถ้า kสามารถแสดงเป็นi*i + j*j + i*jสำหรับi, jจำนวนเต็ม ตัวอย่างเช่นหมายเลข Loeschian บวกแรกคือ: 1( i=1, j=0); 3( i=j=1); 4( i=2, j=0); 7( i=2, j=1); 9( i=-3, j=3); ... โปรดทราบว่าi, jหารับkไม่ได้ที่ไม่ซ้ำกัน ตัวอย่างเช่น9สามารถสร้างด้วยi=3, j=0. ลักษณะอื่น ๆ ที่เทียบเท่าของตัวเลขเหล่านี้คือ: kสามารถแสดงเป็นi*i + j*j + i*jสำหรับi, jintegers เชิงลบ (สำหรับคู่ของจำนวนเต็มแต่ละi, jมีคู่ของ integers เชิงลบที่ทำให้เดียวกันk) มีชุดของkรูปหกเหลี่ยมที่ต่อเนื่องกันซึ่งก่อให้เกิด tesselation บนตารางหกเหลี่ยม (ดูภาพประกอบสำหรับk = 4และสำหรับk …
33 code-golf  math  number  number-theory  decision-problem  code-golf  kolmogorov-complexity  code-golf  sequence  code-golf  path-finding  chess  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  math  arithmetic  code-golf  code-golf  number  code-golf  geometry  code-golf  math  code-golf  code-golf  kolmogorov-complexity  alphabet  code-golf  regular-expression  hexagonal-grid  king-of-the-hill  path-finding  java  code-golf  string  sorting  code-golf  string  grid  code-challenge  compression  code-golf  random  code-golf  sequence  arithmetic  code-golf  number  grid  tiling  code-golf  tips  code-golf  sequence  number-theory  recursion  code-golf  string  grid  code-golf  math  number  combinatorics  permutations  string  code-challenge  code-golf  sequence  number-theory  subsequence 

5
ทำฉากสี่เหลี่ยม
โปรแกรมเมอร์ทุกคนรู้ว่าวงเล็บ[]{}()<>สนุกมาก เพื่อทำให้ความสนุกทวีความรุนแรงมากขึ้นกลุ่มของวงเล็บสานแบบสานสามารถเปลี่ยนเป็นไดอะแกรมน่ารักและคลุมเครือ [{][<(]})>(())สมมติว่าคุณมีสตริงที่มีวงเล็บสมดุลเช่น ขั้นตอนที่หนึ่งคือการหมุนสตริง 45 องศาตามเข็มนาฬิกา (ใน Mathematica สามารถทำได้เกือบRotate[ur_string,-pi/4]) นี่คือผลลัพธ์ของขั้นตอนแรก: [ { ] [ < ( ] } ) > ( ( ) ) ถัดไปเพิ่มช่องว่างในแนวทแยงระหว่างตัวละครแต่ละตัว [ { ] [ < ( ] } ) > ( ( ) ) จากนั้นเริ่มต้นด้วยวงเล็บปีกกาซ้ายสุดและวาดสี่เหลี่ยมระหว่างมันและคู่ของมันในอาชญากรรม +---+ | | | { | | | +---+ [ …

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