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

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

20
ฟาโรสับเปลี่ยนอาเรย์
ฟาโรสับเปลี่ยนเป็นเทคนิคที่ใช้บ่อยโดยนักมายากลที่ "สับ" ดาดฟ้า เพื่อทำการสับไพ่แบบแฟโรคุณต้องตัดเด็คเป็น 2 ส่วนเท่ากันก่อน ตัวอย่างเช่น [1 2 3 4 5 6 7 8] แฟโรสับเป็น [1 5 2 6 3 7 4 8] สามารถทำซ้ำได้หลายครั้ง น่าสนใจพอถ้าคุณทำซ้ำครั้งนี้มากพอคุณจะกลับมาที่อาร์เรย์เดิมเสมอ ตัวอย่างเช่น: [1 2 3 4 5 6 7 8] [1 5 2 6 3 7 4 8] [1 3 5 7 2 4 6 …
31 code-golf  permutations  card-games  code-golf  graphical-output  random  code-golf  image-processing  color  code-golf  primes  code-golf  math  arithmetic  combinatorics  decision-problem  code-golf  sequence  number-theory  binary  code-golf  number-theory  set-theory  code-golf  hashing  code-golf  game  card-games  code-golf  ascii-art  code-golf  arithmetic  array-manipulation  jelly  code-golf  string  array-manipulation  code-golf  sorting  code-challenge  code-golf  number  date  binary  code-golf  arithmetic  code-golf  math  number  linear-algebra  polynomials  code-golf  ascii-art  code-golf  grid  decision-problem  code-golf  string  combinatorics  code-golf  string  kolmogorov-complexity  arithmetic  date  code-golf  number  data-structures  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  array-manipulation 

18
ลำแสงจะชนหรือไม่
<>^vหน่อเลเซอร์ลำแสงตรงในหนึ่งในสี่ทิศทางมุมฉากแสดงโดย ตรวจสอบว่ามันจะถึงเป้าหมายOในตารางสี่เหลี่ยม แต่ละรายการจะถูกตี (True): ..... ...O. ..... ...^. ..... >O. ... v.... O.... ........... ........... O.........< ........... สิ่งเหล่านี้จะพลาด (เท็จ): ...... ...... .^..O. ...... .....> O..... ...... ...... .O. ... .v. .....<. ..O.... อินพุต:ตารางสี่เหลี่ยมจัตุรัส.ขนาดอย่างน้อย 2x2 โดยมีเป้าหมายOเดียวและเลเซอร์หนึ่งอันที่เป็นหนึ่งใน<>^vนั้น บรรทัดสามารถเป็นรายการของสตริงอาร์เรย์ 2 มิติหรือรายการของอักขระที่ซ้อนกันหรือสตริงที่คั่นด้วยการขึ้นบรรทัดใหม่เดี่ยวด้วยการขึ้นบรรทัดใหม่ที่เป็นทางเลือก เอาท์พุท : ค่าความจริงที่สอดคล้องกันหากลำแสงเลเซอร์ไปถึงเป้าหมายและค่าที่ผิดพลาดหากมันหายไป ฉันจะพิจารณาการส่งที่ไม่ใช้นิพจน์ทั่วไป (หรือการจับคู่สตริงตามรูปแบบในตัว) เป็นหมวดหมู่แยก หากคุณใส่(no regex)ชื่อภาษาคำตอบของคุณจะปรากฏแยกต่างหากในกระดานแต้มนำ แสดงตัวอย่างโค้ด var QUESTION_ID=80196,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/80196/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function …

4
ASCII Doodling: เลเซอร์ในกล่อง
บางครั้งเมื่อฉันวาดรูปฉันวาดรูปสี่เหลี่ยมผืนผ้าเริ่มต้นด้วยเส้นทแยงมุมจากมุมใดมุมหนึ่งและจากนั้นก็แค่ลากเส้นเป็นเส้นโดย "สะท้อน" เมื่อใดก็ตามที่ฉันตีด้านข้างของรูปสี่เหลี่ยมผืนผ้า ฉันทำสิ่งนี้ต่อไปจนกว่าฉันจะตีอีกมุมหนึ่งของสี่เหลี่ยม (และหวังว่าอัตราส่วนของสี่เหลี่ยมมุมฉากของฉันจะไม่ลงตัวเลย) มันเหมือนกับการติดตามเส้นทางของแสงเลเซอร์ที่ส่องเข้าไปในกล่อง คุณต้องสร้างผลงานชิ้นนั้นด้วยศิลปะ ASCII เป็นตัวอย่างให้พิจารณากล่องความกว้างและความสูง5 3เราจะเริ่มที่มุมซ้ายบนเสมอ #เครื่องหมายเขตแดนของกล่อง โปรดทราบว่าความกว้างและความสูงอ้างถึงมิติด้านใน ####### ####### ####### ####### ####### ####### ####### #\ # #\ # #\ \# #\ /\# #\ /\# #\/ /\# #\/\/\# # \ # # \ /# # \ /# # \/ /# # \/ /# #/\/ /# #/\/\/# …

8
พื้นที่ของรูปหลายเหลี่ยม ASCII
คุณควรเขียนโปรแกรมหรือฟังก์ชั่นที่รับสตริงที่แทนรูปหลายเหลี่ยมแบบ ascii-art เมื่ออินพุตและเอาต์พุต ot ส่งคืนพื้นที่ของรูปหลายเหลี่ยม อินพุตเป็นสตริงที่ประกอบด้วยอักขระ_ / \ L V spaceและnewlineการกำหนดรูปหลายเหลี่ยมอย่างง่าย (ซึ่งหมายถึงไม่มีเซ็กเมนต์พิเศษไม่มีการแตะด้วยตนเองและไม่มีการตัดกันด้วยตนเอง) พื้นที่ของเซลล์อักขระเดียวคือ 2 _แยกเซลล์ออกเป็นขนาด0และ2 \แยกเซลล์ออกเป็นขนาด1และ1 /แยกเซลล์ออกเป็นขนาด1และ1 Lแยกเซลล์ออกเป็นขนาด0และ2 Vแยกเซลล์ออกเป็นขนาด1และ1(ทั้งสองด้านของVจะอยู่ในด้านเดียวกันของรูปหลายเหลี่ยมเพื่อให้พวกเขาได้รับการปฏิบัติร่วมกันในรายการ) ตัวละครทุกตัวเชื่อมต่อทั้งสองมุมของเซลล์ตัวละครที่คุณคาดหวัง (เช่นบนซ้ายและขวาบนในกรณีของV) ตัวอย่างที่มีพื้นที่ 7 ( 1+2+1ในแถวที่สองและ1+1+1ในแถวที่สาม): _ / \ V\/ อินพุต อินพุตจะจัดรูปแบบสี่เหลี่ยมผืนผ้านั่นคือจะมีจำนวนอักขระเท่ากันระหว่างบรรทัดใหม่ สามารถมีช่องว่างพิเศษด้านใดด้านหนึ่งของรูปหลายเหลี่ยม ขึ้นบรรทัดใหม่ต่อท้ายเป็นทางเลือก เอาท์พุต จำนวนเต็มบวกเดียวคือพื้นที่ของรูปหลายเหลี่ยม ตัวอย่าง เอาต์พุตอยู่หลังแถวสุดท้ายของอินพุต _ V 1 /L \/ 3 /VV\ L / L/ 14 ____/\ \ …

30
ASCII Gantt ง่าย ๆ
นี่คือหนึ่งที่ง่าย: พิมพ์ ASCII แผนภูมิแกนต์ กำหนดช่วงงาน '(เริ่มต้น - Tuples เวลาสิ้นสุด) พิมพ์ Gantt Timeline ในรูปแบบของ-ตัวละครสำหรับแต่ละระยะเวลางาน - แต่ละงานในบรรทัดใหม่ ตัวอย่าง สมมติว่างานของฉันอยู่ในช่วง28->35, 34->40, 39->44Gantt จะมีลักษณะเช่นนี้: ------- ------ ----- ข้อมูลจำเพาะ คุณสามารถเขียนโปรแกรมเต็มฟังก์ชั่นที่มีชื่อหรือฟังก์ชั่นที่ไม่ระบุชื่อ โปรแกรมของคุณ / ฟังก์ชั่นควรจะยอมรับงานผ่าน STDIN หรือเป็นข้อโต้แย้ง งานแต่ละงานควรจะแสดงเป็นสตริงของstart->endที่startและendเป็นจำนวนเต็ม งานถูกคั่นด้วยช่องว่างหรือเครื่องหมายจุลภาค อีกวิธีหนึ่งคุณอาจได้รับเป็น Tuple of Integers หรือ Array / Collection 2 Integers (ตัวอย่างเช่นใน JavaScript คุณสามารถรับมัน[start,end]- เป็นสิ่งที่ได้รับอนุญาต) ควรสนับสนุนจำนวนงานที่ไม่เป็นลบ (อาร์กิวเมนต์) ใด ๆ …

13
วาดผ้าห่มศิลปะ ASCII แบบสุ่ม
สำหรับความท้าทายนี้ผ้าห่มศิลปะ ASCII จะเป็นบล็อกของข้อความกว้าง 24 ตัวอักษรและสูง 18 บรรทัดซึ่งประกอบด้วยอักขระ=-<>/\ในรูปแบบคล้ายผ้าห่มที่มีทั้งแนวนอนและแนวตั้งสมมาตร ผ้าห่มตัวอย่าง: ======================== ------------------------ //\\//\\\//\/\\///\\//\\ <<><<>>>>><<>><<<<<>><>> /\\/\\\\/\/\/\/\////\//\ ------------------------ /\/////\\///\\\//\\\\\/\ \///\/\/\\\\////\/\/\\\/ \///\/\/\\\\////\/\/\\\/ /\\\/\/\////\\\\/\/\///\ /\\\/\/\////\\\\/\/\///\ \/\\\\\//\\\///\\/////\/ ------------------------ \//\////\/\/\/\/\\\\/\\/ <<><<>>>>><<>><<<<<>><>> \\//\\///\\/\//\\\//\\// ------------------------ ======================== ผ้าห่มทั้งหมดมีรูปแบบเดียวกัน: พวกเขามักจะ 24 ถึง 18 บรรทัดบนสุด (บรรทัดที่ 1) และบรรทัดล่างสุด (บรรทัดที่ 18) อยู่=ตลอดทาง บรรทัดที่ 2, 6, 13 และ 17 -ล้วนผ่านมาแล้ว สาย 4 และ 15 จะเหมือนกันสุ่มสมมาตรแนวนอนรูปแบบของและ<> …

5
พิพิธภัณฑ์สัตว์น้ำ One Line
พ่อแม่ผัวของฉันมีบ่อปลาในบ้านของพวกเขาเต็มไปด้วยปลาคราฟ มันไม่ได้ข้ามความคิดของฉันจนกว่าฉันจะสังเกตเห็นสารสกัดต่อไปนี้จากรหัสของฉัน ',') & '_' ... ฉันหันหน้าเข้าหาปลาจากหน้าจอของฉัน ... ซึ่งทำให้ฉันมีความคิดที่ดี ... การแสวงหาของฉันสำหรับคุณนักกอล์ฟที่รักของฉันคือการสร้างตู้ปลา ASCII แบบบรรทัดเดียวด้วยกฎต่อไปนี้: ขนาดของตู้ปลาจากด้านข้างของถังไปยังอีกด้านหนึ่งของถังควรมีขนาดไม่เกิน 60 ตัวอักษรและไม่ควรใหญ่กว่า 80 ตัวอักษร ต้องระบุด้านของถังโดยใช้ท่อ / บาร์ (|ตัวอักษร ) ปลาจะต้องสามารถ "ว่ายน้ำ" จากซ้ายไปขวาระหว่างด้านข้างของถัง ขณะที่พวกเขากำลังจะหมุนจำเป็นต้องมีมุมมองด้านหน้าสำหรับการเปลี่ยนจากทิศทางหนึ่งไปยังอีกทิศทางหนึ่ง ปลาต้องมีลักษณะดังนี้: }}< }} ',') ปลาว่ายน้ำถูกต้อง (',' {{ >{{ ปลาว่ายซ้าย }}('_'){{ ปลาหันหน้าไปทางด้านหน้า เมื่อปลาหันไปเปลี่ยนทิศทาง (โอกาส 30%) มันจะต้องเริ่มจากทิศทางเดียวหันหน้าไปทางด้านหน้าจากนั้นหันไปอีกทิศทางหนึ่ง ... ตรวจสอบให้แน่ใจว่ามีที่ว่างเพียงพอสำหรับปลาที่จะเปิด ขอบของรถถังขั้นต่ำ ... หากปลาไม่ได้เป่าฟองหรือเปลี่ยนทิศทางมันจะดำเนินต่อไปในทิศทางที่มันกำลังเผชิญหากมันได้รับภายในหกช่องว่างด้านข้างของถังมันจะเปลี่ยนทิศทาง ปลา (หันหน้าไปทางซ้ายหรือขวา) ในบางโอกาส …

22
การเล่นกอล์ฟ ASCII-art
ลองเล่นกอล์ฟชิ้นส่วนศิลปะ ASCII ซึ่งเป็นตัวแทนของนักกอล์ฟ: '\ . |> 18 >> \. ' | O >> 'o | \. | / \ | / /. ' | JGS ^^^^^^^ `^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ที่มา: JGS - http://www.retrojunkie.com/asciiart/sports/golf.htm กฎ: ไม่อนุญาตให้ป้อนข้อมูล ไม่อนุญาตให้ใช้ทรัพยากรภายนอก ผลลัพธ์จะต้องตรงกับข้อความนี้แสดงในแบบอักษร monospace (คอนโซล OS, คอนโซล JS, แท็ก HTML <pre>, ... ) รวมถึงตัวแบ่งบรรทัดด้านหน้าและด้านหลัง อนุญาตให้ใช้เครื่องหมายคำพูดล้อมรอบหรืออัญประกาศคู่ได้ (คอนโซล JS …

30
ตัวละครข้าม
ฉันคาดหวังว่าจะโพสต์สิ่งที่ซับซ้อนกว่าเดิมเป็นปริศนาตัวแรกใน PCG แต่โดยเฉพาะคำถามการบ้านใน Stack Overflow เป็นแรงบันดาลใจให้ฉันโพสต์สิ่งนี้ พวกเขาต้องการ: พิมพ์รูปแบบต่อไปนี้สำหรับคำที่ระบุที่มีจำนวนตัวอักษรแปลก P M R A O R G O R R A P M C ++ ขอให้สังเกตว่าตัวอักษรเป็นอัศวินที่เคลื่อนไหวในรูปแบบที่คุณต้องการพิมพ์ ดังนั้นคอลัมน์อื่น ๆ จะว่างเปล่า - (ขอบคุณxnor ที่ชี้เรื่องนี้ออกมา) กฎระเบียบ ห้ามใช้ C ++ เพราะฉันอาจเชื่อมโยงคำถามนี้ที่นั่น คุณอาจใช้stdoutหรือวิธีการใด ๆ ในการส่งออกสตริง (เช่นalert()ใน JavaScript) เช่นเคยรหัสสั้นที่สุดชนะ

7
หมอตำแย! ฉันเป็นนายอำเภอของรหัสกอล์ฟ!
เป็นไปได้ว่าทุกคนที่ใช้ Twitter เมื่อสองสามเดือนก่อนจะรู้เกี่ยวกับ 'Howdy! ฉันเป็นนายอำเภอแห่ง X "meme ภาพวาดที่เรียบง่ายของนายอำเภอถูกวาดด้วยอิโมจิและการเปลี่ยนแปลงเพื่อให้เข้ากับธีมดังนั้นฉันคิดว่ามันถึงเวลาแล้วที่ Sheriff of Code Golf ที่นี่เขาอยู่: ### ##### ### ### ### # ##### # # # # # # # # # # ### # # # # # # # # โดยเฉพาะอันนี้มี 'พิกเซล' ซึ่งมีความกว้างหนึ่งอักขระและสูงหนึ่งตัว เพื่อสร้างเขาข้อโต้แย้งจะเป็น 1 และ 1 เกิดอะไรขึ้นถ้าเขาจะกว้างกว่าเขาสูง? ###### ########## ###### …

15
ABAA / ABBB: สร้างรูปแบบ 2D แบบเรียกซ้ำ
ฉันยุ่งกับเครือข่ายตัวต้านทานที่ไม่มีที่สิ้นสุด (เรื่องยาว) เมื่อฉันเจอรูปแบบการเรียกซ้ำที่น่าสนใจต่อไปนี้: |-|| |--- ตัวอย่างของรูปแบบนี้มีความกว้างเป็นสองเท่าของความสูง หากต้องการเปลี่ยนจากรูปแบบหนึ่งไปยังอีกระดับคุณจะแบ่งสี่เหลี่ยมนี้ออกเป็นบล็อกย่อยสองบล็อก (ซึ่งแต่ละรูปนั้นเป็นสี่เหลี่ยมจัตุรัส NxN): AB = |-|| |--- so A = |- |- and B = || -- แบ่งครึ่งเหล่านี้แล้วทำซ้ำและจัดเรียงใหม่ตามรูปแบบต่อไปนี้: ABAA ABBB giving |-|||-|- |---|-|- |-|||||| |------- ท้าทาย เขียนโปรแกรม / ฟังก์ชั่นซึ่งให้ตัวเลขNผลลัพธ์ที่Nซ้ำของการออกแบบซ้ำนี้ นี่คือกอล์ฟ รูปแบบ I / O นั้นค่อนข้างผ่อนปรน: คุณอาจส่งคืนสตริงเดี่ยวรายการของสตริงอาเรย์สองมิติของตัวละคร ฯลฯ อนุญาตให้ใช้ช่องว่างที่ต่อท้ายได้ตามอำเภอใจ คุณอาจใช้การจัดทำดัชนี 0 หรือ 1 ก็ได้ ตัวอย่าง …

13
รากที่สองของศิลปะ ASCII
คุณกำลังทำงานเป็นนักศึกษาฝึกงานสำหรับนักคณิตศาสตร์ที่หนึ่งจริงๆเกลียดเท็กซ์, น้ำยาง, ฯลฯ มากเพื่อให้เขาได้ตัดสินใจที่จะละทิ้งการเรียงพิมพ์ทั้งหมดใด ๆ และทำให้คุณทำทั้งหมดในการจัดรูปแบบ ASCII คุณเบื่อเรื่องนี้ไปซักพักแล้วและตัดสินใจที่จะเริ่มทำงานอัตโนมัติบางส่วนโดยเริ่มจากรากที่สอง นี่คือวิธีการสร้างรากที่สอง: ### this is the input ### ### _____ put a row of underscores stretching one character off either side on top ### ### ### _____ put a diagonal of slashes in front going the height of the input / ### / …

14
ฆ่ามันด้วยไฟ
การปฏิเสธความรับผิดชอบ: เรื่องราวที่บอกไว้ในคำถามนี้เป็นเรื่องสมมติทั้งหมดและคิดค้นขึ้นเพื่อวัตถุประสงค์ในการให้คำแนะนำ ฉันเป็นเกษตรกรที่ชั่วร้ายและเพื่อเพิ่มราคาข้าวสาลีในพื้นที่ของฉันฉันตัดสินใจเผาไร่นาของเกษตรกรทั้งหมดที่อยู่รอบตัวฉัน ฉันอยากเห็นทุ่งนาที่ลุกเป็นไฟ (ดังนั้นฉันสามารถใช้เสียงหัวเราะชั่วร้ายของฉันและขยี้มือด้วยความยินดี) แต่ฉันก็ไม่อยากถูกจับได้ดังนั้นฉันต้องการให้คุณจำลองสนาม เผาสำหรับฉัน งานของคุณ: เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้เป็นอินพุตฟิลด์และส่งคืนสเตจของการเบิร์นจนกระทั่งฟิลด์ทั้งหมดเป็นแอช ส่วนที่เฉพาะเจาะจงของสนามที่อยู่ในไฟจะถูกแสดงด้วยจำนวนเต็มแทนความเข้มของเปลวไฟ ไฟเริ่มต้นที่ "1" และย้ายไปที่ "2" จากนั้น "3" และอื่น ๆ เมื่อถึงไฟ "4" มันจะจับโดยตรง (ไม่ใช่แนวทแยงมุม) บริเวณใกล้เคียงที่ติดไฟได้ง่าย เมื่อมันมาถึง "8" มันจะเผาไหม้ในการทำซ้ำครั้งถัดไปและเปลี่ยนเป็นเถ้าซึ่งมีเครื่องหมาย "A" เมื่อพื้นที่ยังไม่ถูกสัมผัสด้วยไฟจะมีเครื่องหมายเป็น "0" ตัวอย่างเช่นถ้าฟิลด์มีลักษณะดังนี้: 100 000 โปรแกรมของคุณควรแสดงผลลัพธ์ดังนี้: 100 000 200 000 300 000 410 100 520 200 630 300 741 410 852 520 A63 …

30
นับตามแนวทแยง!
เรามีแกนแนวนอนมากมายสำหรับตัวเลข แต่ฉันคิดว่าพวกเขาน่าเบื่อจริงๆ งานของคุณในวันนี้คือการสร้างส่วนหนึ่งของแกนทแยงมุมระหว่างจำนวนเต็มสองจำนวนที่ไม่เป็นลบที่แตกต่างกันซึ่งถูกกำหนดให้เป็นอินพุต วิธีการสร้างแกนแนวทแยง? 0, 5ลองมาตัวอย่างเช่นมีการป้อนข้อมูล แกนของเราควรมีลักษณะเช่นนี้: 0 1 2 3 4 5 อย่างไรก็ตามแกนของเราควรดูดีสำหรับตัวเลขที่มีตัวเลขมากกว่า! ถ้าอินพุทคือ0, 14แกนใหม่ควรเป็น: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 แนวคิดคือตัวเลขตัวแรกของตัวเลขถัดไปบนแกนจะต้องถูกวางไว้อย่างแน่นอนเสมอหลังจากตัวเลขสุดท้ายของตัวเลขก่อนหน้า เพื่อทำความเข้าใจแนวคิดที่ดียิ่งขึ้นนี่เป็นอีกตัวอย่างหนึ่งของ997, 1004: 997 998 999 1000 1001 1002 1003 1004 กฎระเบียบ คุณอาจสมมติว่าอินพุตอยู่ในลำดับขึ้นหรือลง (คุณอาจเลือกระหว่าง5,3และ3,5) คุณอาจสมมติว่าความแตกต่างระหว่างจำนวนเต็มสองตัวนั้นต่ำกว่า 100 คุณอาจมี newline ชั้นนำหรือพื้นที่ชั้นนำที่สอดคล้องกัน …

30
ASCII art สำหรับ UI ของ torrent
ปัญหา สร้าง UI จากโปรแกรมฝนตกหนัก เมื่อไม่มีอินพุตให้เอาต์พุตต่อไปนี้: +----------+----------+----------+ |a.exe |##########|seeding | +----------+----------+----------+ |b.exe 10% |# |leeching | +----------+----------+----------+ |c.exe |##########|seeding | +----------+----------+----------+ |d.exe 20% |## |leeching | +----------+----------+----------+ |e.exe |##########|seeding | +----------+----------+----------+ |f.exe 30% |### |leeching | +----------+----------+----------+ |g.exe |##########|seeding | +----------+----------+----------+ |h.exe 40% |#### |leeching | +----------+----------+----------+ |i.exe |##########|seeding | +----------+----------+----------+ …

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