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

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

1
การนับโซ่ของคันนิงแฮม
ตัวเลขที่สำคัญทำให้ผู้คนหลงใหล 2300 ปีที่แล้ว Euclid เขียนใน "Elements" ของเขา จำนวนเฉพาะคือสิ่งที่วัดโดยหน่วยเดียว ซึ่งหมายความว่านายกสามารถหารด้วย1(หรือด้วยตัวเอง) เท่านั้น ผู้คนมักจะมองหาความสัมพันธ์ระหว่างจำนวนเฉพาะและเกิดขึ้นกับบางสิ่งที่แปลก (เช่นใน "น่าสนใจ") ตัวอย่างเช่นนายก Sophie Germainเป็นนายกpที่2*p+1สำคัญเช่นกัน นายกปลอดภัยเป็นนายกpที่(p-1)/2ยังเป็นนายกรัฐมนตรีซึ่งเป็นว่าสภาพข้างหลังของนายกโซฟีต์แชร์กแมง สิ่งเหล่านี้เกี่ยวข้องกับสิ่งที่เรากำลังมองหาในการท้าทายนี้ ห่วงโซ่คันนิงแฮมของประเภทที่เป็นชุดของจำนวนเฉพาะที่องค์ประกอบยกเว้นคนสุดท้ายทุกคนจะเป็นนายกโซฟีต์แชร์กแมงและองค์ประกอบยกเว้นคนแรกที่ทุกคนเป็นนายกปลอดภัย จำนวนขององค์ประกอบในครั้งนี้มีห่วงโซ่ที่เรียกว่ามันยาว ซึ่งหมายความว่าเราเริ่มต้นด้วยการลากและคำนวณp q=2*p+1ถ้าqเป็นไพร์มด้วยเรามี Cunnigham chain ของ type I ที่มีความยาว 2 จากนั้นเราจะทดสอบ2*q+1และต่อไปเรื่อย ๆ จนกระทั่งจำนวนที่สร้างขึ้นถัดไปเป็นคอมโพสิต โซ่คันนิงแฮมประเภทIIสร้างขึ้นตามหลักการเดียวกันเกือบทั้งหมดความแตกต่างเพียงอย่างเดียวคือเราตรวจสอบ2*p-1แต่ละขั้นตอน โซ่คันนิงแฮมสามารถมีความยาว 1ซึ่งหมายความว่า 2 * p + 1 หรือ 2 * p-1 ไม่สำคัญ เราไม่ได้สนใจในสิ่งเหล่านี้ ตัวอย่างบางส่วนของ Cunningham chains 2เริ่มสายโซ่ประเภทที่ฉันมีความยาว …

5
การประมวลผลข้อความ # 1: การใส่ไฮเฟ็น
พื้นหลัง นี่คือส่วนแรกของสนามกอล์ฟ 3 หลุมในการประมวลผลข้อความ แนวคิดที่เกินความคาดหมายคือถ้าคุณนำข้อความเข้าและไปป์ผ่านวิธีแก้ปัญหาทั้งสามข้อ (ด้วยรหัสกาวจำนวนเล็กน้อย) มันจะแยกย่อหน้าที่จัดรูปแบบออกมาอย่างสวยงาม ในการท้าทายครั้งแรกนี้งานของคุณคือการใส่ยัติภังค์ชิ้นส่วนของข้อความโดยใช้รูปแบบการใส่ยัติภังค์ที่กำหนด อินพุต โปรแกรมของคุณจะรับอินพุตสตริงสองเส้น: ข้อความและรายการรูปแบบยัติภังค์ อินพุตแรกเป็นสตริงที่ไม่ว่างเปล่าของอักขระ ASCII และช่องว่างที่พิมพ์ได้ ~ก็จะได้มีการแบ่งบรรทัดหรือเครื่องหมายตัวหนอน อินพุตที่สองคือรายการคำที่คั่นด้วยจุลภาคซึ่งประกอบด้วยพยางค์ที่คั่นด้วย tilde ของอักขระ ASCII ตัวพิมพ์เล็ก ex~cel~lent,pro~gram~ming,abil~i~tiesตัวอย่างคือ เอาท์พุต โปรแกรมของคุณจะแก้ไขอินพุตแรกด้วยวิธีต่อไปนี้ คำใด ๆ (สตริงย่อยสูงสุดของตัวอักษร ASCII ตามตัวอักษร) ที่พบตัวพิมพ์เล็กที่ใส่ยัติภังค์ในอินพุตที่สองจะถูกแทนที่ด้วยเวอร์ชันที่ใส่ยัติภังค์นั้น แต่จะต้องเก็บรักษาไว้ ด้วยรายการตัวอย่างข้างต้นหากข้อความมีคำว่าExcellentมันจะถูกแทนที่ด้วยEx~cel~lent; อย่างไรก็ตามExcellentlyจะไม่สามารถแก้ไขได้ ผลลัพธ์ของคุณจะต้องเป็นสตริงที่ดัดแปลงนี้ รายละเอียดกฎและเกณฑ์การให้คะแนน คุณสามารถสมมติสิ่งต่อไปนี้เกี่ยวกับอินพุต: อินพุตแรกไม่มี tildes และไม่มีช่องว่างนำหน้าต่อท้ายหรือเว้นวรรคซ้ำ ไม่ว่างเปล่า อินพุตที่สองมีอย่างน้อยหนึ่งคำและแต่ละคำในนั้นจะมีอย่างน้อยสองพยางค์ แต่ละพยางค์ไม่ว่างเปล่า อินพุตที่สองไม่มีคำที่เกิดขึ้นเป็นพยางค์ในคำอื่น คุณสามารถเปลี่ยนลำดับของอินพุตทั้งสองถ้าต้องการและเพิ่มทางเลือกหนึ่งบรรทัดขึ้นบรรทัดใหม่ไปยังเอาต์พุต คุณสามารถเขียนฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบ จำนวนไบต์ต่ำสุดที่ชนะและช่องโหว่มาตรฐานไม่ได้รับอนุญาต กรณีทดสอบ 1st input [newline] 2nd …

4
ใช้การเข้ารหัสความยาวรันของ bzip2
พื้นหลัง หลังจากใช้ BWT (เท่าที่เห็นในBurrows, Wheeler และ Back ) และ MTF (ดังที่เห็นในย้ายไปยังหน้า ASCII ที่พิมพ์ได้ ) คอมเพรสเซอร์bzip2ใช้รูปแบบการเข้ารหัสที่ค่อนข้างยาว คำนิยาม สำหรับวัตถุประสงค์ของการท้าทายนี้เราได้กำหนดการเปลี่ยนแปลง BRLE ดังนี้: รับสตริงอินพุตsที่ประกอบด้วยอักขระ ASCII ที่มีจุดรหัสระหว่าง 0x20 ถึง 0x7A เท่านั้นให้ทำดังนี้: แทนที่การเรียกใช้อักขระที่เท่ากันแต่ละครั้งด้วยการเกิดขึ้นครั้งเดียวของตัวละครและจำนวนการจัดเก็บการทำซ้ำหลังจากครั้งแรก เข้ารหัสจำนวนการทำซ้ำ หลังจากที่เกิดขึ้นครั้งแรกของตัวละครโดยใช้bijective ฐานที่ 2 การคิดเลขและสัญลักษณ์และ{} จำนวนเต็มไม่เป็นลบnถูกเข้ารหัสเป็นสตริงb k … b 0เช่นนั้นn = 2 k i (b k ) + … + 2 0 i …

8
วรรณพันธ์
Fannkuchเป็นโปรแกรมมาตรฐานคลาสสิก ชื่อนี้มาจากภาษาเยอรมัน "Pfannkuchen" - แพนเค้ก - สำหรับความคล้ายคลึงของอัลกอริทึมในการพลิกกองแพนเค้ก ลำดับหมายเลข Fannkuch ถูกสร้างขึ้นดังนี้: ใช้การเรียงสับเปลี่ยนของ {1 ..... n} ตัวอย่างเช่น: {4,2,1,5,3} นำองค์ประกอบแรกมาที่นี่ 4 และกลับลำดับขององค์ประกอบ 4 รายการแรก: {5,1,2,4,3} ทำซ้ำจนกว่าองค์ประกอบแรกจะเป็น 1 ดังนั้นการพลิกจะไม่เปลี่ยนแปลงอะไรอีก: {3,4,2,1,5}, {2,4,3,1,5}, {4,2,3 1,5}, {1,3,2,4,5} คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นซึ่งคำนวณลำดับ Fannkuch เหมือนสำหรับสตริงของตัวอักษร แทนที่จะใช้ตัวเลขเพื่อระบุองค์ประกอบของรายการที่จะพลิกแต่ละครั้งตำแหน่งของตัวอักษรในตัวอักษรควรใช้ ตัวอย่างเช่นผู้นำcจะระบุว่าคุณควรกลับลำดับของ 3 องค์ประกอบแรกในขณะที่ผู้นำaชี้ให้เห็นว่าลำดับเสร็จสมบูรณ์ อินพุต อินพุตจะถูกจัดเตรียมเป็นสตริงผ่าน stdin หรือเป็นอาร์กิวเมนต์ของฟังก์ชัน สตริงจะมีตัวอักษรตัวพิมพ์เล็กระหว่าง 1 ถึง 26 ตัว สตริงจะไม่มีตัวอักษรที่มีดัชนีเทียบเท่าจะทำให้อัลกอริทึม Fannkuch พลิกองค์ประกอบมากกว่าที่มีอยู่ เอาท์พุต …

2
ICS Maritime Flag ตัวอักษร
เรือธง ใช้รหัสสากลของตัวอักษรสำหรับการสื่อสารโดยเฉพาะอย่างยิ่งสำหรับสัญญาณคงที่ ความท้าทายของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นที่จะใช้สตริงจาก STDIN หรือเป็นอาร์กิวเมนต์และแสดงข้อความที่เกี่ยวข้องในตัวอักษรธง ICS หากภาษาของคุณไม่ปรากฏขึ้นที่หน้าจอการบันทึกลงไฟล์นั้นเป็นที่ยอมรับ โปรแกรมหรือการทำงานของคุณจะสนับสนุนตัวอักษรAZในด้านบนและกรณีที่ต่ำกว่าบวกอวกาศและนิวไลน์ พฤติกรรมกับตัวละครอื่น ๆ ไม่ได้กำหนด จอแสดงผลต้องมีขนาดใหญ่พอที่จะ สามารถแสดงผลได้อย่างน้อย 8 ธงในแนวนอนและ 6 ธงในแนวตั้ง พฤติกรรมจะไม่ได้กำหนดหากถึงขอบด้านขวาก่อนที่จะได้รับการขึ้นบรรทัดใหม่หรือหากข้อความยาวเกินกว่าที่จะพอดีกับจอแสดงผลในแนวตั้ง ตัวอักษรธงแสดงอยู่ด้านล่าง (ตัวอักษรโรมันใช้สำหรับการอ้างอิงเท่านั้นไม่จำเป็นต้องใช้ในผลลัพธ์) ขนาด ไม่มีมาตรฐานที่ตกลงกันโดยทั่วไปสำหรับขนาดของธงเหล่านี้ดังนั้นเพื่อความท้าทายนี้จะมีผลใช้บังคับ: ธงจะต้องเป็น 60x60 พิกเซลโดยมีช่องว่าง 30 พิกเซลระหว่างพวกเขาทั้งแนวนอนและแนวตั้ง หางแฉกที่ตัด A และ B ต้องมีความลึก 15 พิกเซล เส้นอื่นทั้งหมดต้องเป็นแนวนอนแนวตั้งหรือที่ 45 องศา สถานที่นั้นจะต้องอยู่ในตำแหน่งโดยแบ่งธงออกเป็นตาราง NxN ในจินตนาการของด้าน 3,4,5 หรือ 6 สี่เหลี่ยม อ้างถึงภาพด้านบน แต่สำหรับการชี้แจงเพิ่มเติม: A, E, H, K, …

15
เติมในช่องว่าง
อินพุต ติดลบnและสตริงว่างที่มีเพียงตัวอักษรและตัวเลขและขีดs _ตัวอักษรตัวแรกของไม่ได้s _ขีดล่างของsถูกตีความว่าเป็นช่องว่างที่สามารถเติมด้วยอักขระอื่น ๆ เรากำหนดลำดับอนันต์ของ "สตริงอนันต์" ดังนี้ สตริงจะถูกทำซ้ำหลายครั้งอย่างไม่ จำกัด สำหรับทุกสตริงจะได้รับจากโดยการกรอกช่องว่างกับตัวละครของเพื่อให้คนแรกของจะถูกแทนที่ด้วยสองด้วยและอื่น ๆ เนื่องจากตัวอักษรตัวแรกของไม่ใช่ตัวอักษรทุกช่องว่างจะถูกเติมเต็มในที่สุดและเราแสดงด้วยสตริงที่ไม่มีที่สิ้นสุดซึ่งทุกตัวถูกแทนที่ด้วยค่าในที่สุดs1 = s s s...sk > 1sk+1sks1_sks1[0]s1[1]s_s∞_ เอาท์พุต nอักขระตัวแรกของเป็นสตริงs∞ ตัวอย่าง พิจารณาปัจจัยการผลิตและn = 30 s = ab_c_เรามี s1 = ab_c_ab_c_ab_c_ab_c_ab_c_ab_c_ab_c_... เพื่อทดแทนช่องว่างของเราs1s1 s2 = abacbab_ccab_caabbc_abcc_abacbab_cc... เราแทนที่ช่องว่างอีกครั้งซึ่งส่งผลให้s1 s3 = abacbabaccabbcaabbc_abcccabacbab_cc... การทดแทนอีกหนึ่งรายการ: s4 = abacbabaccabbcaabbcaabcccabacbabbcc... จากนี้เราสามารถอนุมานอักขระ 30 ตัวแรกของซึ่งคือs∞ abacbabaccabbcaabbcaabcccabacb นี่เป็นเอาต์พุตที่ถูกต้อง กฎระเบียบ คุณสามารถเขียนโปรแกรมเต็มรูปแบบหรือฟังก์ชั่น …
14 code-golf  string 

4
เขียนตัวตรวจการสะกดคำ
เกมWaving Handsอยู่ที่ไหนสักแห่งระหว่าง Magic Pen และ Paper: Gathering และกรรไกรกระดาษ Rock ที่ประณีตมาก ทุกเทิร์นที่คุณเขียนหนึ่งในแปดท่าทางสำหรับแต่ละมือ: wiggled Fingers เสนอPalm Sงีบ WAVE Digit ชี้ Cตัก STAB Nothing มีกฎสำคัญบางประการที่สำคัญกว่าส่วนที่เหลือ: หากทั้งสองมือท่าทางPคุณจะยอมแพ้ (นี่คือการทำให้เข้าใจง่าย แต่เราจะทำตามนั้น) Bมือข้างเดียวในเวลาที่สามารถท่าทาง ชุดของท่าทางที่กระทำโดยมือเดียวกันสามารถเสกคาถาที่แต่ละคาถาถูกผูกไว้กับลำดับหนึ่งโดยเฉพาะ ลำดับเหล่านี้สามารถทับซ้อนกัน แต่แต่ละท่าทางสามารถใช้เป็นท่าทางสุดท้ายของคาถาเดียวเท่านั้น (เพื่อให้คุณสามารถสร้างคาถาได้มากถึงสองคาถาในรอบเดียว) คาถาบางอย่างต้องใช้ท่าทางด้วยมือทั้งสองพร้อมกัน งานของคุณคือกำหนดรายการท่าทางสำหรับแต่ละมือเพื่อกำหนดคาถาที่สามารถส่งในเทิร์นปัจจุบัน สำหรับแต่ละมืออักษรสุดท้ายในรายการแสดงถึงท่าทางที่เลือกสำหรับเทิร์นปัจจุบัน นี่คือรายการของลำดับท่าทาง ตัวอักษรตัวพิมพ์ใหญ่หมายถึงท่าทางที่ดำเนินการโดยมือเดียวตัวอักษรตัวพิมพ์เล็กหมายถึงท่าทางที่กระทำด้วยมือทั้งสอง B Stab cDPW Dispel magic cSWWS Summon elemental cw Magic mirror DFFDD Lightning bolt DFPW …
14 code-golf  string  game 

1
การเตรียมการเหมือนเกรงกลัวน้อยที่สุด
พิจารณาว่าคำสามารถจัดบนขนาดใหญ่โดยพลเกรงกลัวตารางถ้ากฎเกี่ยวกับการไม่ได้ใช้ก้อนตัวอักษรเดียวกันมากกว่าหนึ่งครั้งจะถูกละเว้น นอกจากนี้สมมติว่าคุณมีได้ไม่ จำกัด จำนวนของก้อนตัวอักษร (ที่มีตัวอักษรทั้งหมดในปัจจุบัน) และเป็นเพียงQuQ MISSISSIPPIสามารถจัดเรียงคำได้โดยใช้เพียง 6 ลูก นี่เป็นข้อตกลงที่เป็นไปได้หนึ่งข้อ: S MIS PP เริ่มต้นที่Mเราทำซ้ำขั้นตอนใด ๆ ในแนวนอนแนวตั้งหรือแนวทแยงมุมจนกว่าจะสะกดคำทั้งหมด น่าแปลกที่วลีที่ยาวขึ้นเช่นAMANAPLANACANALPANAMAเดียวกับต้องการเพียง 6 ลูกบาศก์: MAN PLC อย่างไรก็ตามจำนวนคิวบ์ต่ำสุดที่จำเป็นสำหรับการยาวขึ้นสตริงที่ซับซ้อนมากขึ้นไม่ชัดเจนเสมอไป ท้าทาย จงเขียนโปรแกรมที่ใช้ในสตริงและจัดไว้ในนี้เกรงกลัวเหมือนแฟชั่นดังกล่าวว่าจำนวนขั้นต่ำของก้อนจะใช้ (ขนาดของตารางผลลัพธ์และจำนวนของเซลล์ว่างเปล่าไม่เกี่ยวข้อง) สมมติว่าคุณมีลูกบาศก์ไม่ จำกัด จำนวนสำหรับอักขระ ASCII ที่พิมพ์ได้แต่ละตัวยกเว้นเว้นวรรค (รหัสฐานสิบหก 21 ถึง 7E) เนื่องจากมันถูกใช้เป็นเซลล์กริดว่างเปล่า จะป้อนเฉพาะสตริง ASCII ที่พิมพ์ได้ (ไม่มีช่องว่าง) อินพุตควรถูกนำมาจาก stdin หรือบรรทัดรับคำสั่ง ผลลัพธ์ควรไปที่ stdout (หรือตัวเลือกอื่นที่ใกล้เคียงที่สุด) การขึ้นบรรทัดใหม่หรือการต่อท้ายช่องว่างในผลลัพธ์เป็นสิ่งที่ดี (แต่หวังว่าจะไม่มีจำนวนเกินจริง) พื้นที่การค้นหาจะเพิ่มขึ้นอย่างทวีคูณเมื่อสตริงยาวขึ้น แต่คุณไม่จำเป็นต้องพยายามทำให้อัลกอริทึมของคุณมีประสิทธิภาพ (แม้ว่าจะดี …

3
นิพจน์ที่เท่ากับความยาว
กำหนดตัวเลขให้หานิพจน์ด้วยคำที่เท่ากับจำนวนนั้นด้วยความยาวของตัวเลขนั้น ดังนั้นสำหรับอินพุต15คุณอาจส่งออกsixteen minus oneซึ่งมีสิบห้าอักขระ (ไม่นับช่องว่าง) หากมีหลายวิธีให้พิมพ์ตามที่คุณต้องการ หากไม่มีอยู่ให้พิมพ์impossible ใช้เฉพาะผู้ประกอบการplus, minus, และtimes divided byผู้ประกอบการประเมินจากซ้ายไปขวา one thousand two hundred thirty fourรูปแบบเป็น 1234 สังเกตว่าไม่มี "และ" และไม่มีเครื่องหมายขีดกลางหรือเครื่องหมายจุลภาค อินพุตและตัวเลขทั้งหมดที่ใช้ในเอาต์พุตต้องเป็นจำนวนเต็มบวกน้อยกว่า 10,000 อินพุตจะถูกกำหนดเป็นอาร์กิวเมนต์บรรทัดคำสั่ง พิมพ์ไปยังเอาต์พุตมาตรฐาน ตัวอย่าง 1: impossible 4: four 7: impossible 13: eight plus five (you could also output "five plus eight") 18: one plus two times six …
14 code-golf  math  string 

7
มวลโมเลกุลของสารประกอบ
งาน จงเขียนโปรแกรมที่ใช้ในบริเวณที่ทำ แต่เพียงผู้เดียวขององค์ประกอบที่มีจำนวนอะตอมน้อยกว่าหรือเท่ากับ 92 (ยูเรเนียม) grams/moleและผลมวลกรามของสารประกอบใน กฎและข้อ จำกัด คุณไม่สามารถใช้ฟังก์ชันที่คำนวณมวลโมเลกุลโดยตรงสำหรับคุณได้ โปรแกรมของคุณจะต้องสามารถทำงานบนเครื่องออฟไลน์ คุณอาจใช้ไฟล์ข้อมูลแยกต่างหาก ต้องระบุเนื้อหาของไฟล์นี้ คะแนนของคุณคือความยาวของโปรแกรมของคุณเป็นไบต์รวมถึงความยาวของไฟล์ข้อมูลของคุณเป็นไบต์หากคุณเลือกที่จะใช้ นี่คือรหัส - กอล์ฟดังนั้นคะแนนต่ำสุดชนะ อินพุต สตริงที่มีสารประกอบ สตริงนี้อาจถูกอ่านผ่านSTDINส่งผ่านเป็นอาร์กิวเมนต์หรือตั้งค่าเป็นตัวแปร (โปรดระบุว่า) ต่อไปนี้เป็นอินพุตที่ถูกต้องทั้งหมด: CH2 (หนึ่งคาร์บอนสองไฮโดรเจน) (CH2)8 (8 Carbons, 16 Hydrogens) U (1 ยูเรเนียม) โปรแกรมของคุณไม่จำเป็นต้องใช้งานสำหรับวงเล็บฝังตัว (เช่น((CH3)2N4)4) หรือสำหรับสารประกอบใด ๆ ที่มีองค์ประกอบที่มีเลขอะตอมมากกว่า 92 ถ้าโปรแกรมของคุณไม่ทำงานสำหรับสองกรณีข้างต้นก็จะต้องส่งออกInvalid formulaสำหรับกรณีดังกล่าว - ไม่มีพฤติกรรมที่ไม่ได้กำหนด เอาท์พุต คุณควรส่งออกไปหรือตัวแปรมวลโมเลกุลของสารประกอบในSTDOUT grams/moleรายการของมวลอะตอมของธาตุให้บริการได้ที่นี่ (วิกิพีเดีย) คำตอบของคุณควรถูกต้องกับตำแหน่งทศนิยมสำหรับสารประกอบที่มีอะตอมน้อยกว่า 100 (โค้งมน) หากอินพุตไม่ถูกInvalid formulaต้องจะต้องมีเอาต์พุต …

7
มันเป็นนายกหรือไม่? ไม่มีคณิตศาสตร์ [ปิด]
ปิด คำถามนี้ต้องการรายละเอียดหรือความคมชัด ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ เพิ่มรายละเอียดและชี้แจงปัญหาโดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา เขียนโปรแกรมหรือฟังก์ชั่นในภาษาใด ๆ ที่บอกว่าอินพุตเป็นตัวเลขเฉพาะหรือไม่ อินพุตเป็นสตริงที่แทนจำนวนธรรมชาติใน base-10 เอาต์พุตเป็นหนึ่งในสองสตริง "Prime" หรือ "Not !!" ซึ่งระบุอินพุตได้อย่างถูกต้อง ตัวดำเนินการทางคณิตศาสตร์ตัวดำเนินการ bit-wise ตัวแปรที่เป็นตัวเลขและค่าคงที่ "ทั่วไป" สิ่งต่าง ๆ "โดยทั่วไปไม่อนุญาตให้ใช้ทุกที่ในโปรแกรมของคุณ คุณควรใช้การทำงานของสตริงเพื่อทำการ "คำนวณ" ที่จำเป็นทั้งหมด คุณสามารถเปรียบเทียบความยาวสตริง (ซึ่งเป็นตัวเลข) - แต่ -10 กับคะแนนของคุณหากคุณไม่ต้องการ โปรแกรมของคุณควรทำงานกับอินพุตความยาวใด ๆ (ให้หน่วยความจำและเวลาเพียงพอ) จำนวนไบต์ต่ำสุด (UTF-8) ชนะ

4
ไฮไลต์ด้านไวยากรณ์สำหรับ Greater Golf!
นักกอล์ฟ เราได้รวมตัวกันเพื่อผลิตรหัสที่รัดกุมมีฟังก์ชั่นที่สวยงามและน่าเกลียดยิ่งกว่า Phantom of the Opera จากนวนิยายดั้งเดิม ถึงเวลาแล้วที่เราจะนำความงามกลับคืนสู่โลกแห่งการเขียนโปรแกรม ด้วยสี ในทางที่กระชับความสวยงามในการใช้งานก็น่าเกลียดแล้ว Phantom of the Opera จากนวนิยายต้นฉบับ เราจะเข้ารหัสไฮไลท์ไวยากรณ์ที่มีสีสัน ในจำนวนที่สั้นที่สุดของรหัสที่เป็นไปได้ คุณจะได้รับผ่านไฟล์อินพุตหรือ Stdin ไฟล์ C ที่ถูกต้อง ไฟล์ C จะใช้การประชุมบรรทัดที่คุณเลือกและจะมีเฉพาะอักขระ ASCII 32-126 คุณต้องแปลงให้เป็นไฟล์ HTML ที่แสดงอย่างถูกต้องใน Chrome อย่างน้อยซึ่งจะแสดงรหัสต้นฉบับพร้อมกับการเน้นไวยากรณ์ ผลลัพธ์อาจอยู่ในไฟล์หรือไปยัง Stdout คุณต้องเน้น: สตริงและอักขระทั้งหมด (รวมถึงอักขระเครื่องหมายคำพูด) เป็นสีเขียว (# 00FF00) สตริงอาจมีอักขระที่ใช้ Escape คำสงวน C ทั้งหมดเป็นสีน้ำเงิน (# 0000FF) ความคิดเห็นทั้งหมดเป็นสีเหลือง (# FFFF00) …
14 code-golf  string 

10
สร้างตัวแยกวิเคราะห์ Twitter
บทนำ คุณใช้ Twitter (สมมติว่าไม่ใช่) ซึ่งคุณ จำกัด ไว้ที่ 140 ตัวอักษรต่อทวีตเดียวที่คุณต้องการแบ่งปันกับคนทั่วโลก หากคุณต้องการทวีตไปยังที่อยู่ Gettysburgของผู้ติดตาม Abraham Lincoln คุณจะต้องแยกข้อความออกเป็นหลาย ๆ ตัวละคร 140 ตัวเพื่อที่จะได้รับข้อความทั้งหมด อย่างไรก็ตามชิ้นเหล่านั้นไม่ควรยาว 140 ตัวอักษรเสมอไป พูดเช่นเราแบ่งคำพูดออกเป็น 17 ตัวอักษรเราจะจบลงด้วยทวีตเหล่านี้: สี่คะแนนและ SE VEN YEARS AGO ของเรา พ่อรู้ตัว รูปแบบนี้ TINENT A NATI ใหม่ ได้รับในลิตร (และอื่น ๆ ) นั่นไม่ดีเลย! เมื่อคำแต่ละคำแตกสลายมันก็ยากที่จะเข้าใจว่าคุณกำลังพยายามพูดอะไร นอกจากนี้ใน twitterverse หนึ่งในผู้ติดตามของคุณอาจพบทวีตที่เฉพาะเจาะจงและไม่ทราบว่ามีข้อความมากขึ้นดังนั้นคุณจะต้องกำหนดหมายเลขทวีตของคุณเพื่อให้พวกเขามีบริบทในการทำงาน (ยังคงใช้ชิ้นอักขระ 17 ตัว ): (1/7) …
14 code-golf  string 

9
เขียนฟังก์ชั่นที่คืนค่าอดีตกาลของคำกริยาที่กำหนด
ท้าทาย เขียนฟังก์ชันที่รับอาร์กิวเมนต์ซึ่งเป็นคำกริยาและคืนค่าอดีตกาลของคำกริยา (สมมติว่าคำกริยาเป็นปกติ) อดีตกาล หมายเหตุ: พิจารณา y เป็นพยัญชนะหรือสระ โดยปกติเพียงเพิ่มedหลังจากสิ้นสุดคำกริยาทำให้กาลที่ผ่านมาของคำกริยา เช่นjump→ jumped, ask→asked อย่างไรก็ตามมีกฎอื่น ๆ ถ้าตัวอักษรตัวสุดท้ายของคำกริยาให้เป็นเพียงแค่เพิ่มed เช่นlove→ loved, move→moved ถ้าเป็นคำกริยาจะจบลงด้วยการ + พยัญชนะyแล้วเปลี่ยนyไปและเพิ่มied เช่นstudy→ studied, cry→cried แต่ถ้าเป็นคำกริยาจะจบลงด้วยการสระ + แล้วเพียงแค่เพิ่มyed เช่นplay→ played, stay→stayed หากคำกริยาลงท้ายด้วยสระและพยัญชนะให้เขียนพยัญชนะอีกครั้งแล้วเพิ่ม edหากคำกริยาจะจบลงด้วยการสระและพยัญชนะแล้วเขียนพยัญชนะอีกครั้งหนึ่งและเพิ่ม เช่นstop→ stopped, plan→planned แต่ถ้าเป็นคำกริยาจะจบลงด้วยการสระหลาย + พยัญชนะหรือสระเดี่ยว + edหลายพยัญชนะแล้วเพียงแค่เพิ่ม เช่นlook→ looked, jump→jumped มีกฎมากกว่า แต่ให้ใส่ใจกฎข้างต้นเท่านั้น ตัวอย่างเช่นตามกฎข้างต้นvisit→visitted → ผู้ชนะ เนื่องจากนี่คือรหัสกอล์ฟรหัสที่สั้นที่สุดที่ส่งกลับกาลเวลาในอดีตชนะอย่างถูกต้อง ตัวอย่าง …
14 code-golf  string 

23
ผลรวมของจำนวนเต็มในสตริงคั่นด้วยไม่ใช่ตัวเลขเช่น 'a' และ 'Y'
สร้างโปรแกรมที่รวมจำนวนเต็มทั้งหมดที่พบในสตริงซึ่งตั้งเป็นตัวแปรในโปรแกรม (ดังนั้นโปรแกรมไม่ต้องจัดการอินพุตใด ๆ ) ตัวเลขจำนวนเต็มถูกคั่นด้วยไม่ใช่ตัวเลข (อะไรก็ได้ยกเว้น 0, 1, 2, 3 ... 9) ตัวอย่าง: e7rde f ,fe 43 jfj 54f4sD = 7 + 43 + 54 + 4 = 108 5 = 5 64 545,5445-32JIFk0ddk = 64 + 545 + 5445 + 32 + 0 = 6086 0ab0 = 0 + …
14 code-golf  string 

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