คำถามติดแท็ก decision-problem

สำหรับความท้าทายที่เกี่ยวข้องกับการตัดสินใจว่าปัจจัยนำเข้านั้นมีคุณสมบัติตรงตามเกณฑ์ที่กำหนดหรือไม่และแสดงผลข้อมูลบางส่วนแทนการตัดสินใจนั้น

3
แก้ลูกบาศก์ของรูบิค
เขียนโปรแกรมที่สั้นที่สุดที่แก้คิวบ์ของรูบิค (3 * 3 * 3) ภายในระยะเวลาที่เหมาะสมและเคลื่อนไหวได้ (พูดได้สูงสุด 5 วินาทีในเครื่องของคุณและน้อยกว่า 1,000 ครั้ง) อินพุตอยู่ในรูปแบบ: UF UR UB UL DF DR DB DL FR FL BR BL UFR URB UBL ULF DRF DFL DLB DBR (อินพุตเฉพาะนี้แสดงถึงคิวบ์ที่แก้ไขแล้ว) 12 สตริงอักขระ 2 ตัวแรกคือขอบในตำแหน่ง UF, UR, ... BL (U = ขึ้น, F = ด้านหน้า, R = …

28
เมทริกซ์ศูนย์กลางแบบสมมาตรเป็น ... และรหัสนั้นเป็นอย่างไร
defintion เมทริกซ์สมมาตรศูนย์กลางเป็นตารางเมทริกซ์ที่มีความสมมาตรเกี่ยวกับศูนย์ แม่นยำกว่าเมทริกซ์ขนาดคือ centrosymmetric ถ้าสำหรับความสัมพันธ์ต่อไปนี้เป็นที่น่าพอใจ: n × n ฉัน,AAAn × nn×nn \times nฉัน,ฉัน,j ∈ ( [ 1 , n ] ∩ Z )i,j∈([1,n]∩Z)i,\: j \in ([1, n] \cap \mathbb{Z})Aฉัน,J= An + 1 - ฉัน,n + 1 - jAi,j=An+1−i,n+1−jA_{i,\:j}=A_{n+1-i,\:n+1-j} ตัวอย่างของเมทริกซ์ดังกล่าว นี่คือภาพประกอบของสมมาตรของเมทริกซ์เช่นนี้ (ยืมมาจากบทความ Wikipedia ดังกล่าว): เมทริกซ์ศูนย์กลางแบบสมมาตรแบบยาวด้านข้าง ( ):4 × 44×44\times 4 ⎛⎝⎜⎜⎜1584267337624851⎞⎠⎟⎟⎟(1234567887654321)\left(\begin{matrix} …

30
เดี๋ยวก่อนนี่คือภาษาอะไร
เมื่อเร็ว ๆ นี้ฉันมีความสุขในการเขียนโปรแกรม Haskell ที่สามารถตรวจจับได้ว่าNegativeLiteralsส่วนขยายนั้นทำงานหรือไม่ ฉันมากับสิ่งต่อไปนี้: data B=B{u::Integer} instance Num B where{fromInteger=B;negate _=B 1} main=print$1==u(-1) ลองออนไลน์! สิ่งนี้จะพิมพ์TrueตามปกติและFalseอย่างอื่น ตอนนี้ฉันสนุกมากที่ได้ทำสิ่งนี้ฉันกำลังขยายความท้าทายให้กับทุกคน ส่วนขยายภาษา Haskell อื่น ๆ ที่คุณสามารถถอดรหัสได้ กฎระเบียบ จะแตกเป็นส่วนขยายของภาษาโดยเฉพาะอย่างยิ่งคุณต้องเขียนโปรแกรม Haskell ที่รวบรวมทั้งที่มีและไม่มีนามสกุลภาษา (คำเตือนจะมีการปรับ) และผลแตกต่างกันสองไม่ใช่ข้อผิดพลาดค่าทำงานเมื่อมีนามสกุลภาษาและมันปิด (โดยการเพิ่มNoคำนำหน้า ส่วนขยายภาษา) ด้วยวิธีนี้รหัสข้างต้นอาจย่อให้เหลือเพียง: data B=B{u::Integer} instance Num B where{fromInteger=B;negate _=B 1} main=print$u(-1) ซึ่งพิมพ์1และ-1. วิธีใดก็ตามที่คุณใช้ในการถอดรหัสส่วนขยายจะต้องเฉพาะกับส่วนขยายนั้น อาจมีวิธีที่จะตรวจจับการตั้งค่าสถานะของคอมไพเลอร์หรือ LanguageExtensions ที่เปิดใช้งานโดยพลการหากวิธีการดังกล่าวไม่ได้รับอนุญาต คุณสามารถเปิดใช้งานส่วนขยายภาษาเพิ่มเติมหรือเปลี่ยนการเพิ่มประสิทธิภาพของคอมไพเลอร์โดย-Oไม่ต้องเสียค่าใช้จ่ายนับไบต์ ส่วนขยายภาษา คุณไม่สามารถแตกนามสกุลภาษาใด ๆ …

5
ฉันจะทำให้มันออกมาทันเวลาหรือไม่?
แรงบันดาลใจจากนี้ พื้นหลัง เกษตรกรชั่วร้ายได้ตัดสินใจที่จะเผาไหม้ทุ่งข้าวสาลีของคุณลงเพื่อที่จะขับรถขึ้นราคา เพื่อให้แน่ใจว่าการทำลายทั้งหมดเขายังได้แช่น้ำมันในสนามของคุณ น่าเสียดายยิ่งกว่านั้นที่คุณกำลังเดินอยู่บนสนามเมื่อไฟลุกไหม้และคุณต้องออกไปอย่างรวดเร็วเพื่อเอาชีวิตรอด ท้าทาย ให้ทุ่งที่มีข้าวสาลีไฟและที่ตั้งของคุณพิจารณาว่าคุณสามารถทำให้มันออกจากสนามได้ทัน เขตข้อมูลประกอบด้วยข้าวสาลี (แสดงโดยที่นี่.) และไฟ ( F) Oนี่คือสถานที่ของคุณถูกทำเครื่องหมายด้วย ตัวอย่างเช่น: ...F...F F....... ........ .F...... ....O... ...F.... ........ .F....F. ทุกวินาทีคุณจะย้ายไปยังเซลล์ที่อยู่ติดกัน (แต่ไม่ใช่แนวทแยงมุม) และไฟทุกตัวจะกระจายไปยังเซลล์ที่อยู่ติดกันทุกเซลล์ หากคุณไม่สามารถย้ายไปยังเซลล์ที่จะไม่ติดไฟคุณจะตาย ถ้าคุณทำให้มันออกจากสนามคุณจะรอดชีวิต มาดูกันว่าเกิดอะไรขึ้นในตัวอย่างนี้: ...F...F F....... ........ .F...... ....O... ...F.... ........ .F....F. ..FFF.FF FF.F...F FF...... FFF..... .F.F.O.. ..FFF... .F.F..F. FFF..FFF FFFFFFFF FFFFF.FF FFFF...F FFFF.... FF.FF.O. .FFFFFF. …

27
หมายเลขพับได้
รับตัวเลขกำหนดว่าเป็นจำนวนการพับ จำนวนการพับเป็นจำนวนเช่นนั้นถ้าคุณเอามันมาเป็นตัวแทนไบนารีและ "พับ" มันครึ่งหนึ่งนั่นคือผลลัพธ์ของการคูณ XNOR ของครึ่งแรกของตัวเลขและครึ่งหลังที่มีตัวเลขกลับกันคุณจะได้รับ ศูนย์. หากตัวเลขมีเลขคี่เป็นเลขฐานสองในเลขฐานสองหลักจะต้องเป็น 1 และจะถูกละเว้นเมื่อทำการพับ เนื่องจากอาจทำให้ฉันสับสนฉันจะยกตัวอย่าง: 178 การแทนเลขฐานสองของ 178 คือ 10110010 เมื่อต้องการพับนี่เราแบ่งครึ่งก่อน 1011 0010 เราสลับครึ่งหลัง 1011 0100 และเรา XNOR ทั้งสองแบ่งเท่า ๆ กัน: 0000 นี่เป็นศูนย์ดังนั้นนี่คือจำนวนการพับ 1644 การเป็นตัวแทนไบนารีของ 1644 คือ 11001101100 เมื่อต้องการพับนี่เราแบ่งครึ่งก่อน 11001 1 01100 ตรงกลางคือ 1 ดังนั้นเราจึงโยนมันออกไป 11001 01100 เราสลับครึ่งหลัง 11001 00110 และเรา XNOR ทั้งสองแบ่งเท่า ๆ …

23
การเรียงสับเปลี่ยนของมด
บทนำ สมมติว่าคุณมีผู้ปกครองที่มีตัวเลขจาก0ไปR-1 คุณวางมดไว้ระหว่างตัวเลขสองตัวใด ๆ แล้วมันก็เริ่มคลานอย่างผิดพลาดบนไม้บรรทัด ผู้ปกครองแคบมากจนมดไม่สามารถเดินจากตำแหน่งหนึ่งไปอีกตำแหน่งหนึ่งได้โดยไม่ต้องเดินตามตัวเลขทั้งหมดในระหว่างนั้น เมื่อมดเดินมาหาตัวเลขเป็นครั้งแรกคุณจะบันทึกและสิ่งนี้จะให้การเปลี่ยนรูปของตัวเลขr เราบอกว่าการเรียงสับเปลี่ยนเป็นสิ่งที่บ้าถ้ามันสามารถสร้างขึ้นโดยมดในวิธีนี้ อีกวิธีหนึ่งคือการเรียงสับเปลี่ยนpคือ antsy หากทุกรายการp [i]ยกเว้นรายการแรกอยู่ภายในระยะทาง 1 จากรายการก่อนหน้าบางส่วน ตัวอย่าง การเรียงสับเปลี่ยนความยาว -6 4, 3, 5, 2, 1, 0 เป็น antsy เพราะ3อยู่ในระยะที่ 1 จาก4 , 5อยู่ในระยะที่ 1 จาก4 , 2อยู่ในระยะที่ 1 จาก3 , 1อยู่ในระยะที่ 1 จาก2และ0อยู่ในระยะที่ 1 จาก1 การเรียงสับเปลี่ยน 3, 2, 5, 4, 1, 0 ไม่ได้วิตกกังวลเพราะ5ไม่ได้อยู่ในระยะที่ …

30
ตรวจสอบว่าตัวอักษรของคำตามลำดับตัวอักษร
เขียนฟังก์ชั่น / โปรแกรมที่รับสายอักขระตัวพิมพ์เล็ก / ตัวพิมพ์ใหญ่ [A-Za-z] เป็นอินพุตเพื่อตรวจสอบว่าตัวอักษรที่ปรากฏขึ้นนั้นไม่ซ้ำกันและเรียงตามตัวอักษร (ไม่สนใจตัวพิมพ์เล็กและใหญ่) เอาท์พุทจะต้องเป็นจริงถ้าพวกเขาเป็นเอกลักษณ์และตามลำดับตัวอักษรและเท็จถ้าไม่ ที่นี่มีตัวอย่างบางส่วน a true abcdefGHIjklmnopqrSTUVWXyz true aa false puz true puzz false puzZ false puZ true PuZ true pzu false pzU false abcdABCD false dcba false หากคุณต้องการให้เรียกใช้โปรแกรมของคุณในทุกคำของ wordlist เช่นนี้และโพสต์คำที่น่าสนใจ =) คะแนน จำนวนไบต์ต่ำสุดชนะ

28
เป็นหมายเลข Proth หรือไม่?
จำนวน Prothตั้งชื่อตามFrançois Proth เป็นตัวเลขที่สามารถแสดงเป็น N = k * 2^n + 1 ที่ไหนkเป็นจำนวนเต็มบวกแปลกและเป็นบวกจำนวนเต็มดังกล่าวว่าn 2^n > kลองใช้ตัวอย่างที่เป็นรูปธรรมมากขึ้น ใช้ 3 3 เป็นหมายเลข Proth เพราะมันสามารถเขียนเป็น (1 * 2^1) + 1 และ2^1 > 1เป็นที่พอใจ 5 เป็นหมายเลข Proth ด้วยเช่นกัน (1 * 2^2) + 1 และ2^2 > 1เป็นที่พอใจ อย่างไรก็ตาม 7 ไม่ใช่หมายเลข Proth เพราะวิธีเดียวที่จะเขียนในรูปแบบN = k * 2^n …

22
พื้นฐาน ASCII Tallies
หัวข้อสำรอง: นับประโยคที่เรือนจำของคุณติดไว้ที่ผนัง กำหนดตัวเลขการnส่งออกนับเป็นกลุ่มแบบดั้งเดิม 5 ต่อกลุ่มและ 50 ต่อแถว ตัวอย่าง 1 | | | | 4 |||| |||| |||| |||| 5 |||/ ||/| |/|| /||| 6 |||/ | ||/| | |/|| | /||| | 50 |||/ |||/ |||/ |||/ |||/ |||/ |||/ |||/ |||/ |||/ ||/| ||/| ||/| ||/| ||/| ||/| ||/| …
36 code-golf  ascii-art  number  code-golf  number  integer  binary  base-conversion  code-golf  array-manipulation  code-golf  chemistry  code-golf  number  sequence  fibonacci  code-golf  matrix  optimization  code-golf  number  code-golf  math  number  sequence  code-golf  math  array-manipulation  matrix  linear-algebra  code-golf  kolmogorov-complexity  cops-and-robbers  cops-and-robbers  code-golf  tips  basic  code-golf  decision-problem  binary  tiling  game  king-of-the-hill  python  code-golf  c  code-golf  ascii-art  code-golf  string  kolmogorov-complexity  alphabet  code-golf  number  code-golf  string  code-golf  number  sequence  integer  code-golf  number  permutations  restricted-complexity  restricted-time 

30
การเริ่มต้นเท่ากับจุดจบหรือไม่?
งาน ในความท้าทายนี้งานของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นที่ใช้ในสตริงและส่งออกค่าความจริงหรือปลอมแปลงโดยพิจารณาจากตัวอักษรตัวแรกและตัวอักษรสุดท้ายของอินพุตสตริงนั้นเท่ากัน อินพุต คุณอาจป้อนข้อมูลด้วยวิธีใด ๆ ที่เหมาะสม อย่างไรก็ตามสมมติว่าอินพุตไม่ได้รับอนุญาตในตัวแปรที่กำหนดไว้ล่วงหน้า สามารถอ่านจากไฟล์คอนโซลบรรทัดคำสั่งฟิลด์อินพุต ฯลฯ หรือรับอินพุตเป็นอาร์กิวเมนต์ฟังก์ชันได้ เอาท์พุต คุณสามารถส่งออกในรูปแบบที่เหมาะสมยกเว้นการกำหนดผลลัพธ์ให้กับตัวแปร อนุญาตให้เขียนไฟล์คอนโซลบรรทัดคำสั่งกล่องreturnคำสั่งฟังก์ชั่นอื่น ๆ ได้ กฎเพิ่มเติม อินพุตสามารถเป็นสตริงว่างได้เช่นกันซึ่งคุณควรส่งคืนค่าเท็จ Single-Char Input Strings ควรมีผลลัพธ์ที่เป็นจริง โปรแกรมของคุณควรคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ helloHควรส่งออกค่าเท็จ คุณสามารถมีค่าความจริงเดียวและค่า Falsey เดียว ตัวอย่างเช่นไม่อนุญาตให้ใช้เอาต์พุตfalseสำหรับอินพุตสตริงและ0สำหรับอินพุตสตริงอื่นเนื่องจากค่า Falsey ไม่อนุญาตช่องโหว่มาตรฐาน กรณีทดสอบ Input -> Output "10h01" Truthy "Nothing" Falsey "Acccca" Falsey "wow!" Falsey "wow" Truthy "H" Truthy "" Falsey นี่คือโค้ดกอล์ฟดังนั้นโค้ดที่สั้นที่สุดในหน่วยไบต์ชนะ!

22
ตัวย่อสามารถทำให้เซ็นเซอร์ข้อความของคุณแคบลงได้อย่างชัดเจน
ด้วยเหตุนี้คุณต้องมีวิธีที่ดีกว่าในการออกกำลังกายหากวลีเป็นตัวย่อของคำ คุณคิดว่ามันจะคุ้มค่าที่จะดูว่าวลีและคำที่เป็นปัญหานั้นเป็นตัวย่อแบบเรียกซ้ำ งานของคุณ: ป.ร. ให้คำและวลีที่แล้วคั่นด้วยเส้นเอาท์พุทถ้าวลีเป็นตัวย่อแล้วถ้ามันเป็นตัวย่อ recursive (วลีมีสิ่งที่มันหมายถึง) ข้อมูลที่ป้อนจะประกอบด้วยอักขระตามตัวอักษรและช่องว่าง โปรแกรมของคุณไม่ควรตรงตามตัวพิมพ์ใหญ่ - เล็ก ตัวอย่างอินพุต / เอาต์พุต: กรณีที่ 1: การป้อนข้อมูล: Acronyms Acronyms can really obviously narrow your message sensors เอาท์พุท: True True กรณีที่ 2: การป้อนข้อมูล: FAQ frequently asked questions เอาท์พุท: True False กรณีที่ 3: การป้อนข้อมูล: foo bar baz เอาท์พุท: False False กรณีที่ 4: …

28
Java ใช้จาวาสคริปต์เหมือนกับรถยนต์
ชื่อที่ถูกขโมยซึ่งได้แรงบันดาลใจจากคำตอบของ Greg Hewgillต่อJavaScript และ Java แตกต่างกันอย่างไร? บทนำ Java และ JavaScript เป็นภาษาที่ใช้กันโดยทั่วไปในหมู่โปรแกรมเมอร์และปัจจุบันเป็นแท็กยอดนิยมใน Stack Overflow แต่อย่างที่เราทุกคนรู้นอกจากชื่อที่คล้ายกันแล้วทั้งสองไม่มีอะไรเหมือนกัน เพื่อเป็นเกียรติแก่หนึ่งในการอภิปรายที่น่าอับอายที่สุดของการเขียนโปรแกรมและได้รับแรงบันดาลใจจากความผิดหวังครั้งล่าสุดของฉันในการค้นหาแท็กฉันขอเสนอสิ่งต่อไปนี้: ท้าทาย เขียนโปรแกรมที่รับสตริงเป็นอินพุต ส่งคืนcarถ้าสตริงขึ้นต้นด้วย "Java" และไม่มี "JavaScript" carpetมิฉะนั้นกลับ ตัวอย่างอินพุตและเอาต์พุต รถ: java javafx javabeans java-stream java-script java-8 java.util.scanner java-avascript JAVA-SCRIPTING javacarpet พรม: javascript javascript-events facebook-javascript-sdk javajavascript jquery python rx-java java-api-for-javascript not-java JAVASCRIPTING หมายเหตุ การจับคู่อินพุตควรคำนึงถึงขนาดตัวพิมพ์ ความเป็นไปได้เท่านั้นสำหรับผลลัพธ์ควรเป็นcarหรือcarpet คะแนนโบนัสจินตภาพถ้าคำตอบของคุณใช้ Java, …

30
สายนี้เป็นตัวอักษรที่ทำกงเกวียนหรือไม่?
แรงบันดาลใจท้าทายคือสิ่งที่ฉันเห็นที่ไหนสักแห่ง: คำว่า "แม่ชี" เป็นเพียงตัวอักษรnกำลังทำกงล้อ ความท้าทายของคุณคือการใช้สายและตรวจสอบว่ามันเป็นตัวอักษรตัวแรกที่ทำล้อ กฎระเบียบ สตริงเป็นตัวอักษรที่ทำล้อเลียนถ้า: ตัวอักษรตัวแรกเหมือนกับตัวอักษรตัวสุดท้าย (จดหมายไม่สามารถตกลงบนหัวของมันได้) สตริงจะสลับระหว่างตัวอักษรของวงล้อหมุนทุกตัวละครหนึ่งตัว ตัวอักษร cartwheeling มีnและu, mและw, และb qโปรดทราบว่าnและwร่วมกันไม่ได้ cartwheeling ตัวอักษรและไม่เป็นและwb คุณจะใช้สายอักขระโดยใช้วิธีการอินพุตมาตรฐานของเรา คุณจะส่งออกค่าความจริงหากสตริงเป็นตัวอักษรการหมุนวนและค่าเท็จถ้าไม่ได้ เอาต์พุตสามารถทำได้โดยใช้วิธีเอาต์พุตมาตรฐานใด ๆ กฎเพิ่มเติม: เฉพาะอักษรตัวพิมพ์เล็กกงเกวียนn/ u/ m/ w/ b/ qจำเป็นที่จะต้องได้รับการจัดการ คุณอาจคิดว่าอินพุตไม่เคยว่างเปล่า สตริงอักขระหนึ่งตัวไม่ใช่รถเข็นที่ถูกต้อง กรณีทดสอบ Input -> Output nun -> truthy nunun -> truthy nunununu -> falsy wmw -> truthy wmwun -> falsy …

30
มันคือ Mersenne Prime หรือไม่?
ตัวเลขคือMersenne Primeถ้าทั้งคู่เป็น Prime และสามารถเขียนในรูปแบบ2 n -1โดยที่nเป็นจำนวนเต็มบวก งานของคุณคือกำหนดจำนวนเต็มบวกใด ๆ พิจารณาว่าเป็น Mersenne หรือไม่ คุณสามารถส่งทั้งฟังก์ชั่นที่ส่งกลับค่าความจริง / เท็จหรือโปรแกรมเต็มรูปแบบที่ดำเนินการ IO กฎ: เนื่องจากเป็นรหัส - กอล์ฟคุณควรตั้งเป้าหมายให้สั้นที่สุดนับไบต์ อนุญาตให้สร้างเครื่องได้ ใช้ช่องโหว่ของการเล่นกอล์ฟแบบมาตรฐาน - คุณไม่สามารถอ่านค่ากำหนดของ Mersenne จากไฟล์ภายนอกหรือเขียนโค้ดลงในโปรแกรมของคุณ โปรแกรมของคุณควรทำงานกับค่าภายในขนาดจำนวนเต็มมาตรฐานของภาษาของคุณ กรณีทดสอบ สำหรับการอ้างอิงรายการ (ที่รู้จักกัน) จำนวนเฉพาะแมร์แซนสามารถพบได้ที่นี่ กรณีทดสอบที่มีประโยชน์ ได้แก่ : 2 -> False 1 -> False 20 -> False 51 -> False 63 -> False 3 -> …

30
ง่ายเหมือน One-Two-Three
เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้จำนวนเต็มบวก คุณสามารถสมมติว่าอินพุตถูกต้องและอาจใช้เป็นสตริง หากเป็นตัวเลขใด ๆ 123 234 345 456 567 678 789 แล้วเอาท์พุทtruthyค่า มิฉะนั้นให้ส่งออกค่าเท็จ ตัวอย่างเช่นอินพุต 1 2 3 12 122 124 132 321 457 777 890 900 1011 1230 1234 จะต้องส่งผลให้การส่งออกเท็จ (อินพุตจะไม่มีเลขศูนย์นำหน้าดังนั้นคุณไม่จำเป็นต้องกังวลเกี่ยวกับสิ่งต่าง ๆ เช่น012) รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ

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