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

ความท้าทายของรหัสคือการแข่งขันสำหรับวิธีสร้างสรรค์ในการแก้ปริศนาการเขียนโปรแกรมด้วยเกณฑ์การชนะอย่างมีเป้าหมายซึ่งไม่ครอบคลุมด้วยแท็กให้คะแนนอื่น ๆ (เช่นรหัส - กอล์ฟ)

3
ค้นหารูปแบบในเงื่อนไข
ในความท้าทายนี้งานของคุณคือการหาวัสดุพิมพ์ที่มีโครงสร้างที่กำหนด อินพุต ข้อมูลของคุณจะเป็นสองสายที่เป็นตัวเลขไม่ว่างเปล่าเป็นรูปแบบ pและข้อความ tแนวคิดก็คืออักขระแต่ละตัวจะpแทนซับสตริงที่ไม่ว่างเปล่าที่ต่อเนื่องกันtซึ่งเกิดขึ้นถัดจากกันและกันและpแสดงถึงการต่อกันของมัน อักขระที่เหมือนกันสอดคล้องกับสตริงย่อยที่เหมือนกัน ตัวอย่างเช่นรูปแบบaaหมายถึงสแควร์ที่ไม่ว่างเปล่า (สตริงที่ได้จากการต่อสตริงที่สั้นกว่าเข้ากับตัวเอง) ดังนั้นรูปแบบaaสามารถจับคู่สตริงย่อยbyebyeได้ด้วยการaจับคู่แต่ละbyeครั้ง เอาท์พุต หากข้อความที่tมีสตริงย่อยที่pการแข่งขันแล้วส่งออกของคุณจะเป็นสตริงย่อยที่มีทวิภาคแทรกระหว่างสตริงที่ตรงกับตัวละคร: pตัวอย่างเช่นถ้าเรามีt = byebyenowและp = aaก็bye:byeเป็นผลลัพธ์ที่ยอมรับได้ อาจมีหลายตัวเลือกสำหรับสตริงย่อยที่ตรงกัน แต่คุณจะส่งออกหนึ่งในพวกเขาเท่านั้น ถ้าtไม่ได้มี substring :(จับคู่ของคุณออกจะเป็นหน้าเศร้า กฎและคำชี้แจง ตัวละครที่แตกต่างกันpสามารถสอดคล้องกับสตริงเหมือนกันเพื่อให้สามารถจับคู่สตริงp = aba AAAโปรดทราบว่าตัวละครจะต้องสอดคล้องกับสตริงที่ไม่ว่างเปล่า; โดยเฉพาะอย่างยิ่งถ้าpมีความยาวมากกว่าการส่งออกจะต้องมีt:( คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่นเต็มรูปแบบและคุณยังสามารถเปลี่ยนลำดับของอินพุตทั้งสองได้ จำนวนไบต์ต่ำสุดที่ชนะและไม่อนุญาตช่องโหว่มาตรฐาน กรณีทดสอบ pattern text -> outputได้รับในรูปแบบ โปรดทราบว่าอาจมีเอาต์พุตอื่นที่ยอมรับได้ a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

2
ช่วยให้หุ่นยนต์ของเราไปถึงเครื่องเคลื่อนย้ายมวลสาร
UPDATE: เพิ่มเฟรมเวิร์ก Python เพื่อเริ่มต้น สถานีอวกาศถูกแซงโดยบ็อตคั้น คุณต้องนำบอทเทคราคาแพงและเปราะบางของเราจำนวนมากที่เรียกว่า "กระต่าย" ไปยังเทเลพอร์เตอร์ทางออกก่อนที่สถานีจะทำลายตัวเอง แต่บอทบ็อตกำลังลาดตระเว ณ ทางเดิน โปรแกรมของคุณจะได้รับแผนที่ ASCII และทุกเทิร์นจะได้รับการบอกตำแหน่งของ crusher-bots และกระต่ายปัจจุบันของคุณ โปรแกรมของคุณควรย้ายกระต่ายของคุณไปที่เครื่องเคลื่อนย้ายมวลสารทางออกในขณะที่หลีกเลี่ยงการบดขยี้บ็อต การกระทำ เรียกใช้คอนโทรลเลอร์ Python 2 ด้วย: python controller.py <mapfile> <turns> <seed> <runs> <prog>... <prog> can be <interpreter> <yourprog> or similar. seed เป็นจำนวนเต็มขนาดเล็กที่ใช้สำหรับเครื่องบดและโปรแกรม PRNG ของคุณเพื่อให้สามารถทำงานซ้ำได้ โปรแกรมของคุณควรทำงานอย่างสม่ำเสมอโดยไม่คำนึงถึงเมล็ดที่ใช้จริง หากเมล็ดเป็นศูนย์ตัวควบคุมจะใช้เมล็ดพันธุ์แบบสุ่มสำหรับการวิ่งแต่ละครั้ง ตัวควบคุมจะเรียกใช้โปรแกรมของคุณด้วยชื่อของไฟล์ข้อความแผนที่และ seed เป็นอาร์กิวเมนต์ เช่น: perl wandomwabbits.pl large.map 322 …

8
การสร้างคำศัพท์ยาว ๆ
ความท้าทายนี้คือการค้นหาคำที่ยาวที่สุดของคำภาษาอังกฤษซึ่งอักขระ 3 ตัวแรกของคำถัดไปตรงกับอักขระ 3 ตัวสุดท้ายของคำสุดท้าย คุณจะใช้พจนานุกรมทั่วไปที่มีอยู่ในลีนุกซ์รุ่นลีนุกซ์ซึ่งสามารถดาวน์โหลดได้ที่นี่: https://www.dropbox.com/s/8tyzf94ps37tzp7/words?dl=0 ซึ่งมีคำภาษาอังกฤษ 99171 หากโลคัล Linux ของคุณ/usr/share/dict/wordsเป็นไฟล์เดียวกัน (มี md5sum == cbbcded3dc3b61ad50c4e36f79c37084) คุณสามารถใช้มันได้ คำสามารถใช้ได้เพียงครั้งเดียวในคำตอบ แก้ไข:ตัวอักษรต้องตรงกันทุกประการรวมถึงตัวพิมพ์ใหญ่ / ตัวพิมพ์เล็กและเครื่องหมายเน้นเสียง ตัวอย่างของคำตอบที่ถูกต้องคือ: idea deadpan panoramic micra craftsman mantra traffic fiche ซึ่งจะได้คะแนน 8 คำตอบที่มีคำที่ถูกต้องที่สุดจะเป็นผู้ชนะ ในกรณีที่เสมอกันคำตอบที่เร็วที่สุดจะเป็นฝ่ายชนะ คำตอบของคุณควรแสดงรายการคำที่คุณพบและ (แน่นอน) โปรแกรมที่คุณเขียนให้ทำ

3
เลือกรหัสภาษาของคุณเอง
ลองใช้กริดที่มีอักขระ ASCII ขนาด 16x16 ที่พิมพ์ได้ (รหัสคะแนน 0x20 ถึง 0x7E) มีเส้นทาง 30-select-15 จากด้านบนซ้ายไปที่มุมขวาล่างทำให้มีการเคลื่อนที่แบบมุมฉากเท่านั้นดังตัวอย่างต่อไปนี้: ##.............. .#.............. .######......... ......##........ .......##....... ........#....... ........#....... ........#....... ........###..... ..........###... ............#... ............#### ...............# ...............# ...............# แต่ละเส้นทางดังกล่าวประกอบด้วยอักขระ 31 ตัว โปรดทราบว่าตัวละครเหล่านั้นแต่ละตัวมีความแตกต่างกันในการต่อต้านแนวทแยงมุมทั้ง 31: 0123456789ABCDEF 123456789ABCDEFG 23456789ABCDEFGH 3456789ABCDEFGHI 456789ABCDEFGHIJ 56789ABCDEFGHIJK 6789ABCDEFGHIJKL 789ABCDEFGHIJKLM 89ABCDEFGHIJKLMN 9ABCDEFGHIJKLMNO ABCDEFGHIJKLMNOP BCDEFGHIJKLMNOPQ CDEFGHIJKLMNOPQR DEFGHIJKLMNOPQRS EFGHIJKLMNOPQRST FGHIJKLMNOPQRSTU นี่ไม่ใช่ตารางตัวอย่าง นี่คือการสร้างภาพของการต่อต้านแนวทแยงมุมทั้ง …

6
Bytecode ล่ามขนาดเล็กที่สุด / VM
กระดานผู้นำ - รวบรวม JIT (ด้านล่างดีกว่า) es1024 - 81.2 คะแนน (รวมถึงคอมไพเลอร์ที่ใช้งานได้!) Kieth Randall - 116 คะแนน Ell - 121 คะแนน กระดานผู้นำ - ตีความ (ด้านล่างดีกว่า) Martin Büttner - 706654 คะแนน (ประมาณ 2 ชั่วโมง) criptych - 30379 คะแนน (97 วินาที) ภารกิจของคุณคุณควรเลือกที่จะยอมรับมันคือการเขียน bytecode interpreter / VM ที่เล็กที่สุดที่เป็นไปได้ VM / interpreter ใช้สถาปัตยกรรม CISC ขนาดเล็ก (การดำเนินการอาจแตกต่างกันในขนาด) …

4
ตั้งโปรแกรม AI 2048 โดยใช้ Framework ที่มีอยู่
แก้ไข: เมื่อเร็ว ๆ นี้คำถามของฉันได้รับการเสนอให้เป็นซ้ำของ2048 Bot ท้าทาย ฉันต้องการเน้นว่าคำถามนี้แตกต่างจากคำถามนั้นและจะต้องการคำตอบที่จะคิดต่างจากคำถามนั้น 2048 Bot Challenge ขอให้ผู้ใช้สร้างบอทและมันจะทำงานเป็นเวลาหนึ่งชั่วโมงโดยมีคะแนนสูงสุดเป็นคะแนนของผู้ใช้ นอกจากนี้มีขีด จำกัด ที่ 555 ไบต์ ความท้าทายของฉันใช้งานรหัสน้อยกว่ามากเพียง 3 ครั้งเท่านั้น คะแนนของคุณถูกคำนวณโดยใช้คะแนนเฉลี่ยของสามครั้งและหารด้วยความยาวอักขระของรหัสไม้ตีกอล์ฟของคุณ คำถามของฉันสนับสนุนให้รายการนั้น "ฉลาดกว่า" และอย่าพยายามและได้คะแนนสูงสุดด้วยกำลังดุร้าย - แก้ไข: วิธีการรับถูกเปลี่ยนเป็น getTile เพื่อหลีกเลี่ยงความขัดแย้งกับคำหลัก JS นอกจากนี้ส่วนคะแนนสูงถูกเพิ่มเข้ามา เมื่อเร็ว ๆ นี้ฉันสร้างเว็บไซต์ที่อนุญาตให้เกมยอดนิยม 2048 สามารถควบคุมได้โดยใช้ JavaScript ไซต์ของฉันเชื่อมโยงที่นี่: http://thatcoolidea.com/2048 วิธี: Ace Editor อยู่เหนือบอร์ด คุณวางรหัสไว้ในนั้นซึ่งจะทำงานหนึ่งครั้งทุก ๆ 250 มิลลิวินาทีหรือ 4 ครั้งต่อวินาที สิ่งนี้เรียกว่าวัฏจักร ใช้วิธีการต่อไปนี้เพื่อควบคุมบอร์ด …

30
รหัสตัวต่อจิ๊กซอว์
นี่คือความท้าทายขึ้นอยู่กับคำตอบ! ลำดับของคำตอบมีความสำคัญและงานที่แน่นอนของคุณขึ้นอยู่กับคำตอบสุดท้ายที่โพสต์ คุณอาจต้องการที่จะเรียงลำดับคำตอบโดยที่เก่าแก่ที่สุด มารวมรหัสกัน! ต่อไปนี้คือ 1920 อักขระสุ่ม (ASCII ที่พิมพ์ได้) คิดว่าพวกเขาเป็นกองชิ้นส่วนจิ๊กซอว์จิ๊กซอว์ที่ยังไม่เรียงอยู่ในกล่อง: L-^=v^Ej2tW8OxNOIecSt4m}tji2O%YRJ;PJ!M|0*oO77$*Rs&2*<c"KI7e%FY^?I=];Y@`x)u)IBk%_a#<E6<yv5O*$kL): KNGq)2Wa%b)j."(6U|{[UY@`lrCSJ`u0RHX!1z7f,v}n=GvRgkrEZ=YT:4H44bz]iC<](:+FF?Ay'vX~h5QMF)0vaXk1sk@p Zj).{+l;PBKHABvEP%FnSw>u<_-4B^A>I8Kay&5]vXZJ{fCF]UVZ<!ZpOI$7\Y%`@:%H3wPsX-`/l]ZZ?Q/d`\M<T@'t]zip {[ovg:6EpCT&'+vU4Heb^;}0AV|?<}M0rAH/^DL"RkT~%$[VUlM]-&We4(P=66},hL~;a`:$'yty.W[g2OWcL~b:Ryj0*eN< ;&-n[F1F=oh0k[NI!xS"]pA@Y;K}'=ekG5yda8J$+`N;:FIx:l,f_LT@sV[]HF@2*vl?|q"GL1j&%e(CyYPqY%3W|@`z}]bp 4_'1Nx{"G2&j6$UWt_#%`sTt2xC}s1P8J<gV24_RWge/aMuyVOjz=zS!1i2s@`Q#@^~@W/k@.YLbKxS:g9?J^p;7ju?B\yC5 x,ZApKS5G4}kx_iM)f4/|su>=[{XSV#{,j5Qn3U.v5LF;HXs%DYm4'+efmU;\}f6j$SFCRC`Gsd37:'3$q=bs;lvsW0Yj^:- I[94@I|.IpR=}4KB4Z0G4>8PR29'L?n\gk,*4X[-%T`\FC)jj0jl_x<xL8E:G2-"3tT8&E}"sE+SH[7jR%@V)a{!m8K>.rAO 2[dq7GX9nrz8p4}^2mn@q|dF%<.Tl8)Dk?O.<UoE(a*k_=4+u!h$^bVd:$jS#EHFh@Z=y=ib^~/~lEJ^SQ3E_t#&^IOov7v8 ~j#I#OHgxg{DZDyCsq-(GVq}HbiG,JV?eJ~5wJ;bSt@;3LI!2(6gIT92>}`_dw;YF@ccTIEz\Gu@2(}J2I1"S{R(2niIYPp9 8A3iiP[*!SH2*SN8'`V?w4Ufx2H*Az%{}FlUdH31TJ5{:ge^N91^;9Gj`Uqf'$_|8P"kHR1w.(ASwmN)U-~q"[XcWbqPnns= d.ZoPJ}$Xc2lA>HN28`(d0y+UAr*sQ=?KE07=\FsVN(#?&hRabS%BVI#<`O$o#4x5ZFFLGDcA4t?&Eh~Z$oBWwNSNv`^;vO' 2&9egng~L#\QkfMG?S/n@%-VA[?f9K&3"V%P#Sv0!D<,GV:Z;3c&zFe^k&^0b7fAjvrbMc^Lq7k$h=YL<h7<0\NK>~Q=uUv) 4cI$.'b-RVS-=rom:=8QR=c>9am-^5F[XGv>E/>|]~\']3{r{kTc?ee1v=;I7]52#NE)~A;}!z>5?hi{5<9FtWH6{VO_Y-Jy Mw>{l8n#mD,kl'8cG^.7sy=QqU-3~SKGs5(.Ta]:-Vfr'NS$o*q:w6e$&7spk3{CFT'l_hGY0-0Xui*5i^0^fO@6?2IdCn_C lPKaJ6]0t!u>v8<d'Vby]8kEHh04p(YI)&7w82BrGB3PkI,s+%7ux5)gau`G!8F8hLa4[lfD55Xf3Hqy*-K,?;2'fxH3JWYE Z.[N`:[K:CY@TzKX4TMXsm{Xbd:B3)Gy[mlwnC$>)z`:k=C\0ho/v{57#+2,*%]>p~vI2^C:2DebJR>.ESw^wd2N<~]O9sOQ `_yvIw&Ryf%JgT@W(G1wfU3.4G3U}x1jKJzJY\S9n$2~P;F}*eT9UXcTNBTrTs>~0v_Oi.y8ofX6i5u$;'^"q][QhTb*gO[U n'R0"v1r+9fv;5G7Bg=D:c*a=1@[}7}dYOO{Mz2&@6`jnNq.QcBDM9Dd=R.*=MqZ93#'{AJJFqx<{qb':B!H8ig1L%T\Vuc" (h$i3`,scX'hqpbw"=nY`*Lu:h1wR{+-`\^3cQkIWfq)3?&p;~pvDW$o7\O|R6rB2{PX.s#G6A.s<OA_,TI_b*&lO@L3KrQv "พื้น" ที่เรากำลังสับสนอยู่ในตอนแรกเป็นเพียงช่องว่างขนาด 96x20 (จุดรหัส 0x20) แต่ละคำตอบอาจเคลื่อนที่ไปรอบ ๆ บล็อกที่อยู่ติดกันและเลือกจิ๊กซอว์สูงสุด 10 ตัว (ตัวอักษร) และเพิ่มลงในจิ๊กซอว์เพื่อสร้างโปรแกรมใหม่ โปรแกรมนั้นจะต้องพิมพ์จำนวนคำตอบของคุณ (เรียงตามลำดับหมายเลขโดยเริ่มจาก 1) ตอบ สิ่งสำคัญที่ต้องเข้าใจเกี่ยวกับความท้าทายนี้คือการที่บุคคลเพียงคนเดียวสามารถตอบในเวลาและแต่ละคำตอบขึ้นอยู่กับหนึ่งก่อนที่มันจะ มีไม่ควรจะมีสองคำตอบที่มีหมายเลขเดียวกันN หากมีคนสองคนตอบพร้อมกันสำหรับNบางคนผู้ตอบในภายหลัง (แม้ว่าจะมีความแตกต่างไม่กี่วินาที) …

13
สร้างคอมไพเลอร์ FizzBuzz
ยินดีต้อนรับสู่โลกของคอมไพเลอร์กอล์ฟ งานของคุณคือการเขียนโปรแกรมที่สร้างโปรแกรมอื่นเพื่อเล่นตัวแปรของ FizzBuzz บนสเปค คอมไพเลอร์ของคุณ เขียนคอมไพเลอร์ที่สร้างตัวแปรของโปรแกรม FizzBuzz ให้เป็นข้อมูลจำเพาะ ข้อมูลจำเพาะของชุดตัวเลือกนี้จะแสดงในรูปแบบของอาร์เรย์ของคู่จำนวนเต็ม / สตริง ข้อมูลที่ป้อนอาจอยู่ในรูปแบบใดก็ได้ที่สะดวกกับภาษาของคุณ (ตัวอย่างของฉันใช้ n: xxxx แต่นี่ใช้เพื่อเป็นตัวอย่างเท่านั้น) แต่ละอินพุตจำนวนเต็มสามารถใช้ได้หนึ่งครั้งต่อการเรียกใช้คอมไพเลอร์ของคุณ จำนวนเต็มของแต่ละคู่จะมีค่าอย่างน้อยหนึ่งคู่ สตริงของแต่ละคู่จะประกอบด้วยตัวอักษร ASCII เพียงสี่ตัวเท่านั้น ผลลัพธ์จะต้องเป็นโปรแกรมสมบูรณ์แบบเดียวที่เป็นไปตามกฎด้านล่าง ผลลัพธ์อาจอยู่ในรูปแบบที่สะดวกใด ๆ ตราบใดที่มันเป็นโปรแกรมต้นฉบับเดิม (ดังนั้นจึงไม่มีการแสดงออกแลมบ์ดาที่ส่งคืน) พฤติกรรมไม่ได้ถูกกำหนดไว้สำหรับอินพุตที่ไม่เป็นไปตามกฎข้างต้น โปรแกรม FizzBuzz ที่คุณสร้างขึ้น โปรแกรมที่สร้างขึ้นโดยคอมไพเลอร์ของคุณจะใช้เป็นจำนวนเต็มเดียวnเป็น input มันจะส่งออกลำดับของตัวเลขเริ่มต้นจากหนึ่งถึงและรวมถึงnแทนที่ตัวเลขด้วยสตริง FizzBuzz เมื่อจำเป็น โปรแกรมที่สร้างขึ้นต้องเป็นภาษาเดียวกันกับคอมไพเลอร์ อินพุตnอาจอยู่ในรูปแบบใดก็ได้ที่สะดวกกับภาษาของคุณ nจะมีค่าอย่างน้อยหนึ่งค่า จำนวนที่เป็นจำนวนเต็มอย่างน้อยหนึ่งในจำนวนเต็มเข้ากับคอมไพเลอร์จะต้องถูกแทนที่ด้วยสตริงทั้งหมดที่จับคู่กับจำนวนเต็มเหล่านั้นรวมเข้าด้วยกัน จำนวนที่จะไม่ถูกแทนที่ด้วยสตริง FizzBuzz จะต้องส่งออกใน ASCII ทศนิยม ตัวอย่างเช่น; > GenFizzBuzz 3:Fizz 5:Buzz > …

6
พนักงานขาย
คุณจะได้รับเป็นรายการหรือเวกเตอร์หรืออะไรก็ตามกลุ่มของ 3-tuples หรืออะไรก็ตามที่สองสิ่งแรกคือสตริงและสิ่งที่สามคือจำนวน สตริงคือเมืองและจำนวนคือระยะห่างระหว่างพวกเขา คำสั่งของเมืองในทูเปิลนั้นเป็นเรื่องที่ไม่มีกฎเกณฑ์ (เช่นไม่สำคัญว่าจะมาก่อนและมาเป็นอันดับที่สอง) เนื่องจากเป็นระยะทางเท่ากันในแต่ละวิธี นอกจากนี้ยังมีสิ่งอันดับหนึ่งสำหรับการอ้างอิงที่เชื่อมต่อแต่ละคู่ อาจไม่มีการเชื่อมต่อทุกเมือง นอกจากนี้ระยะทางยังเป็นบวกอยู่เสมอ (ไม่ใช่0) คุณไม่จำเป็นต้องตรวจสอบเงื่อนไขเหล่านี้คุณอาจสันนิษฐานว่าอินพุตจะมีรูปแบบที่ดี งานของคุณคือคืนเมืองในลำดับวนรอบเช่นถ้าคุณเริ่มที่เมืองใดเมืองหนึ่งและวนรอบกลับไปที่เมืองเดียวกันระยะทางระหว่างเมืองจะน้อยที่สุด (อย่างแน่นอนและทั้งหมด กรณี) คุณอาจคิดว่ามีวิธีแก้ปัญหาอยู่ ตัวอย่างเช่นให้เราบอกว่าคุณได้รับ [("New York", "Detroit", 2.2), ("New York", "Dillsburg", 3.7), ("Hong Kong", "Dillsburg", 4), ("Hong Kong", "Detroit", 4), ("Dillsburg", "Detroit", 9000.1), ("New York", "Hong Kong", 9000.01)] คุณสามารถส่งออกใด ๆ ต่อไปนี้ (แต่คุณจะต้องส่งออกอย่างใดอย่างหนึ่ง): ["Detroit","Hong Kong","Dillsburg","New York"] ["Hong Kong","Dillsburg","New …

2
การบีบอัดแบบผูกขาด
รับสตริงที่แสดงถึงสถานะปัจจุบันของเกมMonopolyที่จุดเริ่มต้นของการเปิดของผู้เล่นบีบอัดข้อมูลที่จำเป็นทั้งหมดลงในเอาต์พุตที่เล็กที่สุด คำตอบจะถูกตัดสินโดยขนาดของการส่งออกและขนาดแหล่งที่มา หมายเหตุ: มีหลายรูปแบบในภูมิภาค แต่การอ้างอิงทั้งหมดในโพสต์นี้ไปยังชื่อทรัพย์สิน ฯลฯ อ้างอิงจากบอร์ดนี้ การป้อนข้อมูล: อินพุตจะถูกกำหนดเป็น;สตริงที่แยกเดี่ยว สตริงนี้มอบให้กับโปรแกรมในลักษณะใดก็ตามที่เป็นธรรมเนียมในภาษาที่คุณเลือกไม่ว่าจะเป็น stdin, อาร์กิวเมนต์ ฯลฯ อินพุตที่ยังไม่ฟอร์แมตจะมีลักษณะดังนี้: numPlayers (1 to 8) whose turn (0 to numPlayers-1) for each player: bankrupt? (true/false) money (0 to 2^16-1) get-out-of-jail-free cards (0 to 2) position (0 to 39) jail turns (-1 to 2) for 28 properties: owner …

9
สลับลำดับของคำในสตริง inplace
งาน [a-z]+( [a-z]+)*คุณจะได้รับสตริงแน่นอนว่าการแข่งขัน คุณต้องกลายพันธุ์ให้เป็นสตริงซึ่งมีคำเดียวกัน แต่เรียงกลับกันดังนั้น "สวัสดีทุกคน" จึงกลายเป็น "ทุกคนที่นั่นสวัสดี" คุณไม่ได้รับอนุญาตให้ใช้หน่วยความจำเพิ่มเติมมากกว่าจำนวนคงที่ (ดังนั้นห้ามคัดลอกทั้งสตริงหรือทั้งคำลงในบัฟเฟอร์ที่คุณเพิ่งจัดสรร) ไม่มีการ จำกัด เวลา การไม่มีประสิทธิภาพอย่างสิ้นหวังจะไม่เป็นอันตรายต่อคะแนนของคุณ หากภาษาที่คุณเลือกไม่อนุญาตให้มีการกลายพันธุ์ของสตริงอาร์เรย์ของอักขระเป็นสิ่งทดแทนที่ยอมรับได้ คะแนนของคุณ คะแนนของคุณจะถูกนับอย่างหมดจดจากจำนวนชุดที่คุณทำกับองค์ประกอบสตริง (คะแนนน้อยที่สุดจะดีที่สุด) ถ้าคุณใช้ฟังก์ชันไลบรารีที่เขียนไปยังสตริงการเขียนของมันก็จะถูกนับด้วย สมมติว่าจำนวนของการมอบหมายงานที่คุณต้องการสำหรับการป้อนข้อมูลที่เป็นn (s) แล้วคะแนนของคุณเป็นสูงสุด (อวด, supremum) มากกว่าปัจจัยการผลิตทั้งหมดs (ตรงกับ regex ที่ระบุข้างต้น) ของn (s) / ความยาว (s) หากคุณไม่สามารถคำนวณได้อย่างแม่นยำคุณสามารถใช้ขอบเขตบนที่ต่ำที่สุดที่คุณสามารถพิสูจน์ได้ คุณสามารถทำลายการผูกหากคุณสามารถพิสูจน์ได้ว่าอัลกอริทึมของคุณใช้การมอบหมายน้อยกว่าแบบไม่แสดงอาการ (สามารถเกิดขึ้นได้แม้ว่าคุณจะมีคะแนนเท่ากันดูด้านล่าง) หากคุณไม่สามารถทำสิ่งนี้ได้คุณสามารถหยุดความสัมพันธ์โดยแสดงว่าคุณใช้หน่วยความจำเพิ่มเติมน้อยลง อย่างไรก็ตามเงื่อนไข tie-break แรกจะมีความสำคัญกว่าเสมอ สำหรับอินพุตบางตัวต้องเปลี่ยนดังนั้นจึงไม่สามารถทำคะแนนได้น้อยกว่า 1 ฉันสามารถคิดถึงอัลกอริทึมอย่างง่ายที่มีคะแนน 2 (แต่ฉันไม่ได้ป้อน) หมายเหตุเกี่ยวกับ suprema และเน็คไท จำนวนสูงสุดของชุดตัวเลขคือจำนวนที่เล็กที่สุดที่ไม่เล็กกว่าค่าใด ๆ …

2
กระชับโปรแกรม Befunge
Befungeเป็นภาษาโปรแกรมลับสองมิติ แนวคิดพื้นฐานคือคำสั่ง (อักขระหนึ่งตัว) ถูกวางไว้บนกริด 2 มิติ โฟลว์ควบคุมเดินข้ามตารางดำเนินการคำสั่งที่ส่งผ่านและเปลี่ยนทิศทางเมื่อกระทบกับลูกศร ( >^<v) คำสั่งเป็นแบบสแต็ก ดูรายการนี้ ดูเพิ่มเติมhttp://esolangs.org/wiki/Befunge ข้อมูลจำเพาะสำหรับ Befunge-98มีให้บริการ ปัญหา เขียนโปรแกรมที่แปลงโปรแกรม Befunge เป็นรูปแบบที่กะทัดรัดยิ่งขึ้น ตัวอย่างเช่นโปรแกรมต่อไปนี้จะพิมพ์0: > 0 v > @ . ^ < ในกรณีนี้มันสามารถบีบอัดได้โดยไม่ต้องเปลี่ยนพฤติกรรมของโปรแกรมโดยการลบแถวของช่องว่างเพื่อให้ >0v >@. ^ < การแปลงซับซ้อนมากขึ้นสามารถหมุนหรือเรียงลำดับคำสั่งของมิเรอร์และกำจัดคำสั่งควบคุมโฟลว์ที่ไม่จำเป็นเพื่อให้โปรแกรมมีขนาดกะทัดรัด ตัวอย่างเช่นด้วยโปรแกรมนี้: >12345v 6 v....7< . . . @ คุณอาจปิดท้ายโปรแกรมเข้าไปในรู: >12345v >...@ 6 ^....7< สำหรับตัวอย่างแรกโปรแกรมขนาดกะทัดรัดที่สุดที่เป็นไปได้คือ >0.@ คุณสามารถใช้การแปลงใด ๆ …

3
เขียนโค้ด java เพื่อตรวจหาเวอร์ชัน JVM
วัตถุประสงค์คือการเขียนโค้ดจาวาที่ตรวจจับเวอร์ชัน JVM โดยอาศัยการเปลี่ยนแปลงความเข้ากันได้ผลข้างเคียงข้อบกพร่องและ / หรือพฤติกรรมที่ไม่ได้กำหนดซึ่งทำงานในลักษณะหนึ่งเวอร์ชันและอีกวิธีในเวอร์ชันอื่น นอกจากนี้โค้ดควรมีอย่างน้อยอ่านได้เล็กน้อยโดยไม่เสียสละช่องว่างและชื่อตัวแปรที่ชัดเจน เพื่อให้มั่นใจว่าวัตถุประสงค์กฎอย่างเป็นทางการที่แน่นอนคือ: รหัสจะต้องเขียนใน java และควรส่งออกรุ่น JRE ที่มันกำลังทำงานอยู่ รหัสจะต้องไม่ใช้ JDK หรือ JRE API ใด ๆ ที่จัดไว้ให้โดยเฉพาะสำหรับการตรวจจับเวอร์ชันจาวาหรือซึ่งให้รุ่น JDK หรือ JRE ฟรี รหัสจะต้องไม่ใช้การสะท้อน รหัสจำเป็นต้องใช้เพื่อทำงานใน Hotspot Java SE 5, 6 และ 7 แต่อาจทำงานใน JVM อื่น ๆ รหัสต้องไม่ใช้ไลบรารีบุคคลที่สามใด ๆ ใน classpath รหัสจะต้องไม่เริ่มกระบวนการอื่นใด java หรือไม่ รหัสจะต้องไม่ใช้ตัวแปรสภาพแวดล้อม รหัสจะต้องไม่ค้นหาระบบไฟล์เพื่อค้นหาไฟล์หรือโฟลเดอร์ที่มีอยู่แล้ว รหัสจะต้องอยู่ในไฟล์เดียวและจะเรียกว่าผ่านหรือpublic static void main(String[] …

7
C: แทนที่ตารางย่อย AES FIPS-197 โดยรหัสเวลาคงที่
ในFIPS-197 ( มาตรฐานการเข้ารหัสขั้นสูงที่รู้จักกันในชื่อ AES) มีการใช้งานอย่างหนักSubBytesซึ่งสามารถนำไปใช้เป็น unsigned char SubBytes(unsigned char x) { static const unsigned char t[256] = { 0x63,0x7C,0x77,0x7B,0xF2,0x6B,0x6F,0xC5,0x30,0x01,0x67,0x2B,0xFE,0xD7,0xAB,0x76, 0xCA,0x82,0xC9,0x7D,0xFA,0x59,0x47,0xF0,0xAD,0xD4,0xA2,0xAF,0x9C,0xA4,0x72,0xC0, 0xB7,0xFD,0x93,0x26,0x36,0x3F,0xF7,0xCC,0x34,0xA5,0xE5,0xF1,0x71,0xD8,0x31,0x15, 0x04,0xC7,0x23,0xC3,0x18,0x96,0x05,0x9A,0x07,0x12,0x80,0xE2,0xEB,0x27,0xB2,0x75, 0x09,0x83,0x2C,0x1A,0x1B,0x6E,0x5A,0xA0,0x52,0x3B,0xD6,0xB3,0x29,0xE3,0x2F,0x84, 0x53,0xD1,0x00,0xED,0x20,0xFC,0xB1,0x5B,0x6A,0xCB,0xBE,0x39,0x4A,0x4C,0x58,0xCF, 0xD0,0xEF,0xAA,0xFB,0x43,0x4D,0x33,0x85,0x45,0xF9,0x02,0x7F,0x50,0x3C,0x9F,0xA8, 0x51,0xA3,0x40,0x8F,0x92,0x9D,0x38,0xF5,0xBC,0xB6,0xDA,0x21,0x10,0xFF,0xF3,0xD2, 0xCD,0x0C,0x13,0xEC,0x5F,0x97,0x44,0x17,0xC4,0xA7,0x7E,0x3D,0x64,0x5D,0x19,0x73, 0x60,0x81,0x4F,0xDC,0x22,0x2A,0x90,0x88,0x46,0xEE,0xB8,0x14,0xDE,0x5E,0x0B,0xDB, 0xE0,0x32,0x3A,0x0A,0x49,0x06,0x24,0x5C,0xC2,0xD3,0xAC,0x62,0x91,0x95,0xE4,0x79, 0xE7,0xC8,0x37,0x6D,0x8D,0xD5,0x4E,0xA9,0x6C,0x56,0xF4,0xEA,0x65,0x7A,0xAE,0x08, 0xBA,0x78,0x25,0x2E,0x1C,0xA6,0xB4,0xC6,0xE8,0xDD,0x74,0x1F,0x4B,0xBD,0x8B,0x8A, 0x70,0x3E,0xB5,0x66,0x48,0x03,0xF6,0x0E,0x61,0x35,0x57,0xB9,0x86,0xC1,0x1D,0x9E, 0xE1,0xF8,0x98,0x11,0x69,0xD9,0x8E,0x94,0x9B,0x1E,0x87,0xE9,0xCE,0x55,0x28,0xDF, 0x8C,0xA1,0x89,0x0D,0xBF,0xE6,0x42,0x68,0x41,0x99,0x2D,0x0F,0xB0,0x54,0xBB,0x16}; return t[x];} ฟังก์ชั่นนี้ไม่ได้ใช้เอง มันคือการทำแผนที่ย้อนกลับได้ประกอบด้วยการผกผันในสนาม Galois ตามด้วยการแปลงเลียนแบบ รายละเอียดทั้งหมดอยู่ในส่วนFIPS-197 5.1.1 หรือที่นี่ส่วน 4.2.1 (ภายใต้ชื่อที่แตกต่างกันเล็กน้อย) ปัญหาหนึ่งที่มีการดำเนินการเป็นตารางก็คือว่ามันจะเปิดไปที่เรียกว่าการโจมตีแคชระยะเวลา ดังนั้นภารกิจของคุณคือการสร้างสิ่งทดแทนที่แน่นอนสำหรับSubBytes()ฟังก์ชั่นด้านบนซึ่งแสดงพฤติกรรมที่คงที่ตลอดเวลา เราจะถือว่าเป็นกรณีที่เมื่อไม่มีอะไรขึ้นอยู่กับการป้อนข้อมูลxของSubBytesจะใช้อย่างใดอย่างหนึ่ง เป็นดัชนีอาร์เรย์ การควบคุมตัวถูกดำเนินการของif, …

10
เมทริกซ์จากน้อยไปมาก
"เมทริกซ์จากน้อยไปมาก" เป็นเมทริกซ์ที่ไม่มีที่สิ้นสุดของจำนวนเต็ม (รวม 0) ซึ่งองค์ประกอบใด ๆ เป็นองค์ประกอบที่มีขนาดเล็กที่สุดซึ่งไม่เคยใช้ในแถวและคอลัมน์นั้นมาก่อน: | 1 2 3 4 5 6 ... --+---------------- 1 | 0 1 2 3 4 5 ... 2 | 1 0 3 2 5 4 ... 3 | 2 3 0 1 6 7 ... 4 | 3 2 1 0 7 …
17 code-golf  math  matrix  programming-puzzle  code-golf  music  code-challenge  programming-puzzle  code-golf  fastest-code  code-golf  number  game  code-golf  combinatorics  code-golf  math  sequence  restricted-complexity  code-golf  number  random  code-golf  array-manipulation  code-golf  math  matrix  code-golf  number  sequence  counting  code-golf  math  number  sequence  popularity-contest  number  sequence  code-golf  music  code-golf  number  code-golf  ascii-art  arithmetic  code-golf  code-golf  number  code-golf  code-challenge  array-manipulation  code-golf  grammars  code-challenge  polyglot  code-golf  game  math  python  programming-puzzle  code-challenge  king-of-the-hill  code-challenge  fastest-code  primes  number-theory  number-theory  primes  fastest-code  factoring  popularity-contest  compile-time  code-golf  math 

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