คำถามติดแท็ก kolmogorov-complexity

ความซับซ้อนของ Kolmogorov อย่างไม่เป็นทางการคือจำนวนของรหัสที่ใช้อธิบายหรือสร้างวัตถุคงที่เช่นสตริงหรือรูปภาพ เมื่อโพสต์ความท้าทายในหมวดหมู่นี้โปรดตรวจสอบให้แน่ใจว่ามันเพิ่มสิ่งใหม่ ๆ ให้กับความท้าทายที่มีอยู่

30
กรณีที่อยากรู้อยากเห็นของ Steve Ballmer
Steve Ballmer เป็นอดีตซีอีโอของ Microsoft และในบทความล่าสุดอ้างว่าเขา "ยังไม่ทราบว่าเขาทำอะไรผิดกับมือถือ" ตามที่จดหมายข่าวของCodeProjectชี้ให้เห็น "ชื่อของบทความนั้นอาจจบลงได้หลายจุดและยังคงถูกต้อง" เมื่อไม่มีอินพุตให้เอาต์พุตต่อไปนี้: Steve Ballmer still does not know. Steve Ballmer still does not know what he did. Steve Ballmer still does not know what he did wrong. Steve Ballmer still does not know what he did wrong with mobile. สิ่งนี้จะต้องถูกเอาท์พุทตรงตามที่แสดงและจะต้องเป็นผลลัพธ์ของโปรแกรมของคุณเท่านั้น คุณอาจรวมบรรทัดใหม่ต่อท้ายหนึ่งบรรทัด นี่คือโค้ดกอล์ฟที่มีจำนวนน้อยที่สุดในแต่ละภาษาที่ชนะ

30
มาเล่นเทนนิสกัน
ทันใดนั้นฉันอยากเล่นเทนนิส แต่ฉันไม่มีศาล! เซอร์ไพร์ส! นี่คือที่ที่คุณเข้ามา คุณต้องพิมพ์สนามเทนนิสให้ฉัน แต่คุณต้องทำน้อยที่สุดเท่าที่จะเป็นไปได้เนื่องจากเหตุผลที่เป็นความลับ สนามเทนนิส --------- | | --------- | | | xxxxxxxxx | | | --------- | | --------- นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ!

30
มีคนรู้จักกันมากมาย
โดนัลด์รัทมสเฟลด์อดีตรัฐมนตรีกลาโหมของสหรัฐอเมริกาซึ่งเป็นที่รู้จักอย่างแพร่หลายในวลี ที่นี่เรากำลังจะกลั่นความคิดเห็นของเขาลงในบทที่สี่บรรทัด เอาท์พุทข้อความนี้โดยเฉพาะ: known knowns known unknowns unknown knowns unknown unknowns การใช้อักษรตัวพิมพ์ใหญ่ไม่สำคัญ (ตัวอย่างเช่นใช้ได้Known unKnowns) และบรรทัดใหม่ต่อท้ายบรรทัดเดียวเป็นที่ยอมรับ แต่ไม่อนุญาตการเปลี่ยนแปลงการจัดรูปแบบอื่น ๆ นั่นหมายความว่ามีช่องว่างเดียวระหว่างคำและLF(59 ไบต์) หรือCR/LF(62 ไบต์) ระหว่างบรรทัด กฎระเบียบ ยอมรับได้ทั้งโปรแกรมหรือฟังก์ชั่น หากฟังก์ชั่นคุณสามารถส่งคืนผลลัพธ์มากกว่าการพิมพ์ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม นี่คือรหัส - กอล์ฟเพื่อให้ใช้กฎการเล่นกอล์ฟตามปกติทั้งหมดและรหัสที่สั้นที่สุด (เป็นไบต์) ชนะ

26
บิ๊กเบนไปบ้อง
งานของคุณคือการสร้างโปรแกรมที่จะเลียนแบบบิ๊กเบน (Twitter) งาน เมื่อใดก็ตามที่ชั่วโมงใหม่เริ่มต้นขึ้น (ตามเวลาท้องถิ่นหรือ UTC) ของคอมพิวเตอร์ของคุณคุณจะต้องแสดงผลBONGซ้ำหลายhourครั้ง (โดยมีช่องว่างระหว่างคำ) ตัวอย่างเช่นเมื่อมันเป็นนาฬิกา 3 o' BONG BONG BONGคุณมีการส่งออก รูปแบบเวลาเป็นไปตามรูปแบบเวลา 12 ชั่วโมงเช่นหลังจาก 12 นาฬิกาเรามี 1 และไม่ใช่ 13 โปรแกรม / ฟังก์ชั่นจะต้องทำงานตลอดไป ตัวอย่าง: ห้ามเอาสิ่งที่อยู่ในวงเล็บออก (start: 00:34 for example) BONG (01:00) BONG BONG (02:00) (...) BONG BONG BONG BONG BONG BONG BONG BONG BONG BONG BONG BONG (12:00) …

18
พิมพ์ที่อยู่ IPv6 ทั้งหมด
สิ่งนี้เตือนฉันเมื่อไม่กี่ปีที่ผ่านมามีคนอัพโหลดทอร์เรนต์ "เครื่องมือแฮ็กเกอร์: รายการที่อยู่ IP ทั้งหมด" แน่นอนนี่เป็นเพียงรายการที่สร้างขึ้นจากที่อยู่ IPv4 ~ 4 พันล้านรายการ แต่ "h4xx0rz" นับพันดาวน์โหลด ดูแม่ imahacker! ตอนนี้ทุกวันนี้ทุกคนเปลี่ยนมาใช้IPv6แล้ว (ขวา?) งานของคุณคือการเขียนโปรแกรมที่พิมพ์ออกทั้งหมดอยู่ IPv6 คุณควรเขียนโปรแกรมเต็มรูปแบบที่ไม่มีอินพุตและพิมพ์ที่อยู่ IPv6 หนึ่งรายการต่อบรรทัดและไม่มีเอาต์พุตอื่น โปรแกรมของคุณจะต้องพิมพ์ที่อยู่ทั้งหมด 2 128ที่อยู่รวมถึงที่อยู่ที่ไม่ถูกต้อง แต่ละที่อยู่จะต้องพิมพ์อย่างแน่นอนหนึ่งครั้ง คุณสามารถพิมพ์ที่อยู่ในลำดับใดก็ได้ แต่ละที่อยู่อาจพิมพ์เต็มจำนวนโดยมี 8 กลุ่มเป็นเลขฐานสิบหก 4 ตัวคั่นด้วยเครื่องหมายโคลอนเช่น 2001:0db8:85a3:0000:0000:8a2e:0370:7334 คุณอาจใช้ตัวย่อมาตรฐานใด ๆ จากRFC 5952ตามดุลยพินิจของคุณ: ค่าศูนย์นำหน้าในกลุ่มอาจถูกละเว้นยกเว้นว่า0ไม่สามารถย่อได้อีก :: อาจใช้อย่างน้อยหนึ่งครั้งต่อหนึ่งที่อยู่เพื่อย่อลำดับของกลุ่มทั้งหมดที่เป็นศูนย์อย่างน้อยหนึ่งกลุ่ม ตัวเลขฐานสิบหกอาจใช้ตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่ หากคุณบรรลุข้อเสนอแนะจากตัวแทน RFC 5952 (ตัวพิมพ์เล็กเท่านั้นเป็นตัวแทนที่สั้นที่สุดที่มี::ใช้อย่างเร็วที่สุดเท่าที่เป็นไปได้ถ้ามีหลายสถานที่ที่มันสามารถนำมาใช้) คุณจะได้รับโบนัส 20% เนื่องจากขนาดของเอาต์พุตโปรแกรมของคุณไม่คาดว่าจะเสร็จในขณะที่เรานั่งอยู่ที่นั่น โปรแกรมของคุณอาจถูกขัดจังหวะด้วยวิธีการภายนอกบางอย่าง ( …

30
รักฉันอย่ารักฉัน
รักฉันอย่ารักฉัน เกมสำหรับเด็กที่เรียบง่ายนี้เก่า แต่ยังคงได้รับความนิยม เนื่องจากเราอาศัยอยู่ในศตวรรษที่ 21 ตอนนี้มาแปลงเป็นดิจิทัล! สเปค โปรแกรมต้องไม่มีการป้อนข้อมูลยกเว้นว่าคุณกำลังใช้ภาษาที่ไม่สามารถสร้างเมล็ดพันธุ์แบบสุ่มในกรณีนี้คุณจะได้รับอนุญาตให้รับเมล็ดเป็นอินพุต งานของคุณคือการเขียนโปรแกรมที่จะให้ผลลัพธ์แบบสุ่มรวม 3 ถึง 20 บรรทัดรวม: "รักฉัน ... " และ "รักฉันไม่ ... " ในทางกลับกันเช่นเดียวกับในเกม (และอีกหนึ่งบรรทัด; การอ่าน) อย่างไรก็ตามมีข้อ จำกัด บางประการ แต่ละบรรทัดควรขึ้นบรรทัดใหม่ บรรทัดแรกต้องเป็น "รักฉัน ... " บรรทัดสุดท้าย (เช่น "รักฉัน" หรือ "ไม่รักฉันไม่ได้") ควรลงท้ายด้วยเครื่องหมายอัศเจรีย์หรือจุดเดียวตามลำดับ หลังจากบรรทัดสุดท้ายคุณจะต้องส่งออกทั้งหัวใจ ( <3) หรือหัวใจที่แตกสลาย ( </3) ในบรรทัดใหม่ขึ้นอยู่กับว่า "รักฉัน!" หรือ "รักฉันไม่ได้" เป็นประโยคสุดท้าย อนุญาตให้มีช่องว่างต่อท้ายได้ ตัวอย่างผลลัพธ์ …

30
ชื่อภาษาการเขียนโปรแกรมเอาท์พุท
ท้าทาย: ในภาษาการเขียนโปรแกรมที่คุณเลือกไม่ต้องป้อนและเอาท์พุทชื่อภาษาการเขียนโปรแกรมของคุณ ยุติธรรมพอใช่ไหม ข้อ จำกัด: คุณไม่สามารถใช้อักขระใด ๆ ที่รวมอยู่ในชื่อภาษาการเขียนโปรแกรมในรหัสของคุณ เช่นถ้าฉันใช้แบทช์ฉันจะต้องไม่ใช้ตัวอักษร 'B' 'a' t '' c '' h 'ในรหัสของฉัน โปรดทราบว่านี่เป็นกรณี ๆ ไป ฉันยังสามารถใช้ถ่าน 'b' เพราะมันแตกต่างจาก 'B' คุณสามารถมี "ขยะ" ก่อนหรือหลังชื่อของภาษา หมายเลขรุ่นไม่นับเป็นส่วนหนึ่งของชื่อภาษา เช่นฉันสามารถใช้หมายเลข 3 ในรหัสในคำตอบของฉันถ้าเป็นใน Python 3 เอาต์พุตของชื่อภาษาการเขียนโปรแกรมไม่คำนึงถึงขนาดตัวพิมพ์ บังคับให้ใช้การผสมผสานตัวอักษรที่เป็นไปได้ทั้งหมดและหวังว่าคุณจะได้รับชื่อภาษาของคุณเป็นสิ่งต้องห้าม ตัวอย่างผลลัพธ์: (สมมติว่าภาษาการเขียนโปรแกรมของฉันเรียกว่าภาษา) (✔ถ้าถูกต้องมิฉะนั้น✖) Language ✔ Body language is a type of non-verbal communication in which …

25
บรรณาการให้สแตนลี
น่าเสียดายที่หนึ่งในนักเขียนหนังสือการ์ตูนที่ยิ่งใหญ่ที่สุดเสียชีวิตเมื่อบ่ายวานนี้ ดาราฮอลลีวูด, นักดนตรี, นักแสดงและคนอื่น ๆ จำนวนมากกำลังจ่ายส่วยให้นักเขียนที่ยอดเยี่ยมนี้ดังนั้นเราต้องทำอะไรบางอย่างเช่นกัน ท้าทาย พิมพ์โลโก้ The Avengers หมายเหตุ: คุณสามารถใช้อักขระอื่นแทนที่ # อื่นนอกเหนือจากอักขระเว้นวรรค ในขณะที่คุณต้องใช้อักขระช่องว่างสำหรับช่องว่าง ใน ASCII-art ###### ############### ##### ########## #### ####### #### ### #### ### ### ### #### ### ### ### #### ### ### ### #### ### ### ### #### ### ### ### #### ### ### ### ########### …

30
แฮ็คเข้าลอตเตอรี
เมื่อเร็ว ๆ นี้คุณได้สร้างบัญชีในเว็บไซต์พนันซึ่งมีค่าธรรมเนียม 25 ดอลลาร์พวกเขาจะจ่ายเงินคืนให้คุณระหว่าง 0 ถึง 50 ดอลลาร์ หลังจากได้รับประมาณ 5 ดอลลาร์สองครั้งคุณตัดสินใจที่จะพิสูจน์ว่าไซต์นั้นเป็นการหลอกลวง หลังจากเข้าถึงไฟร์วอลล์ภายนอกด้วยรหัสผ่านเริ่มต้นคุณจะพบวิธีเข้าสู่เซิร์ฟเวอร์ฐานข้อมูลและค้นหาว่าจะเก็บค่าจำนวนเงินขั้นต่ำและจำนวนสูงสุดไว้ที่ใด คุณตัดสินใจที่จะเสียบ 25 '9 เป็นค่าสูงสุด แต่ได้รับข้อความแสดงข้อผิดพลาดว่าค่าสูงสุดต้องเป็นประเภท' uint64 ' อย่างไรก็ตามในตอนนี้คุณสังเกตเห็นว่าปุ่มตัวเลขบางตัวดูเหมือนจะพิมพ์ลงในรีโมทคอนโทรลไม่ถูกต้อง ความท้าทายจะปรากฏขึ้นก่อนที่คุณจะพิมพ์ราวกับว่าอยู่ในไซต์ Q + A ใช้เฉพาะโปรแกรมที่ติดตั้งอย่างสะดวกสำหรับการทดสอบและการใช้ภาษาเฉพาะของคุณเอาท์พุทขนาดสูงสุดของค่าจำนวนเต็มแบบ 64 บิตที่ไม่ได้ลงนามอย่างไรก็ตามเกือบทุกอย่างยกเว้นเครื่องมือการเขียนโปรแกรมจะเสียบนเครื่องนี้ทำให้คุณไม่ต้องใช้หมายเลข 1 2,4,6,8 - ในซอร์สโค้ดหรือตัวอักษรคุณอาจสังเกตว่าดูเหมือนว่าจะใช้เวลานานกว่าในการดำเนินการโปรแกรมสำหรับโค้ดเพิ่มเติมแต่ละชิ้น ต้องการรวยก่อนวาด! ความท้าทาย เขียนโปรแกรมที่เอาต์พุต 18446744073709551615 ซึ่งเป็นค่าสูงสุดของจำนวนเต็ม 64 บิตที่ไม่ได้ลงนามเป็นตัวเลขหรือสตริงเดียว ซอร์สโค้ดของคุณต้องไม่มีอักขระ '1', '2', '4', '6' หรือ '8' หากภาษาของคุณไม่มีจำนวนเต็ม 64 บิตหรือเทียบเท่าที่ไม่ได้ลงนามเอาต์พุตอาจอยู่ในรูปแบบสตริงหรืออื่น ๆ …

9
สร้างสามเหลี่ยมโดยไม่มีสามเหลี่ยมใด ๆ
ตอนเป็นเด็กตัวเล็กฉันชอบเล่นของเล่นเหล่านี้มาก: พวกเขาอาจใช้สำหรับงานศิลปะ แต่ฉันมักจะใช้มันเพื่อคณิตศาสตร์! เศษส่วนรูปแบบและอื่น ๆ ครั้งหนึ่งฉันได้รับการท้าทายนี้: สร้างสามเหลี่ยมโดยไม่ต้องใช้แผ่นสามเหลี่ยมสีเขียว ความท้าทายนี้ทำให้ฉันงงงวยเป็นเวลานานจนกระทั่งฉันสะดุดกับวิธีที่สวยงามและเรียบง่ายในการทำด้วยสี่เหลี่ยมคางหมูเพียง 3 ตัว: /\ /_/\ /__\_\ ทีนี้ลองสามเหลี่ยมนี้แล้วหมุน: ______ \ \__/ \/ / \/ การใช้สามเหลี่ยมสองรูปนี้เราสามารถสร้างรูปสามเหลี่ยมขนาดใหญ่ขึ้นได้ นี่คือรูปสามเหลี่ยมความสูง 2: /\ /_/\ /__\_\ /\ \__/\ /_/\/ /_/\ /__\_\/__\_\ และนี่คือสามเหลี่ยมความสูง 3-7: #3 /\ /_/\ /__\_\ /\ \__/\ /_/\/ /_/\ /__\_\/__\_\ /\ \__/\ \__/\ /_/\/ /_/\/ /_/\ /__\_\/__\_\/__\_\ #4 …

10
ฟอลคอนเฮฟวี่เวท
เลือกชุดสี่ไบต์โดยไม่มีการแทนที่ (เช่นไม่มีการทำซ้ำไบต์) และไม่จำเป็นต้องเรียงตามลำดับจากชุดใดชุดหนึ่งต่อไปนี้: อักขระของการเข้ารหัสไบต์เดียวใด ๆ อักขระ Unicode ในช่วง 00 – FF จำนวนเต็มทศนิยมที่ลงนามในช่วง −128–127 จำนวนเต็มทศนิยมที่ไม่ได้ลงนามในช่วง 0–255 ค่าสี่ค่าที่คุณเลือก (โปรดระบุว่าเป็นค่าใด) จะเป็นอินพุตที่ถูกต้อง คุณต้องจับคู่แต่ละค่ากับหนึ่งในงานศิลปะ ASCII ด้านล่าง ได้รับ (โดยวิธีการใด ๆ ) หนึ่งในสี่อินพุตที่ถูกต้องของคุณตอบสนอง (โดยวิธีการใด ๆ แม้รายการของสตริง) ด้วยศิลปะ ASCII ที่สอดคล้องกัน อนุญาตให้มีพื้นที่สีขาวเป็นพิเศษในทุกด้านตราบใดที่ภาพนั้นอยู่ในพื้นที่ 2D ที่ต่อเนื่องกัน ไบต์แรก: /\ / \ | | | | | | |____| \__/ | | | …

30
ปริศนาการเขียนโปรแกรมของโหมดกอล์ฟ
งานของคุณคือการพิมพ์ข้อความGood morning, Green orb!โดยให้ตัวละครทุกตัวซ้ำหลาย ๆ ครั้งซึ่งเป็นไบต์ที่บ่อยที่สุดในแหล่งที่มาของคุณ (โหมด) บรรทัดใหม่ต่อท้ายได้รับอนุญาตและไม่จำเป็นต้องทำซ้ำ ตัวอย่างเช่นถ้าแหล่งที่มาของคุณคือ print p เนื่องจากpปรากฏสองครั้งและทุกไบต์อื่น ๆ จะปรากฏขึ้นเมื่อคุณต้องการพิมพ์ GGoooodd mmoorrnniinngg,, GGrreeeenn oorrbb!! คำตอบจะได้คะแนนจากผลคูณของจำนวนไบต์และจำนวนครั้งที่ส่งออกซ้ำ ตัวอย่างเช่นโค้ดข้างต้น (ถ้ามันทำงาน) จะให้คะแนน7 * 2 = 14 เป้าหมายควรเพื่อลดคะแนน รหัสของคุณต้องมีอย่างน้อย 1 ไบต์ ใช้โปรแกรมนี้เพื่อตรวจสอบว่ารหัสและผลลัพธ์ของคุณตรงกัน

19
พายของฉันถูกแบ่งออกเป็นสองส่วนแล้ว?
เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้ในรายการจำนวนเต็มบวกที่ไม่มีข้อ จำกัด คุณอาจจะถือว่าเป็นการป้อนข้อมูลในรูปแบบที่สะดวกที่เหมาะสมเช่นหรือ"1 2 3 4"[1, 2, 3, 4] ตัวเลขในรายการอินพุตแสดงถึงชิ้นส่วนของแผนภูมิวงกลมเต็มโดยที่ขนาดแต่ละส่วนเป็นสัดส่วนกับหมายเลขที่สอดคล้องกันและชิ้นส่วนทั้งหมดจะถูกจัดเรียงรอบแผนภูมิตามลำดับที่กำหนด ตัวอย่างเช่นพายสำหรับ1 2 3 4คือ: คำถามที่รหัสของคุณต้องตอบคือ: แผนภูมิวงกลมมีการแบ่งออกเป็นสองส่วนหรือไม่? นั่นคือมีเส้นตรงที่สมบูรณ์แบบจากด้านหนึ่งของวงกลมไปยังอีกด้านหนึ่งหรือไม่โดยแยกออกเป็นสองส่วนหรือไม่? คุณจำเป็นต้องส่งออกtruthyค่าถ้ามีอย่างน้อยหนึ่งเส้นแบ่งครึ่งและเอาท์พุทfalsyค่าถ้ามีผู้ใด ใน1 2 3 4ตัวอย่างมีการแบ่งระหว่าง4 1และ2 3ดังนั้นผลลัพธ์จะเป็นความจริง แต่สำหรับอินพุท1 2 3 4 5นั้นไม่มีไบเซอร์เรเตอร์ดังนั้นเอาต์พุตจะเป็นเท็จ: ตัวอย่างเพิ่มเติม การจัดเรียงตัวเลขต่างกันอาจลบเส้นแบ่งครึ่ง เช่น2 1 3 4→ falsy: หากมีเพียงหนึ่งหมายเลขเท่านั้นในรายการอินพุตวงกลมจะไม่ถูกแบ่งออก เช่น10→ falsy: อาจมีหลายเส้นแบ่งครึ่ง ตราบใดที่มีมากกว่าศูนย์ผลลัพธ์ก็จะเป็นจริง เช่น6 6 12 12 12 11 1 12→ความจริง: (มี …
43 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 

30
The Real Slim Shady
Echo ต่อไปนี้เป็นไบต์น้อยที่สุด: I'm Slim Shady. Yes, I'm the real Shady. All you other Slim Shadys are just imitating. So, won't the real Slim Shady please stand up? Please stand up. Please stand up. ต่อไปนี้ห้าคำต้องปรากฏเพียงแห่งเดียวในรหัสของคุณ: I'm Slim Shady real stand

30
ขยาย ASCII Sun
เขียนโปรแกรมที่รับ (ผ่าน STDIN / บรรทัดคำสั่ง) จำนวนเต็มแบบไม่ลบ เมื่อ N เป็น 0 โปรแกรมของคุณควรพิมพ์O(นั่นคือทุนโอ้ไม่ใช่ศูนย์) เมื่อ N เป็น 1 โปรแกรมของคุณควรพิมพ์ \|/ -O- /|\ เมื่อ N เป็น 2 โปรแกรมของคุณควรจะพิมพ์ \ | / \|/ --O-- /|\ / | \ เมื่อ N เป็น 3 โปรแกรมของคุณควรจะพิมพ์ \ | / \ | / \|/ ---O--- /|\ / | \ …

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