การเขียนโปรแกรมปริศนา & รหัสกอล์ฟ

คำถาม & คำตอบสำหรับผู้ชื่นชอบการเขียนโปรแกรมปริศนา

14
ลำดับหมายเลขคอมโพสิต
ลำดับหมายเลขคอมโพสิต แรงบันดาลใจจากคำถามนี้ รับจำนวนเต็มบวกnรหัสของคุณจะต้องส่งออกจำนวนnประกอบแรก อินพุต / เอาต์พุต คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่น อินพุตคือ STDIN หรืออาร์กิวเมนต์ของฟังก์ชันและเอาต์พุตคือ STDOUT หรือฟังก์ชันส่งคืนค่า เอาต์พุตสามารถเป็นรายการ, อาร์เรย์, หรือสตริง ตัวอย่าง 0 -> 1 -> 4 2 -> 4, 6 3 -> 4, 6, 8 13 -> 4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 22 กฎระเบียบ เช่นเดียวกับช่องโหว่มาตรฐานจะไม่ได้รับอนุญาต บิวด์อินที่สร้างหมายเลขเฉพาะหรือคอมโพสิตไม่ได้รับอนุญาต ไม่อนุญาตให้ใช้ตัวบิวด์ที่เกี่ยวข้องกับหมายเลขเฉพาะหรือคอมโพสิต

1
Golf Wars Episode I: The Phantom Lightsabers
ธีมพื้นหลัง บทนำ โอบีวันเคโนบี Qui-Gon Jinn และ Darth Maul กำลังจะสู้กัน! อย่างไรก็ตามพวกเขาทุกคนลืมที่จะนำกระบี่แสงที่เกี่ยวข้อง เขียนโปรแกรมหรือฟังก์ชั่นที่ให้สายอักขระJediเป็นอินพุตสร้างภาพที่คล้ายกับ* : และรับสตริงSithสร้างภาพที่คล้ายกับสิ่งนี้: ข้อกำหนดรูปภาพ มีไฟกระบี่ 3 ดวงใด ๆ (ใบมีดสีขาวรวมถึงขอบกลมที่ส่วนท้าย (2 รอบสำหรับสีแดง) และรวมถึงที่จับ ) มีความยาว 900px (ซึ่งไม่รวมถึงการไล่ระดับสีรอบ ๆ ใบมีด) ขอบกลมที่ปลายใบมีดเป็นครึ่งวงกลม (โดยประมาณ) โดยมีเส้นผ่านศูนย์กลางเท่ากับความกว้างของใบมีด ใบมีด (เช่นส่วนสีขาวของกระบี่แสง) กว้าง 12px แสงสีเขียวและสีน้ำเงินถูกแยกออกจากกันโดย 200 px (จากเส้นกึ่งกลางของใบมีดสีเขียวไปยังเส้นกลางของใบมีดสีน้ำเงิน) ที่จับสำหรับไฟกระบี่ทั้ง 3 อันคือ 180px (1/5 ของความยาวทั้งหมด) ดังนั้นใบมีดเองรวมถึงขอบกลมยาว 720px สำหรับแสงสีฟ้าและสีเขียวและยาว 360px สำหรับใบมีดสองดวงของกระบี่แสงสีแดง …

2
Cryptic Kicker //
Cryptic Kicker วิธีการเข้ารหัสข้อความธรรมดา แต่ไม่ปลอดภัยคือการดัดแปลงตัวอักษรของตัวอักษร กล่าวอีกนัยหนึ่งตัวอักษรแต่ละตัวจะถูกแทนที่ด้วยตัวอักษรอื่นอย่างสม่ำเสมอ เพื่อให้แน่ใจว่าการเข้ารหัสสามารถย้อนกลับได้ไม่มีการเปลี่ยนตัวอักษรสองตัวด้วยตัวอักษรเดียวกัน งานของคุณคือถอดรหัสข้อความที่เข้ารหัสหลายบรรทัดโดยสมมติว่าแต่ละบรรทัดใช้ชุดการแทนที่ที่แตกต่างกันและคำทั้งหมดในข้อความที่ถอดรหัสมาจากพจนานุกรมของคำที่รู้จัก อินพุต ข้อมูลที่ป้อนประกอบด้วยคำตัวพิมพ์เล็กตามลำดับตัวอักษร คำเหล่านี้ประกอบด้วยพจนานุกรมของคำที่อาจปรากฏในข้อความถอดรหัส การติดตามพจนานุกรมจะมีอินพุตหลายบรรทัด แต่ละบรรทัดถูกเข้ารหัสตามที่อธิบายไว้ข้างต้น พจนานุกรมไม่เกิน 1,000 คำ คำไม่เกิน 16 ตัวอักษร บรรทัดที่เข้ารหัสลับมีตัวอักษรตัวพิมพ์เล็กและช่องว่างเท่านั้นและมีความยาวไม่เกิน 80 อักขระ เอาท์พุต ถอดรหัสแต่ละบรรทัดและพิมพ์ไปยังเอาต์พุตมาตรฐาน หากมีหลายวิธีการแก้ปัญหาใด ๆ ที่จะทำ หากไม่มีวิธีแก้ไขให้แทนที่ตัวอักษรทุกตัวด้วยเครื่องหมายดอกจัน ตัวอย่างอินพุต and dick jane puff spot yertle bjvg xsb hxsn xsb qymm xsb rqat xsb pnetfn xxxx yyy zzzz www yyyy aaa bbbb …

8
Barcodegolf: สร้าง UPC ของตัวเลข
ทุกร้านในปัจจุบันใช้บาร์โค้ดรหัสผลิตภัณฑ์สากล (UPC) เพื่อทำให้กระบวนการเช็คเอาต์ง่ายขึ้น หากชื่อไม่ได้มีความหมายอะไรกับคุณคุณจะจำได้อย่างแน่นอนว่าชื่อพวกเขาเป็นอย่างไร: รูปแบบ ระบบที่พบมากที่สุดคือ UPC-A ซึ่งใช้ตัวเลข 12 หลักในการแสดงผลิตภัณฑ์แต่ละชนิด แต่ละหลักจะถูกเข้ารหัสเป็นชุดของแถบสีดำและสีขาวเพื่อให้เครื่องสามารถอ่านรหัสความยาวเจ็ดบิต มีรูปแบบมูลค่า 11 บิตทั้งหมดที่ระบุจุดเริ่มต้นกลางและจุดสิ้นสุดของบาร์โค้ด มีความยาวรวมบาร์โค้ด 12 × 7 + 11 = 95 บิต (จากนี้ไปเมื่อใช้ไบนารีเพื่ออ้างถึงสีของแต่ละบิต0จะเป็นสีขาวและ1ดำ) 101จุดเริ่มต้นและจุดสิ้นสุดทั้งมีรูปแบบของ ตัวเลขจะถูกแบ่งออกเป็น 2 กลุ่มจาก 6 กลุ่มและเข้ารหัสตามที่แสดงด้านล่างโดยมีรูปแบบ01010ระหว่างกลุ่มซ้ายและขวา ตารางนี้แสดงรายการรูปแบบสำหรับแต่ละหมายเลข โปรดทราบว่ารูปแบบจะแตกต่างกันไปขึ้นอยู่กับว่าตัวเลขอยู่ทางด้านขวาหรือด้านซ้าย (สิ่งนี้อนุญาตให้สแกนบาร์โค้ดคว่ำลง) อย่างไรก็ตามรูปแบบทางด้านขวานั้นตรงกันข้าม (สลับสีดำเป็นสีขาวและกลับกัน) ของด้านซ้าย หากคุณไม่เห็นภาพด้านบนนี่เป็นข้อมูลเทียบเท่าเลขฐานสองของแต่ละหมายเลข # Left Right 0 0001101 1110010 1 0011001 1100110 2 0010011 1101100 3 …

30
เซ็นคำว่า!
ลายเซ็น Word คืออะไร ลายเซ็นของคำที่มีทั้งหมดของตัวอักษรมันใส่ในการสั่งซื้อ - ลายเซ็นของthis, histและที่มีอยู่ทั้งหมดhitshist ความท้าทาย เขียนโปรแกรมโปรแกรมควรถามอินพุตจากนั้นพิมพ์ลายเซ็นของคำนั้น ดังนั้นการรันโปรแกรมตัวอย่างอาจมีลักษณะเช่นนี้: Give me a string: this The signature signature of 'this' is hist. ไม่มีการโต้ตอบที่จำเป็นตราบใดที่รับอินพุตและพิมพ์ลายเซ็นก็ถือว่าใช้ได้ เกณฑ์การให้คะแนน โปรแกรมที่มีจำนวนไบต์น้อยที่สุดชนะ! ลีดเดอร์บอร์ด นี่เป็นตัวอย่างข้อมูลเพื่อสร้างทั้งกระดานผู้นำปกติและภาพรวมของผู้ชนะตามภาษา เพื่อให้แน่ใจว่าคำตอบของคุณปรากฏขึ้นโปรดเริ่มคำตอบด้วยหัวข้อโดยใช้เทมเพลต Markdown ต่อไปนี้: # Language Name, N bytes ที่Nมีขนาดของส่งของคุณ หากคุณปรับปรุงคะแนนของคุณคุณสามารถเก็บคะแนนเก่าไว้ในพาดหัวได้ ตัวอย่างเช่น # Ruby, <s>104</s> <s>101</s> 96 bytes แสดงตัวอย่างรหัส var QUESTION_ID=54945;function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),e.has_more?getAnswers():process()}})}function shouldHaveHeading(e){var …

2
ตัวเก็บประจุคู่
ตัวเก็บประจุมีชื่อเสียงในการผลิตด้วยความทนทานสูง ซึ่งเป็นที่ยอมรับได้ในหลายกรณี แต่บางครั้งจำเป็นต้องใช้ความจุที่มีค่าความคลาดเคลื่อน จำกัด กลยุทธ์ทั่วไปในการรับกำลังการผลิตด้วยมูลค่าที่แน่นอนที่คุณต้องการคือการใช้ตัวเก็บประจุที่วัดอย่างรอบคอบสองชุดพร้อมกันเพื่อให้ความจุเพิ่มขึ้นกับบางสิ่งในช่วงที่คุณต้องการ เป้าหมายในการท้าทายนี้คือกำหนดความจุ (หลายชุด) เพื่อจับคู่ตัวเก็บประจุเพื่อให้ความจุรวมของแต่ละคู่อยู่ในช่วงที่กำหนด คุณต้องค้นหาชุดการจับคู่ที่ดีที่สุดนั่นคือชุดการจับคู่ที่พบมากที่สุดเท่าที่จะเป็นไปได้ ข้อ จำกัด อินพุตประกอบด้วยรูปแบบของตัวเลือก รายการความจุที่ไม่มีการเรียงลำดับซึ่งเป็นตัวแทนของชุดตัวเก็บประจุ (หลาย) ที่คุณมี คู่ของความจุที่แสดงขอบเขตล่างและบนของช่วงเป้าหมาย (รวม) ความจุทั้งหมดในอินพุตเป็นจำนวนเต็มบวกที่น้อยกว่า 2 30หน่วยคือ pF (ไม่ใช่แบบนั้นสำคัญ) นอกเหนือจากรายการความจุในอินพุตชุดตัวเก็บประจุที่คุณยังมีจำนวนของตัวเก็บประจุที่ไม่มีที่สิ้นสุดที่มีค่า 0 pF เอาต์พุตประกอบด้วยรูปแบบของตัวเลือกรายการคู่ของความจุซึ่งผลรวมของแต่ละคู่อยู่ในช่วงเป้าหมายที่ระบุ ไม่ได้ระบุลำดับของคู่หรือลำดับความจุภายในคู่ ความจุในการส่งออกไม่อาจปรากฏบ่อยขึ้นกว่าที่ปรากฏอยู่ในชุดของตัวเก็บประจุที่คุณมี กล่าวอีกนัยหนึ่ง: คู่ที่คุณส่งออกจะต้องไม่ทับซ้อนกัน จะต้องไม่มีเงื่อนไขที่เป็นไปได้สำหรับผลลัพธ์ที่เป็นไปได้ 4 และ 5 ที่มีความจุมากกว่าคู่ที่เอาต์พุตของโปรแกรมของคุณสร้างขึ้น โปรแกรมของคุณจะยุติในเวลา O ( n !) โดยที่nคือความยาวของรายการที่แสดงถึงชุดของตัวเก็บประจุที่คุณมี ช่องโหว่จะไม่ถูกทารุณกรรม ช่วงเป้าหมายจะต้องไม่ว่างเปล่า เกณฑ์การให้คะแนน คะแนนของคุณคือความยาวของการแก้ปัญหาของคุณใน octets หากวิธีการแก้ปัญหาของคุณจัดการเพื่อแก้ปัญหานี้ในเวลาพหุนาม O ( n …

2
Creasing for Loot
บทนำ หลังจากการต่อสู้ที่ยาวนานคุณสามารถเอาชนะสฟิงซ์ได้ในการแข่งขันปริศนา สฟิงซ์สร้างความประทับใจให้กับทักษะของคุณปรารถนาที่จะให้รางวัลแก่คุณด้วยความฉลาดของคุณและเสกให้กลายเป็นแผ่นหนังเวทย์มนตร์ที่แบ่งออกเป็นแปดกล่องแต่ละกล่องมีตัวเลข "สร้างกระดาษหนัง" สฟิงซ์กล่าว "กล่องซ้อนทับกันและกล่องเหล่านั้นจะรวมเข้าด้วยกันด้วยการบวกหรือการคูณเมื่อกล่องใดกล่องหนึ่งเหลืออยู่ค่าของมันจะเป็นรางวัลของคุณในเหรียญทอง" งาน คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่ใช้เป็นรายการ / อาเรย์ / ตัวเลขแปดตัวใด ๆ และป้อนกลับ / พิมพ์รางวัลสูงสุดที่เป็นไปได้ที่ได้รับผ่านชุดการดำเนินงาน 'รอยพับ' กลศาสตร์ ของรอยพับ 'การดำเนินงานจะดำเนินการในจำนวนของเซลล์บางส่วนและมีทั้ง+หรือ*เป็นผู้ประกอบการ n เซลล์แรกของรายการจะถูกพับและรวมเข้ากับเซลล์ปลายทางโดยใช้โอเปอเรเตอร์ เซลล์ใด ๆ ที่ไม่ได้ใช้ในการดำเนินการผสานจะไม่ได้รับการแก้ไข นี่คือตัวอย่างของการตีโดยใช้ n = 3 เซลล์: ใช้อย่างใดอย่างหนึ่งนอกจากนี้ซึ่งจะส่งผลในนี้: หรือการคูณซึ่งจะส่งผลให้สิ่งนี้: หมายเหตุ: เพื่อความง่ายการไม่อนุญาตให้มีการ creasing ที่มีเซลล์น้อยกว่า 1 เซลล์เช่นเดียวกับ creasing ที่มีจำนวนเซลล์มากกว่าหรือเท่ากับความยาวของรายการ อย่างไรก็ตามรายชื่อสามารถลดจำนวนเซลล์ได้มากกว่าครึ่ง รายการ 8 เซลล์สามารถยับ 5 ส่งผลให้ในรายการใหม่ของความยาว 5: [0,1,2,3,4,5,6,7]ยับ 5 เซลล์โดยใช้ผู้ประกอบการจะให้+[9,9,9,1,0] …

1
จำนวนเขาวงกตที่ถูกต้อง
ให้WxHตารางเขาวงกตที่เป็นไปได้กี่ที่จะมี? สิ่งที่คุณรู้เกี่ยวกับเขาวงกต: กริดเป็นHสี่เหลี่ยมจัตุรัสสูงและWกว้าง สี่เหลี่ยมจัตุรัสมีสามประเภท: เริ่มต้นเสร็จสิ้นและว่างเปล่า เขาวงกตของคุณจะต้องมี 1 Start และ 1 Finish อย่างแน่นอนและสี่เหลี่ยมที่เหลือทั้งหมดนั้นจะว่างเปล่า มีกำแพงล้อมรอบเขาวงกตทั้งหมด กำแพงสามารถอยู่บนขอบระหว่างสี่เหลี่ยมสองช่องใดก็ได้ยกเว้นว่ามันจะแตกกฎด้านล่าง: จะต้องมีเส้นทางจากช่องสี่เหลี่ยมเริ่มไปยังสี่เหลี่ยมเส้นชัย ดังนั้นให้มีตัวเลขสองตัวWและHคุณจะต้องส่งกลับหมายเลขเดียวที่แสดงถึงจำนวนของการกำหนดค่าสี่เหลี่ยม / กำแพงที่เป็นไปได้ รับรองได้เลยว่าW*H > 1 ตัวอย่างเช่น2x2เขาวงกตมี100การกำหนดค่าที่เป็นไปได้ที่แตกต่างกันอย่างแน่นอน นี่คือรหัสกอล์ฟเพื่อให้คำตอบที่สั้นที่สุดชนะ!

5
สร้างความน่าจะเป็นรอบ ๆ Numpad
ได้รับแรงบันดาลใจจากคำถามนี้ก่อนหน้านี้ในวันนี้ฉันอยากจะเห็นวิธีที่น่าสนใจในภาษาการเขียนโปรแกรมที่หลากหลายสามารถเปลี่ยน numpad ให้เป็นความน่าจะเป็น โดยทั่วไปแล้วเกมที่เป็นแบบไทล์จะช่วยให้คุณสามารถใช้ numpad เพื่อไปในทิศทางใดก็ได้ตามที่ตัวละครของคุณอยู่ในขณะนี้ เมื่อสร้าง AI สำหรับเกมเหล่านี้Math.random() * 8ไม่เพียงพอดังนั้นฉันจึงต้องมีความคิดสร้างสรรค์เล็กน้อยเพื่อให้การเคลื่อนไหวมีลักษณะและความรู้สึกเป็นธรรมชาติ ตัวเลขถูกกำหนดให้เป็นเช่น: 7 | 8 | 9 - - - - - 4 | x | 6 - - - - - 1 | 2 | 3 โปรดทราบว่า 5 เป็นหมายเลขที่ไม่ถูกต้องเนื่องจากคุณไม่สามารถไปยังตัวคุณเองได้ ตัวอย่างทั้งหมดจะใช้ความน่าจะเป็นเหล่านี้: [50, 40, 30, 20, 10] ถ้าฉันต้องการสร้างความน่าจะเป็นรอบ ๆ8มันจะมีลักษณะเช่นนี้: 40 | …
12 code-golf 

1
ตรวจสอบไพ่ในมือเพื่อหาไพ่นกกระจอก
Mahjongเป็นเกมไพ่ที่ได้รับความนิยมอย่างมากในเอเชีย โดยทั่วไปจะเล่นกับผู้เล่นสี่คนและเป้าหมายของเกมคือการเป็นคนแรกที่เล่นไพ่ที่ถูกต้องโดยใช้มือ ในไพ่นกกระจอกมีไพ่สามใบและไพ่เกียรติยศ - สำหรับความท้าทายนี้เราจะพิจารณาไพ่ที่สร้างด้วยมือจากไพ่ชุดเดียวเท่านั้น เรียงลำดับหมายเลขจาก1ถึง9และมีสำเนาสี่ชุดของแต่ละรายการ มือที่ถูกต้องประกอบด้วยสี่ชุดสามและคู่รวมเป็นไพ่สิบสี่ใบ ชุดของสามสามารถเป็นได้ทั้ง: แฝดสามตัวเดียวกัน (เช่น444) หรือ ลำดับของไพ่สามใบติดต่อกัน (เช่น123หรือ678ไม่ก็ได้357) ลำดับไม่ห่อ (ดังนั้นจึง912ไม่ถูกต้อง) คู่คือไพ่สองใบที่เหมือนกัน (เช่น55) ความท้าทาย ระบุไพ่ที่ถูกต้องสิบสี่ใบให้พิจารณาคะแนนตามเกณฑ์ต่อไปนี้: Condition Description Point/s ------------------------------------------------------------------------------- Straight Contains the sequences 123 456 789 1 Identical sequences Contains two identical sequences 1 All simples Only 2-8, no 1s or 9s 1 All sequences All …
12 code-golf  game 

3
ตรวจสอบว่ามีสตริงย่อย isomorph
คำถามนี้เป็นส่วนขยายของตรวจสอบว่าคำ isomorphs และคัดลอกส่วนแรกของมันเพื่อให้คำจำกัดความของ isomorph คำสองคำคือisomorphsหากพวกเขามีรูปแบบซ้ำของตัวอักษรเดียวกัน ตัวอย่างเช่นทั้งสองESTATEและDUELEDมีรูปแบบabcdca ESTATE DUELED abcdca เพราะตัวอักษร 1 และ 6 เหมือนกันตัวอักษร 3 และ 5 เหมือนกันและไม่มีอะไรเพิ่มเติม E <-> D, S <-> U, T <-> E, A <-> Lนอกจากนี้ยังหมายคำที่เกี่ยวข้องโดยตัวเลขทดแทนที่นี่ด้วยการจับคู่ รับสองสตริง X และ Y โดย X ไม่เกิน Y งานจะต้องตรวจสอบว่ามีสตริงย่อยของ Y ซึ่งเป็น isomorph กับ X หรือไม่ อินพุต:สองตัวอักษรที่ไม่ว่างเปล่าจาก a..zA..Z ซึ่งหนึ่งสตริงต่อบรรทัด สิ่งนี้จะมาจากอินพุตมาตรฐาน เอาท์พุทสตริงย่อยของสตริงที่สองซึ่งเป็น …
12 code-golf 

5
ความเสี่ยงทาง Warlight
บทนำ ในเกมนี้ผู้เล่นใช้กองทัพเพื่อต่อสู้กับกองทัพของผู้เล่นอื่นยึดครองดินแดนและกลายเป็นผู้ชายคนสุดท้ายที่ยืน ทุกเทิร์นผู้เล่นจะได้รับกองทัพจำนวนหนึ่งเพื่อใช้ในการจัดการ อย่างไรก็ตามในการจับภาพดินแดนในบางภูมิภาคผู้เล่นสามารถเพิ่มจำนวนนี้เพื่อให้ได้เปรียบในภายหลังในเกม (นี่เป็นหลักเหมือนกับWarlight ) บอตทั้งหมดควรเขียนใน Java, C หรือ C ++ (ฉันจะรวมภาษาอื่น แต่ไม่มีซอฟต์แวร์หรือประสบการณ์สำหรับพวกเขา) มันไม่ได้เป็นสิ่งที่จำเป็นสำหรับการส่งของคุณจะขยายชั้นเรียนและคุณอาจสร้างฟังก์ชั่น, เรียน, อินเตอร์เฟซหรือสิ่งอื่นเป็นสิ่งที่จำเป็นและใช้แพคเกจหรือระดับใด ๆ ในมาตรฐาน APIs หากคุณวางแผนที่จะสร้างคลาสหรืออินเทอร์เฟซโปรดพิจารณาใช้คลาสภายในหรืออินเทอร์เฟซภายใน โปรดอย่าพยายามแก้ไขตัวควบคุมหรือการส่งอื่น ๆ โดยทางโปรแกรมในการแข่งขันครั้งนี้ เพลย์ ภาพรวม อาร์เรย์สองมิติขนาด 10x10 จะจำลองบอร์ดซึ่งแต่ละองค์ประกอบ / เซลล์แสดงถึง "อาณาเขต" จะมี 20 รอบและสูงถึง 1,000 รอบต่อรอบ ผู้เล่นแต่ละคนจะปรับกองทัพที่พวกเขามีให้กับดินแดนใด ๆ ที่พวกเขาเป็นเจ้าของและจากนั้นจะได้รับโอกาสในการส่งกองทัพของพวกเขาไปยังดินแดนใกล้เคียงในความพยายามที่จะยึดครองดินแดนของฝ่ายตรงข้าม ผู้เล่นจะต้องปรับใช้กองทัพทั้งหมดของพวกเขา แต่พวกเขาไม่จำเป็นต้องย้ายพวกเขาหากต้องการ โจมตี / ถ่ายโอนกองทัพ หากผู้เล่นต้องการเขา / เธอสามารถส่งกองทัพจากดินแดนหนึ่งไปยังอีกแปดที่อยู่ติดกัน กระดาน "ล้อมรอบ" …
12 king-of-the-hill  c  c++  java 

7
กอล์ฟอิออนผสม
ท้าทาย เมื่อได้รับสองอินพุตไอออนบวกและไอออนลบคุณต้องส่งออกสูตรสำหรับสารประกอบไอออนิกซึ่งจะทำจากไอออนทั้งสอง ซึ่งโดยทั่วไปหมายถึงการปรับสมดุลประจุให้เท่ากับศูนย์ อย่ากังวลกับการจัดรูปแบบสูตรด้วยหมายเลขตัวห้อย แต่คุณต้องมีวงเล็บสำหรับไอออนหลายอะตอม (เช่นNO3) คุณไม่ต้องรับผิดชอบข้อผิดพลาดใด ๆ (ตัวอย่างเช่นถ้ามีคนป้อนไอออนลบสองตัวคุณสามารถปล่อยให้โปรแกรมทำงานล้มเหลวได้) หมายเหตุ:นำ Fe ไปคิดค่าใช้จ่าย 3+ ไอออน ทั้งหมดของไอออนซึ่งจะต้องมีการคิดที่พบพร้อมกับค่าใช้จ่ายของพวกเขาในส่วนที่สองของแผ่น AQA ซีเอสเคมีข้อมูล ประจุบวก H + นา+ Ag + K + หลี่+ NH 4 + บา2+ Ca 2+ Cu 2+ Mg 2+ Zn 2+ Pb 2+ เฟ3+ อัล3+ ประจุลบ Cl - Br - F - ฉัน- …

6
ASCII Ripple สามเหลี่ยม
ตกลงคำถามกอล์ฟครั้งแรกของฉัน กรุณาอ่อนโยน :) ฉันรู้ว่ามันมีวิธีการเล่น ASCII มากเกินไป: P แต่ที่นี่เราไปกัน งานนั้นง่ายใช้ภาษาโปรแกรมที่คุณชื่นชอบเพื่อพิมพ์ระลอกสามเหลี่ยม อินพุตควรเป็นขนาดของระลอกคลื่น สามเหลี่ยมแต่ละอันเว้นระยะเท่ากัน โดยพื้นฐานแล้วคุณยังคงเพิ่มรูปสามเหลี่ยมจนกระทั่งมีพื้นที่ไม่เพียงพอสำหรับสามเหลี่ยมที่เล็กที่สุด คุณได้รับอนุญาตให้ใช้ช่องว่างสีขาวได้ทุกที่ที่คุณต้องการตราบใดที่ ripples เหมือนกับตัวอย่างที่มีขนาดถูกต้อง ตัวอย่าง q)g 1 __ \/ q)g 2 ____ \ / \/ q)g 3 ______ \ / \ / \/ q)g 4 ________ \ __ / \ \/ / \ / \/ q)g 5 __________ \ …

2
ค้นหาเส้นทาง Swype ที่สั้นที่สุด
บทนำ เมื่อเร็ว ๆ นี้ฉันเริ่มชินกับการพิมพ์ด้วยSwypeแล้ว ฉันสังเกตเห็นบางคำที่สามารถสร้างได้โดยการวาดเส้นตรงจากตัวอักษรเริ่มต้นของคุณไปยังตัวอักษรสุดท้ายของคุณหรือโดยการข้ามตัวอักษรที่ทำซ้ำ ตัวอย่างเช่นฉันสามารถพิมพ์คำballoonโดย Swyping ผ่านตัวอักษรต่อไปนี้: b> a> l> >on ท้าทาย ขอให้เรากำหนดเส้นทางที่สั้นที่สุด SwypeหรือSSPเป็นจำนวนขั้นต่ำของส่วนของเส้นที่แตกต่างที่จำเป็นในการพิมพ์สตริง ส่วนของเส้นตรงเป็นเส้นตรงต่อเนื่องระหว่างตัวอักษรสองตัวขึ้นไป การเปลี่ยนแปลงทิศทางใด ๆ จะเริ่มเซ็กเมนต์บรรทัดใหม่ - แม้ว่าคำบางคำอาจถูก Swyped โดยการวาดเพียงเส้นตรงเส้นเดียว ใช้รูปแบบแป้นพิมพ์QWERTYง่าย ๆ นี้: q w e r t y u i o p a s d f g h j k l z x c v b …
12 code-golf 

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