คำถามติดแท็ก ascii-art

ความท้าทายนี้เกี่ยวข้องกับการสร้างหรือแยกภาพโดยใช้ตัวอักษรเป็นสี โดยทั่วไปจะใช้เพียง 95 ตัวอักษรที่พิมพ์ได้ (จากทั้งหมด 128 ตัว) ที่กำหนดโดยมาตรฐาน ASCII จากปี 1963

3
ใช้เครื่องคิดเลขกราฟ
มีคำถามมากมายที่เกี่ยวข้องกับเครื่องคิดเลข; อย่างไรก็ตามจะไม่ปรากฏว่ามีส่วนเกี่ยวข้องกับการใช้เครื่องคิดเลขกราฟ ความท้าทาย คุณต้องเขียนโปรแกรมทั้งหมดที่ใช้หลายสูตรเป็นอินพุตจาก STDIN และกราฟไปยัง STDOUT f1(x)=x^2-x-1การป้อนข้อมูลจะใช้รูปแบบ จะมีการfตามด้วยหมายเลข 0-9 (รวม) ตามด้วย(x)=ตามด้วยสูตรกราฟ โปรแกรมของคุณควรสามารถรับอินพุตกราฟรับอินพุตเพิ่มกราฟและอื่น ๆ ได้ นี่คือรหัสกอล์ฟ กราฟของคุณควรมีช่วงแกน X ตั้งแต่ -5 ถึง 5 โดยมีความละเอียดอย่างน้อยหนึ่งจุดในทุกๆ 1/2 หน่วย ความต้องการแกน Y เหมือนกัน นี่อาจดูเหมือนเป็นช่วงเล็ก ๆ เมื่อเทียบกับเครื่องคิดเลขที่ทันสมัย ​​แต่ส่วนใหญ่จะเพิ่มขึ้นเล็กน้อย กราฟควรมีแกนที่วาดอยู่กับพวกเขาโดยมีเครื่องหมายถูกในรูปของ+จำนวนเต็ม ควรประเมินสูตรด้วยลำดับการดำเนินการปกติ จะไม่มีเส้นกำกับ / ภูมิภาคที่ไม่ได้กำหนดในสูตรเหล่านี้ ตัวแปรจะเป็น x เสมอ หากป้อนสองสูตรด้วยหมายเลขสมการเดียวกันสูตรที่เก่าที่สุดควรถูกลบและแทนที่ด้วยสูตรใหม่ สูตรเปล่าควรประเมินเป็นศูนย์ เนื่องจากมีโอกาสที่สูตรจะไม่ให้ผลคูณ 1/2 ที่ดีเสมอคุณจึงต้องปัดเศษ 1/2 ที่ใกล้ที่สุด เมื่อสูตรเป็นกราฟเส้นของมันควรจะเกิดจากจำนวนของสูตร เมื่อเส้นผ่านแกนหนึ่งแกนควรวาดที่ด้านบน เมื่อสองบรรทัดข้ามกันมันไม่สำคัญว่าจะแสดง …

2
เรียงกระดานหมากรุกด้วยสามสี
งาน: พิจารณาปัญหา: "ให้กระดานหมากรุกหายไปหนึ่งสี่เหลี่ยมจัตุรัสตัดมันเป็น 21 L-triominoes" มีหลักฐานเชิงสร้างสรรค์ที่รู้จักกันดีว่าสิ่งนี้สามารถทำได้สำหรับกระดานหมากรุกสี่เหลี่ยมขนาดใดก็ได้ที่มีกำลังสอง มันทำงานได้โดยการแยกกระดานหมากรุกออกเป็นกระดานหมากรุกขนาดเล็กที่มีรูอยู่ในนั้นและ Triomino ตัวใหญ่หนึ่งตัวจากนั้นสังเกตว่า Triomino นั้นสามารถตัดออกเป็นสี่ส่วนได้แบบเรียกซ้ำ ในงานนี้คุณจะต้องตัดกระดานหมากรุกขนาด 8x8 ไปเป็นรูปสามเหลี่ยม L และจากนั้นให้สีพวกเขาด้วยสี่สีเพื่อให้ไม่มีสามคนที่อยู่ติดกันมีสีเดียวกัน รายละเอียด: ข้อมูลที่คุณป้อนคือตำแหน่งของหลุมซึ่งให้เป็นจำนวนเต็มคู่ คุณสามารถเลือกอันใดอันหนึ่งเป็นดัชนีคอลัมน์และอันไหนคือดัชนีแถว คุณสามารถเลือกได้ว่าการเริ่มต้นแต่ละครั้งที่ 0 หรือที่ 1 และอยู่ห่างจากมุมใดบ้าง คุณอาจต้องใช้ A .. H เป็นพิกัดแรกแทน 0..7 หรือ 1..8 นอกจากนี้คุณยังสามารถยอมรับพิกัดทั้งสองที่บรรจุเป็นจำนวนเต็มเดียว 0..63 หรือ 1..64 ตามลำดับพจนานุกรม (แถวหลักหรือคอลัมน์ใหญ่จากซ้ายไปขวาหรือขวาไปซ้ายขึ้นไปขึ้นหรือลง) คุณสามารถเขียนโปรแกรมเต็มหรือฟังก์ชั่น คุณสามารถส่งออกเรียงเป็น ASCII, เป็นสี ASCII หรือเป็นกราฟิกดั้งเดิม หากคุณเลือกเอาต์พุต ASCII คุณสามารถเลือกอักขระ ASCII ที่พิมพ์ได้สี่ตัวเพื่อแสดงสี่สี หากคุณเลือก …

1
วาดลำดับของRecamánด้วย ASCII
ลำดับของRecamán ( A005132 ) เป็นลำดับทางคณิตศาสตร์ที่กำหนดดังนี้: A(n)=⎧⎩⎨0A(n−1)−nA (n−1)+nif n=0ถ้า A(n-1)−n is positive and not already in the sequenceotherwiseA(n)={0if n=0A(n-1)-nถ้า A(n-1)-n เป็นบวกและไม่ได้อยู่ในลำดับA(n-1)+nมิฉะนั้นA(n) = \begin{cases}0 & \textrm{if } n = 0 \\ A(n-1) - n & \textrm{if } A(n-1) - n \textrm{ is positive and not already in the sequence} \\ % Seems …

1
นักเคมีที่บ้าและโปรแกรมเมอร์ที่ฉลาด
backstory คุณตื่นขึ้นมาอาการวิงเวียนศีรษะในห้องทดลองทางเคมีและคุณรู้ว่าคุณถูกนักเคมีอายุมากถูกลักพาตัวไป เนื่องจากเขาไม่สามารถมองเห็นได้ดีเนื่องจากอายุของเขาเขาต้องการให้คุณทำงานเพื่อเขาและเมื่อนั้นคุณสามารถหนีจากห้องปฏิบัติการได้ งาน เป็นหน้าที่ของคุณในการส่งคืนสูตรโครงสร้างของโมเลกุลที่จะให้สูตรทางเคมีเป็นอินพุต โปรดทราบว่าจะใช้เฉพาะอะตอมคาร์บอน ( C), ออกซิเจน ( O) และไฮโดรเจน ( H) เท่านั้นเป็นอินพุต ซึ่งแตกต่างจากในสูตรทางเคมี a 0คือตัวระบุปริมาณที่ถูกต้องและ1ไม่สามารถละเว้นได้ (เช่นC1H4O0อินพุตที่ถูกต้อง แต่CH4ไม่ใช่) เพื่อป้องกันความคลุมเครือเราจะถือว่าพันธะคู่และสามไม่ปรากฏในโมเลกุล อะตอมคาร์บอนทั้งหมดต้องการ 4 พันธะเดี่ยวอะตอมออกซิเจนทั้งหมดต้องการ 2 และอะตอมไฮโดรเจนต้องการหนึ่ง นอกจากนี้เรายังสมมติว่าO-Oไม่มีพันธบัตรเช่นกัน โมเลกุลไม่จำเป็นต้องมีอยู่หรือไม่เสถียร อินพุตจะไม่ประกอบด้วย3อะตอมของคาร์บอนมากกว่าเพื่อให้แน่ใจว่าความสว่างในการแสดงผลของเอาต์พุต คุณควรแสดงโมเลกุลที่มีอะตอมของคาร์บอนจัดเรียงเป็นเส้นตรงโดยไม่หยุดชะงัก เออร์โกไม่มีC-O-Cพันธบัตร คุณต้องส่งคืนโมเลกุลที่เป็นไปได้ทั้งหมดซึ่งไม่รวมอยู่ในกฎก่อนหน้านี้ คุณไม่จำเป็นต้องจัดการอินพุตที่ไม่ถูกต้อง ตัวอย่างต่อไปนี้แสดงวิธีแก้ปัญหาทั้งหมดที่คุณต้องจัดการกับโมเลกุลนั้น การหมุน 180 องศาในระนาบของหน้าหนึ่งในสูตรของโมเลกุลนั้นถือเป็นความซ้ำซ้อนและไม่จำเป็นต้องแสดง ในตัวอย่างด้านล่างฉันจะแสดงสูตรที่เป็นไปได้ทั้งหมดสำหรับโมเลกุลจากนั้นชี้ให้เห็นสิ่งที่ไม่จำเป็นต้องแสดง ตัวอย่าง การป้อนข้อมูล: C2H6O2 อันดับแรกนี่คือสูตรทั้งหมดที่เป็นไปได้สำหรับข้อมูลนี้ (ขอบคุณ @Jonathan Allan) 01 H | O H …

7
วาดไดอะแกรมการกำหนดเวลาดิจิทัล XNOR
ด้านล่างนี้คือแผนผังกำหนดเวลาแบบดิจิทัล (วงจร) สำหรับเกตตรรกะXNOR ┌─┐ ┌─┐ ┌─────┐ ┌─┐ ┌─┐ ┌───┐ A ──┘ └─┘ └─┘ └─┘ └─┘ └─┘ └── ┌───┐ ┌───┐ ┌─┐ ┌─────┐ ┌─┐ ┌─┐ B ┘ └─┘ └─┘ └─┘ └───┘ └─┘ └ ┌─────┐ ┌─┐ ┌─┐ ┌───┐ X ──┘ └───┘ └───┘ └───┘ └──── เป้าหมายของคุณคือทำซ้ำตามที่อธิบายไว้ กฎ: คุณสามารถพิมพ์หรือคืนสตริงหลายบรรทัด อนุญาตให้ใช้จำนวนการสุ่มและ / หรือการขึ้นบรรทัดใหม่ชั้นนำได้ อนุญาตให้ใช้ช่องว่าง Trailing (แต่ไม่นำหน้า!) …

3
กระดานหมากรุกศิลปะ ASCII
ในการท้าทายนี้คุณต้องวาดกระดานหมากรุกด้านล่างและอนุญาตให้มีการเคลื่อนไหว 1. การวาดภาพ สี่เหลี่ยมสีขาวแต่ละอันมีช่องว่าง 5x9 สี่เหลี่ยมจัตุรัสสีดำแต่ละอันมี 5x9 colons กระดานล้อมรอบด้วยเส้นขอบของทวิภาค ชิ้นส่วนมีความกว้าง 5 ตัวอักษรและนั่งที่แถวด้านล่างของจัตุรัสตรงกลาง เบี้ยมีความกว้าง 4 ตัวอักษร พวกเขานั่งตรงกลางด้านขวาเล็กน้อยโดยมีช่องว่าง 3 ช่องทางด้านซ้ายและช่องว่าง 2 ช่องทางด้านขวา พวกเขานั่งหนึ่งบรรทัดเหนือด้านล่างของจัตุรัส จะต้องไม่มีช่องว่างด้านนอกพื้นที่ของคณะกรรมการยกเว้นการขึ้นบรรทัดใหม่ที่เป็นตัวเลือก กระดานและหมากรุกจะถูกวาดตามที่แสดงยกเว้นว่า: คุณอาจยอมให้:ช่องสี่เหลี่ยมสีดำและเส้นขอบเป็นสัญลักษณ์ที่แตกต่างกันและคุณอาจแทนที่ส่วนที่@เป็นสีดำเป็นสัญลักษณ์อื่น (แต่ไม่ใช่แบบเดียวกับที่ใช้สำหรับสี่เหลี่ยมสีดำ) คุณสามารถย้ายเบี้ยหนึ่งตัวไปทางซ้ายหากคุณต้องการ . :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: : ::::::::: :::www::: _+_ ::::::::: :::::::::: : |_|_| :: _,,::: (/) :::)@(::: )@( :::(/)::: _,, ::|_|_|::: : |@| ::"- \~:: |@| :::|@|::: …

9
ตั้งค่าสถานะตัวเข้ารหัสสัญญาณ
เป้าหมายของคุณคือการเขียนเข้ารหัสธงสัญญาณซึ่งจะแปลงเป็นประโยคให้เป็นตัวอักษรธงตรงกันสัญญาณให้สอดคล้องกับระบบสัญญาณที่อธิบายในวิกิพีเดีย สมมติว่าอินพุตเป็นประโยคเดียวที่จัดเตรียมผ่าน stdin (หรือเทียบเท่า) เอาต์พุตของคุณควรเป็นชุดของเซมาฟอร์อักขระโดยแต่ละแถวแสดงถึงหนึ่งคำจากประโยค คุณต้องจัดการกับตัวอักษร (AZ) เท่านั้นและควรละเว้นอักขระที่ไม่ใช่ช่องว่างอื่น ๆ ทั้งหมด แต่คุณต้องสามารถจัดการได้ทั้งตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก การส่งออกของคุณได้รับอนุญาตให้มีช่องว่างพิเศษ ตัวอักษรสัญญาณต้องแสดงเป็นตาราง 3x3 กับที่อยู่ตรงกลางและธงตำแหน่งแทนด้วยตัวอักษรO | - / \อักขระเซมาฟอร์แต่ละตัวจะต้องแยกจากอักขระที่อยู่ติดกันด้วยช่องว่างและแต่ละแถวต้องคั่นด้วยบรรทัดว่าง ไม่ต้องกังวลเกี่ยวกับการห่อคำที่อาจยาวเกินไปสำหรับการแสดงผลของคุณ - ทำเป็นว่าเส้นของคุณมีความยาวไม่ จำกัด ตัวอย่างอินพุต: abcdefg hijklmn opqrstu vwxyz ตัวอย่างผลลัพธ์: \ | / O -O O O O O- O /| | | | | | |\ \ | | / …

2
ล่ามสำหรับทฤษฎีจำนวนโมดูโล n
ประโยคของทฤษฎีจำนวน (สำหรับวัตถุประสงค์ของเรา) เป็นลำดับของสัญลักษณ์ต่อไปนี้: 0และ'(ตัวตายตัวแทน) - ตัวตายตัวแทนหมายถึง+1ดังนั้น0'''' = 0 + 1 + 1 + 1 + 1 = 4 +(เพิ่มเติม) และ*(การคูณ) = (เท่ากับ) (และ)(วงเล็บ) ตัวดำเนินการเชิงตรรกะnand( a nand bคือnot (a and b)) forall (ปริมาณสากล) v0, v1, v2ฯลฯ (ตัวแปร) นี่คือตัวอย่างของประโยค: forall v1 (forall v2 (forall v3 (not (v1*v1*v1 + v2*v2*v2 = v3*v3*v3)))) นี่not …
12 code-golf  number-theory  parsing  code-golf  kolmogorov-complexity  code-golf  code-golf  array-manipulation  matrix  code-golf  array-manipulation  code-golf  string  code-challenge  graphical-output  compression  code-golf  kolmogorov-complexity  code-golf  sequence  array-manipulation  code-golf  number  base-conversion  code-golf  string  decision-problem  code-golf  string  ascii-art  code-golf  string  random  code-challenge  brainfuck  code-generation  code-golf  code-golf  quine  code-golf  interpreter  code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

9
มหาพีระมิดแห่งควิน
งานนี้เป็นความท้าทายที่ค่อนข้างง่ายด้วยการบิดคุณต้องเอาท์พุทซอร์สโค้ดของคุณในรูปของปิรามิด รูปร่างของปิรามิดมีการกำหนดไว้ด้านล่าง: 1 234 56789 ABCDEFG HIJKLMNOP QRSTUVWXYZa bcdefghijklmn ......etc...... ข้อ จำกัด หลักของความท้าทายนี้คือควินของคุณต้องมีจำนวนไบต์เพียงพอที่จะไม่ขัดขวางรูปแบบของปิรามิด ตัวอย่างเช่นความยาวของโปรแกรมต่อไปนี้จะใช้ได้: 1-byter: 1st layer of the pyramid (not allowed by definition of a quine). 4-byter: 1st and 2nd layers of the pyramid. 9-byter: 1st, 2nd and 3rd layers of the pyramid. etc... ดังนั้นหากโปรแกรมของคุณคือ: QWERTY มันจะไม่ถูกต้องเพราะมันจะจัดเรียงเช่น: Q WER …

5
วางแผนปฏิทิน ASCII
รับรายการกิจกรรมและเวลา / วันที่เริ่มต้นส่งออกปฏิทิน ASCII-art ที่แสดงกิจกรรมในวันที่เหมาะสม กิจกรรมทั้งหมดได้รับการรับประกันว่าจะอยู่ในเดือนเดียวกันไม่มีกิจกรรมสองกิจกรรมในวันเดียวกันและกิจกรรมทั้งหมดจะได้รับการบรรจุภายในกล่องปฏิทิน ปฏิทินมีวันที่ที่มุมบนซ้ายของแต่ละกล่องกล่องมีช่องว่าง 9 ช่องกว้าง 5 ช่องสูงล้อมรอบด้วย-และ|และตัวย่อสองตัวอักษรสำหรับวันในสัปดาห์นั้นอยู่เหนือแถวแรกและสัปดาห์เริ่มต้นด้วยวันอาทิตย์ ตัวอย่างเช่นกำหนดกิจกรรมต่อไปนี้: 10/5/2018 - 9:00am - Sandbox calendar challenge 10/9/2018 - 9:00am - Post challenge to main 10/10/2018 - 10:00am - Profit 10/31/2018 - 7:30pm - Halloween party เอาท์พุทปฏิทินที่สอดคล้องกันนี้: Su Mo Tu We Th Fr Sa ----------------------------------------------------------------------- | |1 |2 …

5
ติดตามวัตถุในพื้นที่ 2d
ลักษณะ งานของความท้าทายนี้คือการประดิษฐ์โปรแกรมหรือฟังก์ชั่นที่ติดตามวัตถุได้รับในn × nn×nn×nพื้นที่ I / O โปรแกรมของคุณจะได้รับ 3 อินพุตซึ่งอาจใช้วิธีการที่เหมาะสม : nจะมีขนาดเท่ากับด้านข้างของเครื่องบิน (ดังนั้นสำหรับn = 5n=5n=5เครื่องบินของคุณจะเป็น5 × 55×55×5 ) คุณอาจคิดว่าnจะเป็นจำนวนเต็มคี่เสมอ sจะเป็นตำแหน่งเริ่มต้นของวัตถุที่กำหนดเป็นคู่ของ(x,y)(x,y)(x, y)พิกัด Dจะเป็นเวกเตอร์ของคู่ที่สั่ง Dจะเป็นไปตามรูปแบบD=[(d0,t0),(d1,t1),...,(dn,tn)]D=[(d0,t0),(d1,t1),...,(dn,tn)]D = [(d_0,t_0),(d_1,t_1),...,(d_n,t_n)]ซึ่งdkdkd_kจะเป็นหนึ่งของ'N', 'NE', 'E', 'SE', 'S', 'SW', 'W', 'NW'สำหรับพระคาร์ดินัลและทิศทาง intercardinal หลักและtktkt_kจะเป็นจำนวนเต็มสำหรับจำนวนของ 'เห็บฯ เมื่อได้รับอินพุตเหล่านี้โปรแกรมของคุณจะต้องส่งออกการติดตามวัตถุในระนาบ กฎระเบียบ เอาท์พุทจะต้องมีขอบเขตของเครื่องบิน เช่น: - 21012 + + ┌─────┐ 2││ 1││ 0││ 1││ 2││ -└─────┘ …

4
ขุด timelapse ของเหมือง
คุณชอบที่จะดูช่วงเวลาที่ยอดเยี่ยมของสิ่งก่อสร้างหรืองานขนาดใหญ่อื่น ๆ ในไม่กี่นาทีหรือไม่? ให้ทำที่นี่ เราจะมองไปที่เหมืองขุดขุดทำภาพในแต่ละวันเพื่อดูความคืบหน้าทั้งหมด และงานของคุณคือแสดงให้เราเห็นกระบวนการนี้! เหมืองหินถูกกำหนดโดยความกว้างของชั้นแรก รถขุดถูกกำหนดโดยความสามารถในการขุดในหนึ่งวัน อินพุต ความกว้างของเหมือง เลขจำนวนเต็มเสมอ> = 1 Excavator dig speed เลขจำนวนเต็มเสมอ> = 1 เอาท์พุต ความคืบหน้าของการขุดเหมืองในแต่ละวัน เริ่มต้นด้วยพื้นดินที่ไม่ถูกแตะต้องและเสร็จสิ้นด้วยการทำเหมือง กฎระเบียบ ในวันสุดท้ายอาจมีหน่วยขุดน้อยกว่าความสามารถในการขุด งานที่มากเกินไปจะไม่ถูกนำไปใช้ในทุกที่ดังนั้นคุณควรส่งออกเหมืองที่ขุดได้อย่างสมบูรณ์ ความคืบหน้าทุกวันจะต้องมีอยู่ในผลลัพธ์ในครั้งเดียว คุณไม่สามารถล้างหรือเขียนทับความคืบหน้าของวันก่อนหน้าในผลลัพธ์ ขึ้นบรรทัดใหม่และนำขึ้นบรรทัดใหม่สำหรับผลลัพธ์ในแต่ละวันเป็นที่ยอมรับในจำนวนที่สมเหตุสมผล นี่คือรหัสกอล์ฟดังนั้นโปรดทำให้รหัสของคุณเล็กที่สุดเท่าที่จะทำได้ ชี้แจง งานเริ่มต้นด้วยพื้นราบ ความยาวของพื้นดินที่แสดงคือความกว้างของเหมืองหิน +2 ดังนั้นจะมีอักขระขีดล่างหนึ่งตัวที่ทั้งสองด้านของเหมืองหิน __________ เหมืองที่ขุดจะมีลักษณะเช่นนี้สำหรับความกว้าง: _ _ \ / \ / \ / \/ และเช่นนี้สำหรับความกว้างที่แปลก _ _ \ / …

6
การนับแกะเพื่อผล็อยหลับไป
คนส่วนใหญ่มีความคุ้นเคยกับเรื่องเกี่ยวกับการนับแกะเพื่อหลับ มีฝูงแกะบางตัวกระโดดข้ามรั้วและคุณนับจำนวนแกะเมื่อกระโดด คาดคะเนสิ่งนี้จะช่วยให้จิตใจของคุณสงบลงและทำให้คุณเข้าสู่สภาวะการนอนหลับเพื่อที่คุณจะหลับไป นี่คือแกะ ASCII ที่หันไปทางขวากำลังรอการนับ: '00^> || นี่คือแกะ ASCII ที่กระโดดข้ามรั้ว: '00^> /\ ++ นี่คือสิ่งที่หันไปทางซ้ายโดยนับมาแล้ว: <^00' || ความท้าทาย ได้รับการป้อนข้อมูลจำนวนเต็มสองnและmมีn > 2การอธิบายทั้งหมดแกะหลายวิธีและm > 0บอกวิธีการแกะจำนวนมากได้รับนับแล้วส่งออกเป็นตัวแทนศิลปะ ASCII แกะนับจะผล็อยหลับไป ตอนนี้สำหรับการบิด: เนื่องจากขนาดของปากกาที่แกะอยู่แถวบนสุดสามารถเก็บ10แกะได้สูงสุดไม่นับแกะที่กำลังกระโดดซึ่งต้องอยู่ในแถวด้านบนเสมอ แถวที่ตามมาไม่สามารถมีแกะอยู่ด้านนอกปากกาของพวกเขา (คุณไม่มีแกะทางซ้ายในแถวที่สองมากกว่าที่คุณทำในแถวแรกและเหมือนกันสำหรับด้านขวา) หากมี11แกะรวมกันหรือมากกว่าแถวบนสุดจะต้องมี10บวกกับแกะกระโดดในนั้น ช่องว่างนำหน้า / ต่อท้ายและช่องว่างระหว่างแกะไม่สำคัญตราบใดที่: มีอักขระช่องว่างอย่างน้อยหนึ่งตัวระหว่างแกะ ตัวละครทั้งหมดเข้าแถวกันอย่างเหมาะสม ตราบใดที่กฎเหล่านี้บรรลุผลการจัดเตรียมที่แท้จริงของแกะก็ขึ้นอยู่กับการใช้งานของคุณ ตัวอย่าง ตัวอย่างเช่นนี่คือn=3และm=1กรณีที่ง่ายที่สุด '00^> '00^> /\ <^00' || ++ || นี่คือn=11และm=6แกะส่วนใหญ่ที่สามารถพอดีกับเส้นแนวนอนหนึ่งเส้น '00^> '00^> '00^> '00^> …

8
เห็นภาพรวมการยกเว้น
การรวม - การแยกช่วยให้คุณคำนวณขนาดของสหภาพและจุดตัดระหว่างชุดที่ทราบค่าอื่น ๆ ฉันจะไม่อธิบายอย่างถ่องแท้ แต่ความท้าทายของคุณคือการมองเห็นการรวมการยกเว้นใน Venn Diagram เพราะฉันดีคุณจะใช้รูปสี่เหลี่ยมผืนผ้าไม่ใช่แวดวง คุณจะได้รับรายชื่อของรูปสี่เหลี่ยมผืนผ้าแสดงโดยพิกัดมุมบนซ้ายและขวาล่างในรูปแบบที่เหมาะสมใด ๆ (รายการของ tuples 4 รายการของคู่คู่รายการคู่ ฯลฯ ) คุณสามารถสันนิษฐานได้ว่าพิกัดทั้งหมดนั้นไม่เป็นลบและอยู่ในช่วงหมายเลข (สมเหตุสมผล) ของภาษาของคุณ (โปรดระบุว่ามันคืออะไรถ้ามันน้อยกว่า 128) คุณสามารถเลือกที่จะเป็นแบบรวมด้านซ้ายหรือด้านซ้ายแบบเอกสิทธิ์เฉพาะบุคคลและแบบด้านขวาหรือแบบด้านขวา ไม่ว่าคุณจะเลือกรูปแบบใดคุณสามารถสมมติว่ารูปสี่เหลี่ยมผืนผ้าทั้งหมดมีอย่างน้อย 1x1 จากนั้นคุณจะต้องวาดแต่ละสี่เหลี่ยมบนหน้าจอ (ผ้าใบ ASCII) โดยใช้อักขระที่ไม่ใช่ช่องว่างตัวkเดียวซึ่งเป็นของคุณที่จะเลือก อย่างไรก็ตามเมื่อใดก็ตามที่มีสี่เหลี่ยมสองรูปทับกันพื้นที่ทับซ้อนจะถูกวาดด้วยอักขระที่ไม่ใช่ช่องว่างl != kอื่น เมื่อใดก็ตามที่สามสี่เหลี่ยมซ้อนกันพื้นที่ที่ทับซ้อนกันควรจะวาดด้วยkและสำหรับเป็นเลขคี่สี่เหลี่ยมครอบคลุมและเป็นเลขคู่,kl พื้นหลังควรเป็นช่องว่างเดียว ( 0x20) กรณีทดสอบ ( k = "#", l = ".") 0 0 9 9 1 1 …

1
บอร์ดของ Stackin
ฉันมีบอร์ดมากมายที่ฉันต้องการเพื่อให้มีพื้นที่น้อยที่สุดเท่าที่จะทำได้ น่าเสียดายที่กระดานล้มถ้าฉันสแต็คพวกเขามากกว่า 10 สูง ฉันต้องการโปรแกรมที่จะบอกวิธีกองซ้อนบอร์ดให้ใช้พื้นที่แนวนอนให้น้อยที่สุดเท่าที่จะทำได้โดยไม่ต้องวางบอร์ดซ้อนกันสูงกว่าสิบหรือมีกระดานแขวนอยู่เหนือพื้นที่ว่าง งานของคุณ: เขียนโปรแกรมหรือฟังก์ชั่นที่เมื่อกำหนดอาร์เรย์ที่มีความยาวของบอร์ดเอาต์พุตในรูปแบบ ASCII จะสามารถจัดวางบอร์ดเพื่อประหยัดพื้นที่แนวนอนได้มากที่สุดโดยไม่ต้องซ้อนบอร์ดสูงกว่า 10 หรือมีส่วนใด ๆ คณะแขวนอยู่เหนือพื้นที่ว่างเปล่า ASCII art ของคุณควรแสดงการกำหนดค่าของบอร์ดโดยแต่ละอันจะแสดงโดยใช้อักขระที่แตกต่างกัน จะมีบอร์ดได้สูงสุด 20 บอร์ด ตัวอย่างเช่นหากอินพุตเป็น [2,2,4,2,2,2,4,4,4] เอาต์พุตที่เป็นไปได้คือ: dhh dgg dff dee abc abc abc abc ซึ่งเป็นการกำหนดค่าที่มั่นคง (แม้ว่าจะล้มลงใน ~ 0.1 วินาทีในชีวิตจริง) การป้อนข้อมูล: อาร์เรย์ที่มีจำนวนเต็มสูงสุด 20 รายการแสดงความยาวของกระดาน เอาท์พุท: ศิลปะ ASCII แสดงการกำหนดค่าของบอร์ดตามที่อธิบายไว้ข้างต้น กรณีทดสอบ: โปรดทราบว่าอาจมีวิธีแก้ไขปัญหาอื่น ๆ สำหรับกรณีทดสอบและอักขระที่แสดงสำหรับแต่ละบอร์ดอาจแตกต่างกัน [12,2,2,2,3,4,4,8,8] -> ffgghhiii …

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