คำถามติดแท็ก code-golf

Code-golf เป็นการแข่งขันเพื่อแก้ไขปัญหาเฉพาะในส่วนที่น้อยที่สุดของซอร์สโค้ด

23
ตัวอักษรตัวเลขเดียวกัน
ตัวอักษรของคำต้องการความเป็นธรรม พวกเขาตัดสินใจที่จะปรากฏจำนวนครั้งเดียวกันในประโยคเท่ากัน ตัวอย่าง: Priorities จะกลายเป็น: Ppprrioooritttieeesss ตัวอักษรแต่ละตัวปรากฏขึ้น 3 ครั้งตามตัวอักษรที่พบบ่อยที่สุดคือiปรากฏขึ้น 3 ครั้ง มันไม่สำคัญว่าคุณจะใส่ตัวอักษรที่ซ้ำไปซ้ำมานานเท่าไร เช่น: Pppriooorritttieeesss ก็โอเค (ตัวอักษร 'r') Ppprioororitttieeesss ไม่เป็นไร (ตัวอักษร 'r') ตัวอย่างอื่น: invoice จะกลายเป็น: innvvooiccee ตัวอย่างอื่น: Remittance Advice จะกลายเป็น: Rrremmmiitttaannncce Adddvvvice ช่องว่างเครื่องหมายจุลภาคเครื่องหมายคำถามใบเสนอราคา ฯลฯ ไม่ถือเป็นตัวอักษรสำหรับความท้าทายนี้ จำเป็นต้องพิจารณา [a-zA-Z] เท่านั้น เพียงครั้งเดียวที่มีพื้นที่เพียงพอและคำสั่งของตัวอักษรควรจะยังคงเหมือนเดิม การใช้อักษรตัวพิมพ์ใหญ่ไม่สำคัญตัวพิมพ์ใหญ่และตัวพิมพ์เล็กจะนับเป็นตัวอักษรเดียวกัน นั่นคือ: Pipมี 2 'P และ 1 'ฉัน' Piipดังนั้นมันจะกลายเป็น มันเป็นตัวพิมพ์เล็กและใหญ่กรณีที่สามารถอยู่ในรูปแบบใด ๆ Piip=piip=piiP=PiiP …

18
ลำดับการกระโดด
พิจารณาลำดับต่อไปนี้: 0 1 3 2 5 4 8 6 7 12 9 10 11 17 13 14 15 16 23 ... ดูลวดลายน้อยลงใช่มั้ย นี่คือวิธีการทำงาน เริ่มต้นด้วยการ0กระโดดขึ้นnจำนวนเต็มด้วยราคาเริ่มต้นที่n 1นั่นคือหมายเลขถัดไปในลำดับ จากนั้นจึงเพิ่มหมายเลขใด ๆ ที่ "ข้าม" และที่ยังไม่เคยเห็นมาก่อน จากนั้นเพิ่มnและกระโดดจากหมายเลขสุดท้ายต่อท้าย ทำซ้ำรูปแบบนี้ ดังนั้นสำหรับตัวอย่างเช่นเมื่อเราไปถึงเราจะอยู่ที่11 n=5เราเพิ่มnเป็นn=6กระโดดขึ้น17แล้วผนวกต่อ13 14 15 16เนื่องจากสิ่งที่ยังไม่เห็น กระโดดต่อไปของเราคือเพื่อให้องค์ประกอบในลำดับถัดไปคือn=723 ความท้าทาย รับอินพุตxส่งออกxเทอมที่ของลำดับนี้xเทอมแรกของลำดับหรือสร้างรายการอนันต์ของเทอมของลำดับ คุณสามารถเลือก 0- หรือ 1 การจัดทำดัชนี I / O และกฎ อินพุตและเอาต์พุตจะได้รับโดยวิธีการที่สะดวกใด …

3
โปรแกรม Swap แบ่งครึ่งเพื่อทดสอบตัวหาร
สี่จำนวนเต็มดังนี้ ในการท้าทายนี้คุณจะทดสอบคุณสมบัติที่แตกต่างกันสี่ค่าของจำนวนเต็มบวกที่กำหนดโดยลำดับต่อไปนี้ จำนวนเต็มบวกNคือ ที่สมบูรณ์แบบ ( OEIS A000396 ) ถ้าผลรวมของตัวหารที่เหมาะสมของNเท่ากับN ลำดับเริ่มต้นด้วย 6, 28, 496, 8128, 33550336, 8589869056, 137438691328, 2305843008139952128 ... refactorable ( OEIS A033950 ) ถ้าจำนวนของตัวหารของNเป็นตัวหารของN ลำดับเริ่มต้นด้วย 1, 2, 8, 9, 12, 18, 24, 36, 40, 56, 60, 72, 80, 84, 88, 96, 104, 108, 128 ... ปฏิบัติ ( OEIS A005153 …

1
เขียนเครื่องขยายเสียงรูปร่าง
บทนำ ฉันมีหิน ASCII มากมาย พวกเขาถูกสร้างขึ้นด้วยขีดกลาง, ท่อ, Vs, คาเร็ต, วงเล็บมุม, สแลชและช่องว่าง ตัวอย่าง: /--\ | | | | \--/ ฉันต้องการที่จะกัดกร่อนพวกเขาเช่นนี้: /\ / \ \ / \/ ทุกมุมกลายเป็นวงกว้างขึ้น ตัวอย่างที่ซับซ้อนมากขึ้น: /----\ | \------\ | | | | \------------/ /--\ / \------\ | \ \ / \----------/ หลังจากการกัดเซาะอีกครั้งก็จะกลายเป็น /\ / \------\ < \ \ / …

9
สะเก็ดที่สาม!
ความท้าทายนี้ถูกโพสต์เป็นส่วนหนึ่งของความท้าทาย LotM เมษายน 2018 Brain-Flakเป็นภาษา turing-tarpit ซึ่งได้รับชื่อเสียงอย่างมากใน PPCG ความทรงจำของภาษานั้นประกอบด้วยสองกอง แต่มีการค้นพบสแต็กที่สามที่ "ซ่อน" โดยWh e at Wizardซึ่งนำไปสู่วิธีคิดใหม่ที่น่าสนใจในการคิดโปรแกรม Brain-Flak แล้วจะให้การมองเห็นที่ดีกว่านั้นในสแต็คที่สามได้อย่างไร มาสร้างภาษาที่สแต็กที่สามมีการจดจำที่สมควรได้รับ! นี่ฉันนำเสนอคุณสาม Flak ภาษา ใน Third-Flak มีเพียงหนึ่งกองที่เรียกว่ากองที่สาม ผู้ประกอบการทำงานในกองที่สามในลักษณะเดียวกับที่พวกเขาทำใน Brain-Flak แต่ที่นี่ไม่มี[], {}, <>nilads และไม่มี{...}monad (เพื่อให้ตัวละครเท่านั้นที่ยอมรับในโปรแกรมที่สาม Flak มี()[]<>) นี่คือสิ่งที่ผู้ประกอบการแต่ละรายทำ (ตัวอย่างจะได้รับการแทนสแต็กที่สามพร้อมกับรายการที่องค์ประกอบสุดท้ายคือด้านบนของสแต็ก): ()เป็นโอเปอเรเตอร์สองอักขระเพียงตัวเดียวใน Third-Flak เพิ่มด้านบนของสแต็กที่สามโดย 1 ตัวอย่าง: [1,2,3]→[1,2,4] (, [, <: ทุกวงเล็บเปิดที่ไม่ได้รับการคุ้มครองโดยกรณีก่อนหน้านี้ดัน0ไปกองที่สาม ตัวอย่าง: [1,2,3]→[1,2,3,0] )ดึงองค์ประกอบสองอย่างจากสแต็กที่สามและผลักกลับผลรวมของพวกเขา ตัวอย่าง: [1,2,3]→[1,5] …

19
ตรวจจับข้อความสี่เหลี่ยมด้วยรหัสสี่เหลี่ยม
กำหนดสตริงของข้อความ ASCII ที่พิมพ์ได้ (รวมถึงการขึ้นบรรทัดใหม่และช่องว่าง) ที่มีอักขระอย่างน้อยหนึ่งตัวที่ไม่ใช่การขึ้นบรรทัดใหม่หรือเว้นวรรคให้ส่งออกค่าความจริงหากสตริงเป็นรูปสี่เหลี่ยมผืนผ้าและค่าเท็จ นอกจากนี้รหัสแหล่งที่มาสำหรับการแก้ปัญหาของคุณจะต้องเป็นรูปสี่เหลี่ยมผืนผ้า สตริงเป็นรูปสี่เหลี่ยมหากตรงตามเงื่อนไขต่อไปนี้ทั้งหมด: บรรทัดแรกและบรรทัดสุดท้ายไม่มีช่องว่าง อักขระตัวแรกและตัวสุดท้ายของแต่ละบรรทัดไม่ใช่ช่องว่าง ทุกบรรทัดมีจำนวนอักขระเท่ากัน ตัวอย่างเช่นข้อความต่อไปนี้เป็นรูปสี่เหลี่ยมผืนผ้า: abcd e fg hijk อย่างไรก็ตามข้อความนี้ไม่ใช่รูปสี่เหลี่ยมผืนผ้า (ต้องการ # 3): 1234 567 8900 กรณีทดสอบ Truthy: sdghajksfg asdf jkl; qwerty u i op zxcvbn 1234 5 6 7890 abcd e fg hijk Falsey: a b c 123 456 7 9 12 345 …

30
กำลังหาใช่หรือไม่?
หลังจากป้อนสตริง [ความยาว 1-20] มีเพียงตัวอักษรyสำหรับใช่และnสำหรับไม่ใช่โปรแกรมของคุณควรแสดงผลลัพธ์ (y หรือ n) อินพุตตัวอย่าง: yynynynnyจะส่งออก y ผลลัพธ์ถูกกำหนดโดยการรวมค่า y และ n ด้วยวิธีต่อไปนี้: y es และn o เท่ากับn o y es และy es เท่ากับy es n o และn o เท่ากับy es หากสตริงมีอักขระมากกว่า 2 ตัว (น่าจะเป็น ... ) การคำนวณจะมีลักษณะเหมือนกัน ตัวอย่าง: y es และy es และn o เท่ากับn o (เพราะไม่มีการรวมกับครั้งแรกใช่เป็นไม่จากนั้นไม่มีและใช่เหลือและสิ่งเดียวกันเกิดขึ้นอีกครั้ง) …

13
Embiggen ข้อมูลของคุณ
นี่เป็นสิ่งที่คล้ายกับรายการที่มีฝุ่นปกคลุมแต่ฉันหวังว่าการหมุนของฉันจะทำให้มีลักษณะเฉพาะ ไม่พบสิ่งใดที่ห้ามปรามฉันในการโพสต์สิ่งนี้ แต่มีทะเลอยู่ตรงนั้น อย่างไรก็ตาม! ความท้าทาย: รหัสของคุณได้รับสตริงอักขระ มันแปลงสิ่งนี้ให้เป็นรูปแบบ ASCII-art ของสตริงเดียวกัน แต่มีการจับ การแปลงอินพุต อักขระที่จะสนับสนุนเท่านั้นคือ AZ และ 0-9 อักษรตัวพิมพ์เล็กจะถูกแปลงเป็นตัวพิมพ์ใหญ่ สิ่งอื่นใดถูกลบอย่างเงียบ ๆ การวาดตัวละคร "พิกเซล" ของแบบอักษรขยายแต่ละอันจะถูกดึงออกมาจากสตริงอินพุต พิกเซลของ n'th เท่ากับอักขระ n'th ในสตริงอินพุต ถ้า n มากกว่าความยาวของสตริงอินพุตให้ล้อมรอบกลับไปที่จุดเริ่มต้น ตัวอักษรแต่ละตัวจะถูกวาดจากซ้ายไปขวา, จากบนลงล่าง ตัวอักษรที่ตามมารับดัชนี "ตัวละครพิกเซล" ของพวกเขาจากที่ตัวอักษรตัวสุดท้ายทิ้งไว้ (เช่นกับความยาวของการป้อน 10 ถ้าตัวอักษรตัวแรกมี 9 พิกเซลพิกเซลตัวแรกของตัวอักษรที่สองจะถูกวาดด้วยตัวอักษรที่ 10 ตัวที่สอง พิกเซลจะถูกวาดด้วยอักขระอินพุต 1) ตัวอักษรแต่ละตัวถูกวาดในตาราง 5x5 เต็มไปด้วยช่องว่าง คุณสามารถค้นหาแบบอักษรที่คุณต้องการใช้แสดงผลล่วงหน้าสำหรับคุณในpastebin นี้หรือเพิ่มเติมลงในโพสต์นี้ ตัวอักษรทุกตัวจะถูกวาดในบรรทัดเดียวกันดังนั้นจำนวนตัวแบ่งบรรทัดทั้งหมดในเอาต์พุตของคุณจะเป็น 4 …

23
ยืนยันชื่อไฟล์ใหม่
ที่รันไทม์ให้พร้อมต์บรรทัดอินพุตจนกว่าผู้ใช้อินพุตไม่ใช่ชื่อของไฟล์หรือไดเร็กทอรีที่มีอยู่หรือไอเท็มระบบไฟล์อื่นที่สัมพันธ์กับไดเร็กทอรีการทำงานปัจจุบัน จากนั้นส่งคืน / พิมพ์ชื่อไฟล์ที่ป้อนล่าสุด คุณอาจสมมติว่าอินพุตของผู้ใช้ทั้งหมดจะเป็นชื่อไฟล์ที่ถูกต้อง รหัสหลอก 1 myform = new form("GUI") myform.mytxt = new editfield("") myform.ok = new button("OK") repeat waitfor(myform.ok,"click") until not filesystem.exists(myform.mytxt.content) return(myform.mytxt.content) รหัสหลอก 2 LET TEXT = "." WHILE HASFILE(TEXT) DO TEXT = PROMPT("") ENDWHILE RETURN TEXT ตัวอย่างการป้อนข้อมูลของผู้ใช้ซึ่งจะทำให้เกิดการแจ้งเตือนอีกครั้งเมื่ออยู่ใน TIO . .. .env.tio / /bin/[ /lost+found ตัวอย่างของการป้อนข้อมูลของผู้ใช้ซึ่งจะกลับมาเมื่อ TIO: …

30
ค้นหา Squarish Root
เขียนโค้ดที่เมื่อได้รับเป็นจำนวนบวกxxxเป็น input ออกผลลัพธ์เป็นตัวหารบวกที่ใหญ่ที่สุดของxxxน้อยกว่าหรือเท่ากับรากที่สองของxxxx ในคำอื่น ๆ หาที่ใหญ่ที่สุดn>0n>0n > 0เช่นนั้น ∃m≥n:m⋅n=x∃m≥n:m⋅n=x\exists m\geq n:m\cdot n=x (มีอยู่mmmมากกว่าหรือเท่ากับnnnเช่นที่mmmครั้งnnnคือxxx ) ตัวอย่างเช่นถ้าใส่ได้121212ตัวหารเป็น111 , 222 , 333 , 444 , 666และ12 1 , 2และ3ทั้งหมดคูณด้วยตัวเลขขนาดใหญ่ที่จะได้รับ12แต่3เป็นที่ใหญ่ที่สุดเพื่อให้เรากลับ3121212111222333121212333333 นี่คือรหัสกอล์ฟดังนั้นคำตอบจะได้คะแนนเป็นไบต์ด้วยจำนวนไบต์น้อยกว่าซึ่งถือว่าเป็นคะแนนที่ดีกว่า กรณีทดสอบ (1,1) (2,1) (3,1) (4,2) (5,1) (6,2) (7,1) (8,2) (9,3) (10,2) (11,1) (12,3) (13,1) (14,2) (15,3) (16,4) (17,1) (18,3) (19,1) (20,4) (21,3) (22,2) …

5
การเต้นรำในหลายมิติ
ท้าทาย กำหนดnอาร์เรย์ -dimensional ของจำนวนเต็มและการเรียงลำดับของnจำนวนธรรมชาติแรกให้เปลี่ยนขนาดอาร์เรย์ตามลำดับ รายละเอียด ความท้าทายนี้เป็นแรงบันดาลใจ permuteMATLABs การสาธิต การเรียงสับเปลี่ยนจะได้รับเป็นรายการจำนวนเต็มเช่น[1,3,2]หมายถึง 1 ได้รับการแมปกับ 1, 2 ได้รับการแมปกับ 3 และ 3 ได้รับการแมปที่ 2 (นี่iคือรายการที่ th คือค่าที่iได้รับการแมป) แต่คุณสามารถใช้รูปแบบอื่นที่สะดวกเช่นรอบหรือฟังก์ชั่น ถ้าสะดวกยิ่งขึ้นคุณสามารถใช้การจัดทำดัชนีแบบ 0 อาร์เรย์สามารถสันนิษฐานได้ว่าเป็น "รูปสี่เหลี่ยมผืนผ้า" เต็มรูปแบบ - m1 x m2 x ... x mn(เช่นคุณสามารถสมมติได้ว่ามันไม่ได้เป็นขรุขระ / ขรุขระ ) คุณสามารถสันนิษฐานได้ว่าnไม่ใหญ่เกินไปเนื่องจากหลายภาษามีข้อ จำกัด ด้านขนาดในอาร์เรย์ซ้อน หากภาษาของคุณไม่รองรับอาเรย์หลายมิติคุณสามารถใช้สตริงที่แทนอาร์เรย์เป็นอินพุทได้ ตัวอย่าง nอาร์เรย์มิติใด ๆ ที่มีการเปลี่ยนค่าตัวตน[1,2,3,...,n]จะไม่มีการเปลี่ยนแปลง อาร์เรย์[[10,20,30],[40,50,60]]ที่มีการเปลี่ยนลําดับได้รับการแมปไป[2,1][[10,40],[20,50],[30,60]] อาร์เรย์[[[1,2],[3,4]],[[5,6],[7,8]]]ที่มีการเปลี่ยนลําดับได้รับการแมปไป[2,3,1][[[1,3],[5,7]],[[2,4],[6,8]]]

19
ทำให้โปรแกรมสามเหลี่ยมเป็นสิ่งที่ถูกต้อง
Triangularityเป็น esolang ใหม่ที่พัฒนาโดยMr. Xcoderโดยที่โครงสร้างของโค้ดต้องเป็นไปตามรูปแบบที่เฉพาะเจาะจงมาก: สำหรับnบรรทัดที่รหัสจะต้องมี2n-1ตัวอักษรของโปรแกรมอย่างแน่นอน สิ่งนี้ทำให้เกิดรูปสามเหลี่ยม / ปิรามิดโดยที่บรรทัดแรกมีอักขระเพียงตัวเดียวและส่วนที่เหลือเพิ่มขึ้นทีละ 2 แต่ละบรรทัดจะต้องมีการบุด้วย.s ที่ด้านซ้ายและขวาเช่นตัวละครที่มีศูนย์กลางอยู่ที่เส้นของพวกเขาและทุกบรรทัดจะมีความยาวเบาะเดียวกัน หากlกำหนดเป็นจำนวนบรรทัดในโปรแกรมแต่ละบรรทัดในโปรแกรมต้องมีความยาว2 * l - 1 ตัวอย่างเช่นโปรแกรมทางด้านซ้ายนั้นถูกต้อง แต่โปรแกรมทางด้านขวาไม่ใช่: Valid | Invalid | ...A... | ABCDE ..BCD.. | FGH .EFGHI. | IJKLMN JKLMNOP | OPQRS เมื่อวางในโครงสร้างที่ถูกต้องชื่อจะชัดเจน งาน งานของคุณคือการใช้สตริงบรรทัดเดียวเป็นอินพุตแทนรหัสสามเหลี่ยมและเอาท์พุทมันแปลงเป็นรหัสที่ถูกต้องตามที่อธิบายไว้ข้างต้น ข้อมูลจำเพาะสำหรับ I / O: ข้อมูลที่ป้อนจะมีอักขระอยู่ในช่วงเท่านั้น 0x20 - 0x7e ความยาวของอินพุตจะเป็นตัวเลขจตุรัสเสมอ คุณต้องใช้จุดสำหรับการขยายช่องว่างไม่ใช่อย่างอื่น คุณสามารถอินพุตและเอาต์พุตด้วยวิธีการที่ยอมรับได้ นี่คือรหัสกอล์ฟเพื่อให้โค้ดที่สั้นที่สุดเป็นไบต์ชนะ! กรณีทดสอบ …
19 code-golf  string  code-golf  combinatorics  code-golf  math  number  code-golf  matrix  code-golf  string  decision-problem  code-golf  internet  code-golf  number  number-theory  integer  expression-building  code-challenge  primes  cops-and-robbers  obfuscation  code-challenge  primes  cops-and-robbers  obfuscation  code-golf  string  balanced-string  code-golf  quine  code-generation  code-golf  matrix  code-golf  tips  c#  code-golf  ascii-art  code-golf  ascii-art  source-layout  code-golf  quine  source-layout  popularity-contest  language-design  code-golf  array-manipulation  subsequence  code-golf  matrix  math  code-challenge  game  graph-theory  atomic-code-golf  code-golf  number  integer  polynomials  equation  code-golf  array-manipulation  sorting 

21
ตัวนับไบต์ซ้ำ
งานของคุณคือการเขียนโปรแกรมที่ไม่ว่างเปล่า / ฟังก์ชั่นของการนับไบต์Lซึ่งเมื่อทำซ้ำMครั้งการตรวจสอบไม่ว่าจะเป็นในเชิงบวกให้จำนวนเต็มNเท่ากับL × M ในทางทฤษฎีคุณควรสนับสนุนจำนวนการทำซ้ำโดยพลการ (ค่าจำนวนเต็มบวกโดยพลการของM ) แต่ก็ดีถ้าเนื่องจากข้อ จำกัด ทางภาษามันไม่สามารถทำงานผ่านเกณฑ์ที่กำหนด การอ่านรหัสที่มาของโปรแกรมของคุณหรือการเข้าถึงข้อมูลเกี่ยวกับมันเป็นสิ่งต้องห้ามอย่างเคร่งครัด สำหรับการให้เอาต์พุตคุณควรเลือกค่าที่สอดคล้องกันสำหรับสถานะใดสถานะหนึ่ง (ไม่ว่าจะเป็นความจริงหรือเท็จ) และใช้เอาต์พุตอื่น ๆ ที่เป็นไปได้ (ไม่จำเป็นต้องสอดคล้องกัน) สำหรับสถานะอื่น ( การสนทนา ) คำตอบของคุณจะได้รับคะแนนตามความยาวของโปรแกรมเริ่มต้นของคุณL (เป็นไบต์) โดยที่ไบต์น้อยกว่าจะดีขึ้น ตัวอย่าง สมมติว่า (เริ่มต้น) ABCDEโปรแกรมของคุณ แล้ว: ABCDE(1 ซ้ำ) ควรตรวจสอบถ้าใส่เท่ากับ5 ABCDEABCDE(2 ซ้ำ) ควรตรวจสอบถ้าใส่เท่ากับ10 ABCDEABCDEABCDE(3 ซ้ำ) ควรตรวจสอบถ้าใส่เท่ากับ15 ฯลฯ ... คะแนนของโค้ดตัวอย่างนี้จะเป็น5เนื่องจากแหล่งเริ่มต้นมีความยาว 5 ไบต์

13
ตรวจสอบว่าองค์ประกอบที่ไม่เป็นศูนย์ทั้งหมดในเมทริกซ์เชื่อมต่อกันหรือไม่
การป้อนข้อมูล: เมทริกซ์ที่มีจำนวนเต็มในช่วง[0-9] ท้าทาย: ตรวจสอบว่าองค์ประกอบที่ไม่ใช่ศูนย์ทั้งหมดเชื่อมต่อกันในแนวตั้งและ / หรือแนวนอน เอาท์พุท: ค่า truthyถ้าทั้งหมดที่มีการเชื่อมต่อและค่า falsyถ้ามีไม่ใช่ศูนย์องค์ประกอบ / กลุ่มที่ไม่ได้เชื่อมต่อกับองค์ประกอบอื่น ๆ / กลุ่ม กรณีทดสอบ: กรณีทดสอบถูกคั่นด้วยบรรทัด กรณีทดสอบสามารถพบได้ในรูปแบบที่สะดวกกว่าได้ที่นี่ ( Kudos ถึง Dada ) ต่อไปนี้เป็นสิ่งที่เชื่อมต่อกันและควรจะคืนค่าความจริง: 0 --- 0 0 --- 1 1 1 0 0 0 --- 1 0 0 1 1 1 0 0 1 --- 0 0 0 0 …

7
เอ่อมันเป็นไฮกุหรือเปล่า?
ดังนั้นคุณต้องการสร้างไฮกุ แต่คุณไม่แน่ใจว่าเป็นไปตามกฎของพยางค์สำหรับไฮกุหรือไม่ ฉันไม่อยากจะเขียนสิ่งที่ไม่เหมาะสมเหมือนปกติดังนั้นคุณต้องทำสิ่งนี้ มาติดอยู่ที่นั่น ค้นหาไฮกุออกมาในป่า สำหรับจุดประสงค์ของการท้าทายนี้เราจะทำการตรวจสอบว่าบทกวีที่กำหนดตรงตามเกณฑ์เหล่านี้หรือไม่: มีสามบรรทัด บรรทัดแรกมี 5 พยางค์ บรรทัดที่สองมี 7 พยางค์ บรรทัดที่สามมี 5 พยางค์ แต่ละบรรทัดประกอบด้วยคำอย่างน้อยหนึ่งคำคั่นด้วยกลุ่มของช่องว่าง คำเหล่านี้ไม่จำเป็นต้องเป็นคำภาษาอังกฤษที่ถูกต้อง แต่ละคำจะถูกแบ่งออกเป็นพยางค์และจากนั้นจะนับพยางค์เหล่านั้นเพื่อนับจำนวนพยางค์ทั้งหมดของบรรทัด พยางค์มี 2 หรือ 3 ส่วน: จุดเริ่มต้นจุดสิ้นสุดและอาจอยู่ตรงกลาง แต่ละส่วนจะมีทั้งกลุ่มของ consonsants (ยังเป็นที่รู้จักพยัญชนะกลุ่มเช่นs, skหรือspl) หรือกลุ่มของสระ (เช่นi, eaหรือoui) หากจุดเริ่มต้นเป็นกลุ่มของพยัญชนะตรงกลางจะเป็นกลุ่มของเสียงสระและท้ายที่สุดจะเป็นกลุ่มของพยัญชนะ หากการเริ่มต้นเป็นกลุ่มของเสียงสระปลายจะเป็นกลุ่มของพยัญชนะและจะไม่มีตรงกลาง ยกตัวอย่างเช่นคำว่าexampleถูกสร้างขึ้นจากสามพยางค์ex, และam ไม่สิ้นสุดในขณะที่มันถูกตัดสั้นในตอนท้ายของคำpleple เป็นอีกหนึ่งตัวอย่างคำว่าsyllableยังมีสามพยางค์syll, ablและeซึ่งยังไม่เคยมีใครตอนจบ สำหรับตัวอย่างสุดท้ายหนึ่งคำwordมีหนึ่งพยางค์wordซึ่งลงท้ายด้วยกลุ่มพยัญชนะ ความท้าทาย รับสตริง, รายการของสตริง, รายการของรายการหรือรูปแบบที่เหมาะสมอื่น ๆที่เป็นตัวแทนของบทกวีที่มีอย่างน้อยหนึ่งบรรทัดพิจารณาว่ามันเป็นไปตามเกณฑ์ของไฮกุที่ระบุไว้ข้างต้นและส่งกลับผล คุณสามารถส่งคืนผลลัพธ์ในรูปแบบใด ๆ ต่อไปนี้: คุณค่าความจริงหากบทกวีเป็นไฮกุและเป็นเท็จอย่างอื่น ค่าเท็จถ้าบทกวีเป็นไฮกุและเป็นความจริงอย่างอื่น …

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