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

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

4
ส่วนประกอบที่เชื่อมต่ออย่างยิ่ง
จุดยอดที่แตกต่างกันสองจุดในกราฟกำกับนั้นเชื่อมต่อกันอย่างแน่นหนาหากมีเส้นทางในกราฟจากจุดหนึ่งไปยังอีกจุดหนึ่ง องค์ประกอบเชื่อมต่ออย่างยิ่งของกราฟเป็นส่วนหนึ่งของกราฟดังกล่าวว่าคู่ของจุดที่แตกต่างกันในกลุ่มย่อยในแต่ละมีการเชื่อมต่ออย่างมากและเพิ่มจุดใด ๆ ที่มากขึ้นในการย่อยจะทำลายคุณสมบัตินี้ ความท้าทายของคุณคือการแยกกราฟออกเป็นส่วนประกอบที่เชื่อมต่ออย่างแน่นหนา คุณต้องส่งออก SCC ทั้งหมดในกราฟ I / O: ในฐานะที่เป็นอินพุตคุณอาจใช้รายการของขอบชีทรายการ adjacency เมทริกซ์ adjacency หรือรูปแบบอินพุตที่สมเหตุสมผลอื่น ๆ ถามว่าคุณไม่แน่ใจ คุณอาจสมมติว่ากราฟไม่มีการตัดการเชื่อมต่อทั้งหมดและไม่มีขอบตัวเอง แต่คุณไม่สามารถตั้งสมมติฐานเพิ่มเติมได้ คุณยังสามารถเลือกรายการจุดยอดเป็นอินพุตเช่นเดียวกับจำนวนจุดยอด ในฐานะที่เป็นเอาท์พุทคุณจะต้องให้การแบ่งจุดยอดเช่นรายการของจุดยอดที่แต่ละรายการย่อยเป็นองค์ประกอบที่เชื่อมต่ออย่างยิ่งหรือการติดฉลากของจุดยอดที่แต่ละป้ายสอดคล้องกับองค์ประกอบที่แตกต่างกัน หากคุณใช้การติดฉลากฉลากจะต้องเป็นจุดยอดหรือลำดับของจำนวนเต็มติดต่อกัน นี่คือการป้องกันไม่ให้หลุดการคำนวณลงในฉลาก ตัวอย่าง: ตัวอย่างเหล่านี้ใช้รายการขอบที่แต่ละขอบถูกชี้นำจากรายการที่ 1 ไปยังรายการที่สองและพาร์ติชันเอาท์พุท คุณมีอิสระที่จะใช้รูปแบบนี้หรือรูปแบบอื่น อินพุตอยู่บนบรรทัดแรกเอาต์พุตอยู่บนบรรทัดที่สอง [[1, 2], [2, 3], [3, 1], [1, 4]] [[1, 2, 3], [4]] [[1, 2], [2, 3], [3, 4]] [[1], [2], …

10
สร้างแผนที่ลูกตก
บทนำ สำหรับคนที่ไม่เคยได้ยินเกมนี้มาก่อน คุณกำลังเล่นลูกบอลที่ต้องการเอาตัวรอดนานที่สุด ทำได้โดยเลื่อนไปทางซ้ายหรือขวาไปที่รู เมื่อแผนที่ขยับขึ้นคุณต้องลงไปเพื่อความอยู่รอดอีกต่อไป หากคุณค้นหารูปภาพคุณอาจรู้ว่าฉันหมายถึงเกมใด งาน รับจำนวนเต็มบวกnส่งออกแผนที่ลูกตกของชั้นn ระหว่างเลเยอร์มี 4 บรรทัดใหม่ ความกว้างของเลเยอร์ประกอบด้วยอักขระขีดล่าง 25 ตัวโดยมีความยาวหนึ่งรูที่ 5 นั่นหมายความว่าความกว้างทั้งหมดเท่ากับ 30 ซึ่งจะถูกเปลี่ยนแบบสุ่มหลังจากแต่ละเลเยอร์ ตัวอย่างของเลเยอร์ที่ถูกต้องคือ: _______________ __________ รูอาจอยู่ที่ขอบราวกับว่าเลเยอร์เป็นรูปทรงกระบอก: _________________________ โปรดทราบว่ามีช่องว่างนำหน้า 2 ช่องและช่องว่างท้าย 3 ช่อง ทำให้เป็นรูเดียวที่มีความกว้าง 5 กรณีทดสอบ สำหรับn = 4 นี่เป็นเอาต์พุตที่ถูกต้อง: _______________ __________ ______ ___________________ _______________________ __ _________________________ หมายเหตุ: หลุมจะต้องกระจายอย่างสม่ำเสมอ อนุญาตให้ขึ้นบรรทัดใหม่และ / หรือขึ้นบรรทัดใหม่ นี่คือโค้ดกอล์ฟดังนั้นการส่งที่มีจำนวนไบต์น้อยที่สุดจะชนะ!

15
ผลิตภัณฑ์เกลาขั้นต่ำ
ผลิตภัณฑ์เกลาขั้นต่ำ แรงบันดาลใจสำหรับปัญหารหัสกอล์ฟแห่งนี้อยู่ห่างจากการแข่งขันรหัสแยมของ Google หลักฐานที่อยู่เบื้องหลังปัญหาคือให้อินพุตของเวกเตอร์ที่มีความยาวต่างกันสองตัวเพื่อหาสเกลาร์ขั้นต่ำที่เป็นไปได้ สเกลาร์สามารถพบได้โดยใช้สูตรต่อไปนี้: x1 * y1 + x2 * y2 + ... + xn * yn อย่างไรก็ตามปัญหาคือสามารถหาค่าสเกลาร์ได้หลายค่าขึ้นอยู่กับลำดับของตัวเลขในกรณีอินพุต (ดูด้านล่าง) เป้าหมายของคุณคือการกำหนดวิธีการแก้ปัญหาจำนวนเต็มสเกลาร์ขั้นต่ำที่เป็นไปได้โดยเสียบหมายเลขกรณีการป้อนเข้าในสมการและการแก้ปัญหา คุณสามารถใช้ทุกหมายเลขในอินพุตได้เพียงครั้งเดียวและต้องใช้ตัวเลขทั้งหมด อนุญาตให้ฉันยกตัวอย่างกับเวกเตอร์ต่อไปนี้ อินพุต 3 1 3 -5 -2 4 1 เอาท์พุต -25 จำนวนเต็มแรกในบรรทัดแสดงจำนวนตัวเลข, n ในแต่ละเวกเตอร์ ในกรณีนี้เรามีตัวเลขสามตัวในแต่ละเวกเตอร์ จำนวน n อาจแตกต่างกันไปในแต่ละกรณีทดสอบ แต่จะมีสองเวกเตอร์ ในอินพุตตัวอย่างผลิตภัณฑ์สเกลาร์ขั้นต่ำจะเป็น -25 (-5 * 4) + (1 * 1) …

24
อาร์เรย์แบบสุ่มโดยไม่ต้องทำซ้ำ
ฉันกำลังตอบคำถามท้าทายหนึ่งที่นี่และงานนี้เป็นส่วนหนึ่งของความท้าทาย ฉันมีวิธีแก้ปัญหา 73 ไบต์ในจาวาสคริปต์ แต่ฉันคิดว่ามันมากเกินไปสำหรับสิ่งที่ง่าย ท้าทาย รับเป็นอินพุตจำนวนเต็มสองจำนวน: N ความยาวของอาร์เรย์ที่คาดหวัง Rช่วงของช่วงเวลาเริ่มต้นในหนึ่ง: 1..Rไม่0..R-1 เอาต์พุตในการรันแต่ละครั้งของโปรแกรม / ฟังก์ชันของคุณหนึ่งอาร์เรย์ที่Nมีความยาวต่างกันโดยมีค่าอยู่ระหว่างกัน1..Rในลักษณะที่ไม่มีค่าใดเกิดขึ้นมากกว่าหนึ่งครั้ง คุณต้องใช้R-valueในรหัสของคุณ ข้อ จำกัด 2 <= N <= Rคุณสามารถสันนิษฐานได้ว่า: ฉันอยากเห็นโซลูชันจาวาสคริปต์สั้นกว่าของฉัน 73 ไบต์ แต่แน่นอนมันเปิดทุกภาษา! หากภาษาของคุณไม่สามารถส่งกลับอาร์เรย์คุณสามารถพิมพ์ตัวเลขทั้งหมด)

1
ช่วยพัฒนาตัวต่อใหม่ล่าสุดของ Alphys!
Alphys นักวิทยาศาสตร์ระดับสูงของ Underground ได้สร้างต้นแบบสำหรับปริศนาตัวใหม่เสร็จแล้ว อย่างไรก็ตามเธอดูเหมือนจะไม่พบใครที่ต้องการทดสอบ กฎของตัวต่อมีดังนี้: เป้าหมายคือการไปทางด้านขวาเริ่มต้นจากแผ่นกระเบื้องศูนย์กลางด้านซ้าย สำหรับปริศนาที่มีตัวเลขสูงให้เริ่มที่ด้านล่างของแผ่นกลางสองแผ่น (ตัวอย่าง: ในอาร์เรย์ 4x4 ที่ทำดัชนีเป็นศูนย์ตำแหน่งเริ่มต้นจะเป็น [2,0] - แถว 2, คอลัมน์ 0 ในอาร์เรย์ 5x5 ที่มีดัชนีเป็นศูนย์ตำแหน่งเริ่มต้นจะเป็น [2,0] - แถว 2, คอลัมน์ 0. ) กระเบื้องแต่ละสีมีฟังก์ชัน "ซาดิสต์" ของตัวเอง: กระเบื้องสีชมพูและสีเขียว (แสดงเป็น "P" และ "G") ไม่ทำอะไรเลย กระเบื้องสีแดงและสีเหลือง ("R", "Y") ไม่สามารถใช้ได้ กระเบื้องส้ม ("O") ทำให้ผู้เล่นมีกลิ่นเหมือนส้ม กระเบื้องสีม่วง ("U") บังคับให้ผู้เล่นไปยังแผ่นถัดไปในทิศทางที่พวกเขากำลังเผชิญอยู่และทำให้พวกเขามีกลิ่นเหมือนมะนาว กระเบื้องสีฟ้า ( "B") …

10
เมทริกซ์บล็อกแนวทแยงมุมจากคอลัมน์
สร้างแรงบันดาลใจจาก Copied จากคำถามนี้ที่ Stack Overflow ให้เมทริกซ์Aสร้างเมทริกซ์Bที่คอลัมน์ของAถูกจัดเรียงในแนวขวางแบบบล็อก ตัวอย่างเช่นกำหนด 1 2 3 4 5 6 ผลลัพธ์จะเป็น 1 0 0 4 0 0 0 2 0 0 5 0 0 0 3 0 0 6 กฎระเบียบ อินพุตและเอาต์พุตอาจอยู่ในรูปแบบของอาร์เรย์ 2 มิติอาร์เรย์ที่ซ้อนกันหรือสตริงที่มีตัวคั่นต่างกันสำหรับแถวและคอลัมน์ ตัวเลขในอินพุต (เมทริกซ์A) จะเป็นจำนวนเต็มบวก อนุญาตให้ใช้รูปแบบ Unary ได้ตราบใดที่เลขศูนย์ในเอาต์พุตแสดงด้วยวิธีที่สมเหตุสมผล ตัวอย่างเช่นผลลัพธ์ข้างต้นสามารถแสดงได้โดยใช้เครื่องหมายคำพูดเพื่อใส่แต่ละหมายเลข: '1' '' '' '1111' '' '' '' …

11
ผลรวมของสารตั้งต้นไบนารี
ความท้าทายนี้เป็นเรื่องง่ายกำหนดตัวเลขทศนิยมให้แปลงเป็นเลขฐานสองและคำนวณผลรวมของสตริงย่อยของเลขฐานสองซึ่งความยาวจะสั้นกว่าหมายเลขเดิม นี่คือตัวอย่าง: Input: 11 Binary: 11 -> 1011 Substrings: 101 = 5 011 = 3 10 = 2 01 = 1 11 = 3 1 = 1 0 = 0 1 = 1 1 = 1 Sum: 5+3+2+1+3+1+0+1+1=17 Output: 17 โปรแกรมของคุณควรใช้จำนวนเต็มทศนิยมเดียวเป็นอินพุตและเอาต์พุตผลรวมของสตริงย่อยไบนารีดังที่เห็นด้านบน คุณอาจสมมติว่าอินพุตจะมีตัวเลขมากกว่าสองหลักเสมอในการแทนค่าไบนารี่ของมันและในอินพุตจะไม่ทำให้เกิดข้อผิดพลาดใด ๆ ระหว่างการทำงานของโปรแกรมของคุณ นี่คือcode-golfรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ! กรณีทดสอบ: 2 => 1 3 …

5
แยกสตริงนำไปสู่หลักที่ซ้อนกัน
งาน สตริงSถูกสร้างขึ้นด้วยกระบวนการต่อไปนี้: เริ่มต้นด้วยSการเป็นสตริงว่าง แทรกที่ตำแหน่งบางส่วนของSสตริงของแบบฟอร์มdsโดยที่dเป็นตัวเลขที่ไม่ใช่ศูนย์และsเป็นสตริงdตัวอักษร ASCII ตัวพิมพ์เล็ก เราบอกว่าdsเป็นส่วนประกอบSของ ไปที่ขั้นตอนที่ 2 หรือหยุด งานของคุณคือการใช้สตริงเช่นอินพุตและส่งออกองค์ประกอบของมันตัดแบ่งเป็นสตริงเดียวในลำดับการปรากฏตัวของตัวเลขนำหน้าของพวกเขา เอาต์พุตจะต้องเป็นสตริงเดี่ยวและไม่มีตัวคั่นใด ๆ (รวมถึงบรรทัดใหม่) ระหว่างองค์ประกอบ คุณสามารถเลือกว่าสตริงอินพุตและเอาต์พุตมีเครื่องหมายคำพูดหรือไม่ โปรดทราบว่าอินพุตและเอาต์พุตจะไม่ว่างเปล่า ตัวอย่าง ลองสร้างสตริงด้วยกระบวนการข้างต้น โครงสร้างขององค์ประกอบจะถูกเน้นในผลลัพธ์สุดท้าย S = "" // Insert "3abc" S = "3abc" // Insert "2gh" after 'a' S = "3a2ghbc" // Insert "1x" before '3' S = "1x3a2ghbc" // Insert "3tty" after '3' …

13
รับค่าที่ใกล้เคียงที่สุดกับตัวเลข
ในกอล์ฟรหัสนี้คุณจะต้องได้รับหมายเลขที่ใกล้เคียงที่สุดจากรายการอื่นในรายการ ผลลัพธ์อาจเป็นจำนวนที่ใกล้เคียงที่สุดกับอินพุต ตัวอย่าง: value: (Input) 5 --- [1,2,3] --- 3 และโปรแกรมอาจทำงานกับตัวเลขติดลบ ตัวอย่าง: value: (Input) 0 --- [-1,3,5] --- -1 value: (Input) 2 --- [1, 5, 3] --- 1 (Because it gives priority to lower numbers) กฎ: ดังที่ได้กล่าวมาก่อนหน้านี้มันจะต้องทำงานกับตัวเลขติดลบ หากมีสองคำตอบ (ตัวอย่าง: 0 - [5, -5]) โปรแกรมจะให้ความสำคัญกับจำนวนต่ำสุด (-5) นี่คือรหัสกอล์ฟเพื่อให้รหัสที่สั้นที่สุดชนะ!

21
ลำดับตัวเลขจากมากไปน้อย
บทนำ 7ตัวอย่างเช่นลองมาจำนวน จากนั้นเราจะทำซ้ำสิ่งนี้และวางช่องว่าง 7 ช่องระหว่างนั้น เราได้รับสิ่งนี้: 7_______7 หลังจากนั้นเราจะลดจำนวนจนกว่าจะไม่มีช่องว่างเหลือ เราได้รับสิ่งต่อไปนี้สำหรับหมายเลข 7: 7_______7 6543210 จากนั้นเราก็รวมสองคนเข้าด้วยกันดังนั้น: 7_______7 6543210 becomes 765432107 นี้จะออกเอาท์พุทสำหรับN = 7 ดูง่ายใช่มั้ย ตอนนี้ขอใช้เวลาN = 12 เราแทรก 12 ช่องว่างอีกครั้งระหว่างตัวเลขทั้งสองซึ่งให้เรา: 12____________12 จากนั้นเราจะเริ่มลดลง: 12____________12 111098765432 และในที่สุดก็ทำให้เรา: 1211109876543212 ที่คุณสามารถดูส่วนถัดลงมาสิ้นสุดที่ 2 ไม่ได้ที่ 0 งาน รับจำนวนเต็มมากกว่า 1ส่งออกลำดับจากมากไปน้อยตามที่แสดงด้านบน กรณีทดสอบ Input Output 2 2102 3 32103 4 432104 5 …

3
กองกำลังที่มีความแม่นยำตามอำเภอใจ
เราจะดำเนินการหารสำหรับจำนวนเต็มขนาดใหญ่โดยพลการ นี่คือรหัสกอล์ฟ งานคือการเขียนโปรแกรมหรือฟังก์ชั่นที่ใช้จำนวนเต็มความแม่นยำโดยพลการและหารกับพวกเขา ทราบว่าหลายสิ่งหลายอย่างที่อาจทำให้เรื่องนี้ง่ายมากที่ไม่ได้รับอนุญาตโปรดให้แน่ใจว่าจะอ่านผ่านข้อมูลจำเพาะ อินพุต คุณจะได้รับ 2 สิ่งเป็นอินพุต: สตริงฐาน 10 nหลักเรียกว่า อีกสตริงของฐาน 10 หลักเรียกว่า m สมมติว่าn>m>0หมายความว่าคุณจะไม่ถูกขอให้หารด้วยศูนย์ เอาท์พุต คุณจะเอาท์พุทสองตัวเลขQและRที่m * Q + R = nและ0 <= R <m ข้อมูลจำเพาะ การส่งข้อมูลของคุณควรใช้กับจำนวนเต็มขนาดใหญ่ตามอำเภอใจ (จำกัด โดยหน่วยความจำที่มีอยู่) คุณไม่สามารถใช้ไลบรารีภายนอก หากคุณต้องการไลบรารี่ภายนอกสำหรับ i / o คุณอาจถือว่าเป็นบิวด์อิน (ดูที่สิ่งต่าง ๆ เช่น iostream เป็นต้น) หากภาษาของคุณมีอยู่แล้วภายในซึ่งทำให้เรื่องนี้ไม่สำคัญคุณไม่สามารถใช้มันได้ ซึ่งรวมถึง (แต่ไม่ จำกัด เฉพาะ) ชนิดในตัวที่สามารถจัดการกับจำนวนเต็มที่มีความแม่นยำตามอำเภอใจ หากภาษาด้วยเหตุผลบางอย่างใช้จำนวนเต็มความแม่นยำโดยพลการฟังก์ชันนี้ไม่สามารถใช้เพื่อแสดงจำนวนเต็มที่ไม่สามารถเก็บไว้ใน 64 …

3
คำนี้เป็นภาษาอะไร
คุณควรเขียนโปรแกรมหรือฟังก์ชั่นที่กำหนดภาษาของคำที่กำหนด ภารกิจคือจดจำคำศัพท์ที่พบบ่อยที่สุด 5,000 คำใน 4 ภาษา: อังกฤษ เยอรมัน อิตาลี ฮังการี รายการคำสามารถพบได้ในที่เก็บ GitHub นี้ คุณได้รับอนุญาตให้ทำผิดใน 40% ของกรณีทดสอบที่ให้ไว้ นั่นคือคุณสามารถแยกหมวดหมู่ 8000 ของอินพุต 20000 รายละเอียด รายการมีเพียงคำที่มีตัวอักษรตัวเล็กa-zเช่นwon'tและmöchteจะไม่รวม มีคำไม่กี่คำที่ปรากฏในหลายภาษาซึ่งหมายความว่ารหัสของคุณไม่สามารถคาดเดาผลลัพธ์ได้อย่างถูกต้อง เพื่อความสะดวกคุณสามารถดาวน์โหลดกรณีทดสอบทั้งหมดเป็นรายการเดียว ในแต่ละบรรทัดตัวเลขจะระบุภาษาของคำนั้น ( 1สำหรับภาษาอังกฤษภาษา2เยอรมันภาษา3อิตาลีและ4ภาษาฮังการี) ช่องโหว่มาตรฐานไม่ได้รับอนุญาต การใช้คำจะแสดงข้อมูลที่คล้ายกันซึ่งเราจัดเตรียมให้โดยภาษาการเขียนโปรแกรมของคุณ อินพุต สตริงที่มีตัวอักษรภาษาอังกฤษตัวพิมพ์เล็กเท่านั้น (az) ขึ้นบรรทัดใหม่ต่อท้ายเป็นตัวเลือก เอาท์พุต คุณสามารถจัดหมวดหมู่คำต่าง ๆ ได้ด้วยการให้ผลลัพธ์ที่แตกต่างและสม่ำเสมอ (เหมือนกันเสมอ) สำหรับแต่ละภาษา (เช่น1ภาษาอังกฤษภาษา2เยอรมันภาษา3อิตาลีและ4ภาษาฮังการี) นี่คือรหัสกอล์ฟเพื่อให้โปรแกรมหรือฟังก์ชันที่สั้นที่สุดชนะ รหัสคำถามกอล์ฟที่เกี่ยวข้อง: นี่เป็นคำศัพท์หรือไม่? รายการคำถูกนำมาจาก wiktionary.org และ 101languages.net

10
จัดเรียงฟังก์ชันอาร์กิวเมนต์ในบรรทัดของตนเอง
กำหนดอินพุตของสตริงที่แทนนิยามฟังก์ชันส่งออกสตริงพร้อมบรรทัดใหม่และช่องว่างที่แทรกเพื่อให้อาร์กิวเมนต์ของฟังก์ชันคั่นระหว่างบรรทัดใหม่และจัดตำแหน่ง สตริงอินพุตจะเป็นไปตามรูปแบบต่อไปนี้: ครั้งแรกก็จะเริ่มต้นด้วยคำนำหน้าซึ่งมักจะเป็นอย่างน้อยหนึ่งตัวยาวและไม่ได้มีการใด ๆ ,()ของตัวละคร วงเล็บเปิด ( () จะทำเครื่องหมายจุดเริ่มต้นของรายการอาร์กิวเมนต์ รายการข้อโต้แย้งที่เป็นศูนย์หรือมากกว่านั้นจะตามมา สิ่งเหล่านี้ถูกคั่นด้วยสตริง", "(เครื่องหมายจุลภาคและช่องว่าง) ไม่มีข้อโต้แย้งใด ๆ ,()จะมีของตัวละคร วงเล็บปิด ( )) จะทำเครื่องหมายจุดสิ้นสุดของรายการอาร์กิวเมนต์ สุดท้ายเป็น postfix อาจจะพบซึ่งเป็นศูนย์หรือมากกว่าตัวอักษรและ อาจ,()ประกอบด้วยตัวอักษร สตริงอินพุตจะประกอบด้วย ASCII ที่พิมพ์ได้เท่านั้น (ซึ่งหมายความว่าจะไม่มีการขึ้นบรรทัดใหม่) ผลลัพธ์จะต้อง: คำนำหน้าคัดลอกคำต่อคำและวงเล็บเปิด รายการอาร์กิวเมนต์เวลานี้คั่นด้วยไม่ใช่", "แต่ด้วยเครื่องหมายจุลภาคขึ้นบรรทัดใหม่และช่องว่างมากเท่าที่จำเป็นเพื่อจัดตำแหน่งอักขระแรกของแต่ละอาร์กิวเมนต์ในแนวตั้ง คำสั่ง paren และ postfix แบบปิด (ถ้ามี) คำต่อคำ เนื่องจากนี่คือcode-golfรหัสที่สั้นที่สุดเป็นไบต์จะเป็นผู้ชนะ กรณีทดสอบ (รูปแบบ: อินพุตบรรทัดเดียวแล้วตามด้วยเอาต์พุตตามด้วยบรรทัดใหม่สองบรรทัด): def foo(bar, baz, quux): def foo(bar, baz, quux): …
16 code-golf  string 

3
ตรวจสอบระยะเวลาการทำงาน
บทนำ ที่นี่ในเยอรมนีเวลาในการพิจารณาคดีมีความเข้มงวดมาก หากคุณทำงาน 6 ชั่วโมงขึ้นไปต่อวันคุณต้องหยุดพักอย่างน้อย 30 นาที ถ้าคุณทำงาน 9 ชั่วโมงขึ้นไปคุณจะต้องหยุดพัก 45 นาที หากคุณทำงานน้อยกว่า 6 ชั่วโมงคุณไม่ต้องหยุดพัก แน่นอนว่าคุณสามารถแบ่งช่วงพักเหล่านั้นได้ แต่แต่ละส่วนจะต้องมีความยาวอย่างน้อย 15 นาที ความท้าทาย ในการท้าทายนี้คุณจะได้รับรายการช่วงเวลาทำงานและคุณต้องตรวจสอบว่ามีการหยุดพักเพียงพอหรือไม่โดยใช้กฎต่อไปนี้: อนุญาตwเป็นเวลาทำงานเป็นชั่วโมง: w < 6 -> No breaks needed 6 <= w < 9 -> 30 minute break needed w >= 9 -> 45 minute break needed นอกจากนี้การพักแต่ละครั้งจะต้องมีความยาวอย่างน้อย 15 นาที …

3
ป้ายกำกับสิ้นสุดตาย
เมื่อได้รับอินพุตของ "ถนน" ASCII อาร์ตเอาท์พุทถนนที่มีป้ายระบุจุดจบทั้งหมด นี่คือถนน: ########.....######..#..### #......#######....#..#..#.# #.##......#...#####..#..### #..#####..#....#..#######.# #......#...#####.....##...# #..###.#...#...###...#..### ##########.#..#..##..#.##.# ..#......#.######.#..#.#.#. ..#......#.#..#.#.#..#.#.#. ..######.###..##..######### นี่คือถนนที่มีจุดจบตายติดป้ายกำกับด้วยตัวอักษรX: ########.....######..X..### #......#######....#..X..#.# #.XX......X...X####..X..### #..XXXXX..X....#..#######.# #......X...#####.....##...# #..###.X...#...###...#..### ##########.#..X..##..#.##.X ..X......#.#XXXXX.#..#.#.X. ..X......#.#..X.X.#..#.#.X. ..XXXXXX.###..XX..######XXX ส่วนท้ายถูกกำหนดให้เป็นรูปแบบถนนใด ๆ ที่ล้อมรอบn รูปแบบของถนนอื่น ๆ อย่างน้อยn-1ซึ่งถือว่าเป็นจุดสิ้นสุดที่ตายแล้วตามกฎนี้ "Bordering" อยู่ในทิศทางที่สำคัญทั้งสี่ดังนั้นแผ่นที่มีพรมแดนติดกันจะไม่นับ กฎนี้ถูกนำไปใช้ซ้ำ ๆ เป็นที่สร้างขึ้นใหม่ปลายตายสามารถตัวเองมากขึ้นสร้างปลายตาย โปรดทราบว่าการเรียงต่อกันของถนนใด ๆ ที่มีการเรียงต่อกันนั้นจะถือว่าเป็นจุดสิ้นสุดในครั้งแรกที่มีการใช้กฎ อินพุตและเอาต์พุตอาจเป็นสตริงเดี่ยว (โดยมีบรรทัดคั่นด้วยอักขระใด ๆ ที่ไม่ใช่#หรือ.) หรืออาร์เรย์ / list / etc หากภาษาของคุณรองรับคุณอาจป้อนข้อมูลด้วยแต่ละบรรทัดเป็นอาร์กิวเมนต์ของฟังก์ชัน …

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