คำถามติดแท็ก math

ความท้าทายเกี่ยวข้องกับคณิตศาสตร์ ลองพิจารณาใช้แท็กเฉพาะเจาะจงมากขึ้น: [number] [number-theory] [arithmetic] [combinatorics] [graph-theory] [เรขาคณิต] [abstract-algebra]

12
ไซน์แห่งความยิ่งใหญ่
บทนำ ทุกคนได้ยินไซน์ (บาป) , โคไซน์ (cos) , สัมผัส (สีน้ำตาล) , โคแทนเจนต์ (เปล) , ซีแคนต์ ( ก.ล.ต. )และโคเซแคนต์ (CSC) เกือบทุกมุมมีพวกมัน ห่างไกลไม่รู้จักหรือจำได้ว่าเป็นexsecant (exsec) , excosecant (excsc) , versine (versin)และcoversine (CVS) เกือบทุกมุมมีสิ่งเหล่านั้นเช่นกัน มีบางอย่างที่เป็นที่รู้จักน้อยกว่าแต่เราจะทำตามสิ่งเหล่านี้ ฉันสร้างภาพเหล่านี้สำหรับมุมθซึ่งก็คือ 45 ° ความท้าทาย สร้างโปรแกรมที่รับอินพุตเป็นมุมเป็นnองศาและจะแสดงผล: ไซน์ของมุม n โคไซน์ของมุม n แทนเจนต์ของมุม n ซีแคนต์ของมุม n อย่างน้อยหนึ่งอย่างต่อไปนี้ ทุกรายการเพิ่มเติมจากรายการนี้จะได้รับโบนัส -5% สูงสุด -25% exsecant ของมุม …

5
นิพจน์ที่สั้นที่สุดสำหรับ {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4}
{0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4}รายการที่กำหนดของจำนวนเต็ม สำหรับผู้ที่สนใจตัวเลขเหล่านี้จะใช้ในการคำนวณวันทำงาน Weekday = (m[n] + d + y + y>>2 + y/400 - y/100) % 7;ที่m[n]- การแสดงออกของฉันค้นหาd- วันเดือน, -yyear - (month <= 2) สร้างการแสดงออกซึ่งประกอบด้วยตัวดำเนินการทางคณิตศาสตร์ตรรกะและตัวดำเนินการบิตซึ่งจะส่งออกสำหรับจำนวนเต็มบวกnจำนวนเต็มmดังนั้นที่m % 7เท่ากับจำนวนที่ n ในรายการ ไม่อนุญาตให้ใช้สาขาผู้ประกอบการที่เกี่ยวข้องกับการค้นหาตารางและพอยน์เตอร์ คะแนน: 1 - สำหรับ| & ^ ~ >> <<ผู้ประกอบการ …

24
ฟังก์ชัน Minmod สั้นที่สุด
minmodฟังก์ชั่นเป็นตัวแปรของคุ้นเคยนาทีซึ่งจะปรากฏในความลาดชัน จำกัด รูปแบบความละเอียดสูงสำหรับสมการเชิงอนุพันธ์ เมื่อพิจารณาเป็นจำนวนมากมันจะเลือกความชันที่แบนราบในขณะที่ดูแลสัญญาณสัมพัทธ์ระหว่างเนินเขา ฟังก์ชั่นใช้พารามิเตอร์จำนวนเท่าใดก็ได้ จากนั้นminmod (x 1 , x 2 , ... , x n )ถูกกำหนดเป็น: นาที (x 1 , x 2 , ... , x n )หากทุก x ฉันเป็นบวกอย่างเคร่งครัด สูงสุด (x 1 , x 2 , ... , x n )หากทุก x ฉันเป็นอย่างเคร่งครัดในเชิงลบ 0มิฉะนั้น เราจะพิจารณาอินพุตที่เป็นจำนวนเต็มเท่านั้นเพราะนั่นไม่ได้ส่งผลกระทบต่อการใช้งานจริงและควรจะครอบคลุมมากขึ้นสำหรับบางภาษา (ลึกลับ) เขียนโปรแกรมหรือฟังก์ชั่นซึ่งใช้จำนวนเต็มลงนามn (สำหรับn> …

6
เศษที่ใกล้ที่สุด
งาน: โปรแกรมของคุณจะได้รับที่เหมาะสมในเชิงบวกส่วนที่เรียบง่าย<numerator>/<denominator>ในรูปแบบ สำหรับข้อมูลนี้มันจะต้องพบสองเศษส่วน ส่วนที่น้อยกว่าอินพุต ส่วนที่มากกว่าอินพุต เศษส่วนทั้งสองจะต้องมีตัวส่วนที่ต่ำกว่าอินพุต ของเศษส่วนที่เป็นไปได้ทั้งหมดพวกเขาควรมีความแตกต่างต่ำสุดกับอินพุต เอาท์พุท: ผลลัพธ์ของโปรแกรมของคุณจะต้อง: <numerator>/<denominator>เศษส่วนที่มีขนาดเล็กกว่าการป้อนข้อมูลในรูปแบบ ตามด้วยอักขระเว้นวรรค (ASCII-code 32) <numerator>/<denominator>ตามด้วยส่วนที่มากกว่าการป้อนข้อมูลในรูปแบบที่ ดังนี้ «fraction that is < input» «fraction that is > input» กฎ: เศษส่วนทั้งหมดออกมาจะต้องเป็นในแง่ต่ำสุด เศษส่วนทั้งหมดที่ส่งออกจะต้องเป็นเศษส่วนที่เหมาะสม หากไม่มีเศษส่วนที่เหมาะสมที่เป็นไปได้ที่กฎอนุญาตคุณต้องส่งออก0แทนการป้อนเข้า <และ1แทนเศษส่วน> คุณสามารถเลือกได้ว่าคุณต้องการรับเศษส่วนเป็นอาร์กิวเมนต์บรรทัดคำสั่ง (เช่นyourprogram.exe 2/5) หรือพร้อมท์สำหรับการป้อนข้อมูลของผู้ใช้ คุณอาจจะสมมติว่าโปรแกรมของคุณจะไม่ได้รับอินพุตที่ไม่ถูกต้อง รหัสที่สั้นที่สุด (เป็นไบต์ในภาษาใดก็ได้) จะชนะ อาร์กิวเมนต์บรรทัดรับคำสั่งที่ไม่ได้มาตรฐานใด ๆ (อาร์กิวเมนต์ที่ไม่จำเป็นต้องใช้ในการเรียกใช้สคริปต์) จะนับรวมไปยังจำนวนอักขระทั้งหมด โปรแกรมของคุณต้องไม่ทำอะไร: ขึ้นอยู่กับทรัพยากรภายนอกใด ๆ ขึ้นอยู่กับการมีชื่อไฟล์เฉพาะ เอาต์พุตสิ่งอื่นนอกเหนือจากเอาต์พุตที่ต้องการ ใช้เวลารันนานเป็นพิเศษ หากโปรแกรมของคุณใช้เวลาเศษเสี้ยวด้วยเศษ 6 …

1
ค้นหารากที่แท้จริงของพหุนาม
เขียนโปรแกรมที่มีอยู่ในตัวเองซึ่งเมื่อได้รับพหุนามและขอบเขตจะพบรากแท้จริงทั้งหมดของพหุนามนั้นไปสู่ข้อผิดพลาดสัมบูรณ์ไม่เกินขอบเขต ข้อ จำกัด ฉันรู้ว่า Mathematica และภาษาอื่นอาจมีวิธีแก้ปัญหาแบบสัญลักษณ์เดียวและนั่นก็น่าเบื่อดังนั้นคุณควรยึดติดกับการดำเนินงานดั้งเดิม (การบวกการลบการคูณการหาร) มีความยืดหยุ่นบางอย่างในรูปแบบอินพุตและเอาต์พุต คุณสามารถรับอินพุตผ่าน stdin หรืออาร์กิวเมนต์บรรทัดคำสั่งในรูปแบบที่สมเหตุสมผล คุณอาจอนุญาตให้ใช้ทศนิยมหรือต้องการให้ใช้การแทนจำนวนตรรกยะ คุณอาจใช้ขอบเขตหรือส่วนกลับของขอบเขตและถ้าคุณใช้จุดลอยตัวคุณอาจสมมติว่าขอบเขตนั้นจะต้องไม่น้อยกว่า 2 ulp พหุนามควรจะแสดงเป็นรายการของสัมประสิทธิ์ monomial แต่มันอาจจะใหญ่หรือเล็ก - endian คุณต้องสามารถพิสูจน์ได้ว่าทำไมโปรแกรมของคุณถึงใช้งานได้ตลอดเวลา (ปัญหาเชิงตัวเลขแบบโมดูโล) แม้ว่าจะไม่จำเป็นที่จะต้องพิสูจน์หลักฐานแบบอินไลน์ โปรแกรมจะต้องจัดการกับพหุนามด้วยรากซ้ำ ตัวอย่าง x^2 - 2 = 0 (error bound 0.01) อินพุตอาจเป็นเช่น -2 0 1 0.01 100 1 0 -2 1/100 ; x^2-2 ผลผลิตอาจเป็นเช่น -1.41 1.42 แต่ไม่ -1.40 …

30
การเพิ่มโดยไม่ต้องใช้เครื่องหมาย + หรือ -
ก่อนหน้านี้มีความท้าทายมากมาย "Do __ ปราศจาก_ _" แต่ฉันหวังว่านี่จะเป็นหนึ่งในความท้าทายที่สุด ความท้าทาย คุณต้องเขียนโปรแกรมที่รับจำนวนธรรมชาติสองตัว (จำนวนเต็ม> 0) จาก STDIN และพิมพ์ผลรวมของตัวเลขสองตัวไปยัง STDOUT ความท้าทายคือคุณต้องใช้จำนวนน้อยที่สุด+และใช้-สัญลักษณ์มากที่สุด คุณไม่ได้รับอนุญาตให้ใช้ฟังก์ชั่นผลรวมหรือการปฏิเสธใด ๆ ตัวอย่าง อินพุต 123 468 เอาท์พุต 591 อินพุต 702 720 เอาท์พุต 1422 Tie Breaker: หากทั้งสองโปรแกรมมีจำนวน+และ-ตัวอักษรเท่ากันผู้ชนะคือบุคคลที่มีจำนวนน้อย/ * ( ) = . ,และ0-9ตัวอักษร ไม่อนุญาต:ภาษาที่ตัวดำเนินการการบวก / การลบและการเพิ่ม / ลดมาตรฐานเป็นสัญลักษณ์อื่นนอกเหนือจาก+หรือ-ไม่ได้รับอนุญาต ซึ่งหมายความว่าไม่อนุญาตให้ใช้ช่องว่างกับภาษา

4
สามตัวชี้! แต่อะไรล่ะ
จากhttp://en.wikipedia.org/wiki/Triangle : เขียนโปรแกรมที่ใช้ tuples พิกัด 2d (คาร์ทีเซียน) สามมิติและจำแนกประเภทของจุดสามจุดที่อธิบาย ในเกือบทุกกรณีจุดเหล่านี้จะอธิบายรูปสามเหลี่ยมชนิดต่าง ๆ ในบางกรณีความเสื่อมคะแนนจะอธิบายจุดเอกพจน์หรือเส้นตรง โปรแกรมจะพิจารณาว่าแท็กใดต่อไปนี้ที่ใช้กับรูปร่างที่อธิบายไว้: จุด (3 คะแนนเป็นเหตุการณ์ร่วม) เส้น (3 คะแนนอยู่ในแนวเส้นตรง - อาจมีเหตุการณ์ร่วมไม่เกิน 2 จุด) ด้านเท่ากันหมด (3 ด้านเท่ากัน 3 มุมเท่ากัน) หน้าจั่ว (2 ด้านเท่ากัน 2 มุมเท่ากัน) Scalene (0 ด้านเท่ากัน, 0 มุมเท่ากัน) ขวา (1 มุมทั้งหมดπ / 2 (หรือ 90 °)) เอียง (0 มุมทั้งหมด exactly / …

10
ทฤษฎีบทจำนวนเหลี่ยมของแฟร์มาต์
ทฤษฎีบทจำนวนเหลี่ยมของแฟร์มาต์ระบุว่าจำนวนเต็มบวกทุกค่าสามารถแสดงเป็นผลรวมของจำนวนตัวเลขnnn nnnซึ่งหมายความว่าทุกจำนวนเต็มบวกสามารถแสดงเป็นผลรวมของตัวเลขสามเหลี่ยมได้มากถึงสามรูปสามเหลี่ยม, สี่ตาราง, ห้าเหลี่ยมห้าเหลี่ยมเป็นต้นงานของคุณคือการใช้จำนวนเต็มบวกxxx , และจำนวนเต็มs≥3s≥3s \ge 3และส่งออกsss -gonalจำนวนเต็มซึ่งรวมไปxxxx nnn -th sss -gonal จำนวนเต็มที่n≥1n≥1n \ge 1และs≥3s≥3s \ge 3 , สามารถกำหนดในสองวิธี วิธีที่ไม่ใช่คณิตศาสตร์-Y เป็นที่nnn TH sssจำนวน -gonal สามารถสร้างเป็นรูปเหลี่ยมปกติกับsssด้านข้างแต่ละความยาวnnnnตัวอย่างเช่นสำหรับs=3s=3s = 3 (ตัวเลขสามเหลี่ยม): ดูที่นี่สำหรับตัวอย่างที่มีขนาดใหญ่ssss นิยามคณิตศาสตร์ -y คือการใช้สูตรสำหรับP(n,s)P(n,s)P(n, s)ซึ่งให้ผลเป็นจำนวนnnn -th sss -gonal: P(n,s)=n2(s−2)−n(s−4)2P(n,s)=n2(s−2)−n(s−4)2P(n, s) = \frac{n^2(s-2) - n(s-4)}{2} ซึ่งจะได้รับในหน้าวิกิพีเดียที่นี่ อินพุต สองจำนวนเต็มบวกsssและxxxกับสภาพs≥3s≥3s \ge 3 3 คุณสามารถป้อนจำนวนเต็มเหล่านี้ในรูปแบบที่เป็นธรรมชาติมากที่สุดในภาษาของคุณ …

19
อะนาล็อกเป็นป้าน!
นาฬิกาอะนาล็อกมี 2 เข็ม *: ชั่วโมงและนาที มือเหล่านี้วงกลมหน้าปัดนาฬิกาเมื่อเวลาผ่านไป การหมุนของเข็มนาทีเต็มรูปแบบจะส่งผลให้ 1/12 ของการหมุนของเข็มชั่วโมง 2 รอบการหมุนของเข็มชั่วโมงหมายถึงวันเต็ม เนื่องจากมือเหล่านี้จับจ้องที่จุดศูนย์กลางเดียวกันและหมุนไปรอบ ๆ จุดนั้นคุณสามารถคำนวณมุมระหว่างมือได้เสมอ ในความเป็นจริงมี 2 มุมในเวลาที่กำหนด; อันที่ใหญ่กว่าและอันที่เล็กกว่า (บางครั้งทั้งคู่จะเท่ากับ 180 แต่นั่นไม่สำคัญ) * นาฬิกาสมมุติของเราไม่มีเข็มวินาที งาน ให้เวลาในรูปแบบ 24 ชั่วโมงเอาท์พุทมุมที่เล็กกว่าระหว่างมือเป็นองศา ถ้ามืออยู่ตรงข้ามกัน (เช่น at 6:00, 18:00etc) เอาต์พุต 180 กฎระเบียบ ป้อนข้อมูลอาจถูกนำมาเป็น: - ตัวคั่นแยกสตริง: 6:32, 14.26 - 2 ค่าแยกต่างหากหรือสตริง ints: 6, 32, 14, 26 - อาร์เรย์ของ …
23 code-golf  math  number  date 

15
เกมไขปริศนาครึ่งวงกลม
Palindrome เป็นคำที่ตรงกันข้ามกัน ขณะนี้มีคำบางคำที่อาจมีลักษณะเหมือน palindromes แต่ไม่ใช่ ยกตัวอย่างเช่นพิจารณาคำ sheesh, sheeshไม่ palindrome เพราะเป็นสิ่งที่ตรงกันข้ามของมันhseehsซึ่งเป็นที่แตกต่างกัน แต่ถ้าเราพิจารณาให้เป็นตัวอักษรเดียวแล้วก็กลับเป็นsh sheeshคำชนิดนี้เราจะเรียกว่าเซมิโคลอน โดยเฉพาะคำหนึ่งคำคือกึ่ง Palindrome หากเราสามารถแบ่งคำนั้นออกเป็นชิ้น ๆ จำนวนหนึ่งเช่นเมื่อคำสั่งของชิ้นนั้นกลับคำเดิมจะเกิดขึ้น (สำหรับsheeshชิ้นส่วนเหล่านั้นsh e e sh) เราจะต้องไม่มีชิ้นที่มีตัวอักษรจากครึ่งทั้งสองของคำ (มิฉะนั้นทุกคำจะเป็นกึ่ง Palindrome) ตัวอย่างเช่นrearไม่ใช่กึ่ง Palindrome เพราะr ea rมีอัน ( ea) ที่มีตัวอักษรจากทั้งสองด้านของคำเดิม เราพิจารณาอักขระกลางในคำที่มีความยาวคี่ให้อยู่ด้านใดด้านหนึ่งของคำดังนั้นสำหรับคำที่มีความยาวคี่อักขระกลางจะต้องอยู่ในกลุ่มของมันเสมอ งานของคุณจะทำรายการของจำนวนเต็มบวกและตรวจสอบว่าพวกเขาเป็นกึ่ง Palindrome รหัสของคุณควรส่งออกค่าไม่เท่ากันที่สอดคล้องกันสองค่าหนึ่งค่าหากอินพุตเป็นแบบกึ่ง Palindrome และอีกค่าหนึ่ง อย่างไรก็ตามลำดับไบต์ของรหัสของคุณจะต้องเป็นกึ่ง palindrome-ตัวเอง คำตอบจะได้คะแนนเป็นไบต์ด้วยจำนวนไบต์ที่น้อยลง การทดสอบกรณี [] -> True [1] -> True [2,1,2] -> …

10
สั้นที่สุดระบุสารตั้งต้น
รับรายการสตริงแทนที่แต่ละสตริงด้วยหนึ่งในสตริงย่อยที่ไม่ว่างซึ่งไม่ใช่สตริงย่อยของสตริงอื่นใดในรายการและสั้นที่สุดเท่าที่จะทำได้ ตัวอย่าง ได้รับรายการ["hello","hallo","hola"], "hello"ควรจะถูกแทนที่โดยเพียงแค่"e"เป็น substring นี้ไม่ได้มีอยู่ใน"hallo"และ"hola"และมันก็เป็นที่สั้นที่สุด "hallo"จะถูกแทนที่ด้วยอย่างใดอย่างหนึ่ง"ha"หรือ"al"และ"hola"โดยใด ๆ ของ"ho", หรือ"ol""la" กฎระเบียบ คุณสามารถสันนิษฐานได้ว่าสตริงนั้นจะต้องไม่ว่างเปล่าและมีอักขระที่เป็นตัวอักษรของเคสเดียวกันเท่านั้น คุณสามารถสันนิษฐานได้ว่ามีสตริงย่อยดังกล่าวอยู่ในแต่ละสตริงในรายการนั่นคือไม่มีสตริงใดในรายการที่จะเป็นสตริงย่อยของสตริงอื่น ๆ อินพุตและเอาต์พุตสามารถอยู่ในรูปแบบที่เหมาะสม นี่คือโค้ดกอล์ฟดังนั้นพยายามใช้ให้น้อยที่สุดในภาษาที่คุณเลือก กรณีทดสอบ มีเพียงหนึ่งเอาต์พุตที่เป็นไปได้สำหรับกรณีส่วนใหญ่ ["ppcg"] -> ["p"] (or ["c"] or ["g"]) ["hello","hallo","hola"] -> ["e","ha","ho"] ["abc","bca","bac"] -> ["ab","ca","ba"] ["abc","abd","dbc"] -> ["abc","bd","db"] ["lorem","ipsum","dolor","sit","amet"] -> ["re","p","d","si","a"] ["abc","acb","bac","bca","cab","cba"] -> ["abc","acb","bac","bca","cab","cba"] เกี่ยวข้อง: สตริงย่อยที่ระบุสั้นที่สุด - แนวคิดที่คล้ายกัน แต่มีกฎที่เกี่ยวข้องมากกว่าและรูปแบบที่ยุ่งยาก
23 code-golf  string  code-golf  string  code-golf  array-manipulation  code-golf  quine  code-golf  array-manipulation  integer  matrix  classification  code-golf  quine  code-golf  string  matrix  conversion  code-golf  string  number  code-golf  string  code-golf  number  sequence  integer  code-golf  decision-problem  matrix  code-golf  string  code-golf  math  code-golf  math  array-manipulation  combinatorics  code-golf  random  code-golf  code-golf  alphabet  code-golf  python  c  code-golf  base-conversion  code-golf  string  counting  code-challenge  code-generation  fastest-code  code-golf  kolmogorov-complexity  matrix  code-golf  string  code-golf  array-manipulation  decision-problem  random  sudoku  code-golf  chess  code-golf  card-games  encode  code-golf  decision-problem  code-golf  code-golf  math  array-manipulation  matrix 

27
เมทริกซ์ติดตามทั่วไป
แรงบันดาลใจ ให้ (โดยวิธีการใด ๆ ): สองอาร์กิวเมนต์ (หรืออาร์กิวเมนต์เดียวประกอบด้วยรายการสององค์ประกอบ) ฟังก์ชั่นกล่องดำ , (input และ output คือ 1, 2, 3, ... )f: ℤ+ × ℤ+ → ℤ+ เมทริกซ์จำนวนเต็มบวกอย่างเคร่งครัดโดยมีอย่างน้อยสองแถวและสองคอลัมน์ กลับเมทริกซ์ของร่องรอยฟังก์ชั่น คืออะไรร่องรอยฟังก์ชั่น ? เมทริกซ์ติดตามปกติคือผลรวมของเส้นทแยงมุมใหญ่ (บนซ้ายไปขวาล่าง) ของเมทริกซ์: [[1,2,3],[4,5,6],[7,8,9]]→การ[1,5,9]→การ1+5+9→การ15 แต่แทนที่จะรวมเราต้องการนำfไปใช้ตามแนวทแยง: [[1,2,3],[4,5,6],[7,8,9]]→การ[1,5,9]→การf(f(1,5),9)หรือf(1,f(5,9)) โปรดระบุว่าคุณใช้จากซ้ายไปขวาหรือจากขวาไปซ้าย เมทริกซ์ที่กำหนดและค่ากลางทั้งหมดจะเป็นจำนวนเต็มบวกอย่างเคร่งครัดภายในโดเมนจำนวนเต็มของภาษาของคุณ เมทริกซ์อาจไม่ใช่แบบสแควร์ ตัวอย่าง f(x,y) = xy, [[1,2,3],[4,5,6],[7,8,9]]→การ1×5×9→การ45 f(x,y) = xy, [[1,2,3],[4,5,6],[7,8,9]]→การ →การ1591 f(x,y) = x-y, [[4,5,6],[1,2,3]]→การ4-2→การ2 …

5
กำหนดจำนวนล้อที่มี
คำอธิบายที่ไม่ใช่คณิตศาสตร์ นี่คือคำอธิบายที่ตั้งใจให้เข้าถึงได้โดยไม่คำนึงถึงพื้นหลังของคุณ น่าเสียดายที่มันเกี่ยวข้องกับคณิตศาสตร์บางอย่าง แต่ควรเข้าใจได้สำหรับคนส่วนใหญ่ที่มีระดับความเข้าใจในระดับมัธยมต้น ลำดับชี้เป็นลำดับใด ๆ ดังกล่าวที่A (n + 1) = a (na (n)) ลองแยกสูตรนี้หน่อยเพื่อทำความเข้าใจความหมายของมัน นี่หมายถึงการหาเทอมถัดไปในลำดับที่เราดูในเทอมสุดท้ายนำขั้นตอนนั้นกลับมาและคัดลอกคำที่เราค้นหา ตัวอย่างเช่นถ้าเรามีลำดับจนถึงตอนนี้ ... 3 4 4 4 3 ? เราจะย้อนกลับไป 3 ก้าว 3 ... 3 4 4 4 3 ? ^ 4ทำให้ผลของเรา ตอนนี้โดยปกติเราเล่นเกมนี้บนเทปที่ไม่มีที่สิ้นสุดในทั้งสองทิศทาง แต่เรายังสามารถเล่นเกมบนวงล้อซึ่งหลังจากผ่านไปหลายขั้นตอนเรากลับไปที่จุดเริ่มต้นของลำดับ ตัวอย่างเช่นที่นี่คือการสร้างภาพของลำดับ [1,3,1,3,1,3] ตอนนี้เราอาจสังเกตเห็นว่าตัวเลขใด ๆ , xในวงล้อที่เกินจำนวนเซลล์ในวงล้อ, n , อาจเท่ากับx mod nเพราะทุกวงจรที่สมบูรณ์รอบ …

11
ฟังก์ชั่น Bijective ℤ→ℤⁿ
มันเป็นไปได้เล็กน้อยที่จะสร้างฟังก์ชัน bijectiveจาก (ชุดของจำนวนเต็มทั้งหมด) ถึง (เช่นฟังก์ชันตัวตน)ZZ\mathbb{Z}ZZ\mathbb{Z} นอกจากนี้ยังสามารถสร้างฟังก์ชัน bijective จากถึง (ชุดของจำนวนเต็ม 2 คู่ทั้งหมด; ผลิตภัณฑ์คาร์ทีเซียนของและ ) ตัวอย่างเช่นเราสามารถใช้ lattice แทนคะแนนจำนวนเต็มบนระนาบ 2D วาดเกลียวจาก 0 ออกมาแล้วเข้ารหัสจำนวนเต็มคู่เป็นระยะทางตามแนวเกลียวเมื่อมันตัดกับจุดนั้นZZ\mathbb{Z}Z2Z2\mathbb{Z}^2ZZ\mathbb{Z}ZZ\mathbb{Z} (ฟังก์ชั่นที่ทำสิ่งนี้กับตัวเลขธรรมชาติเป็นที่รู้จักกันในชื่อฟังก์ชั่นการจับคู่ ) ในความเป็นจริงมีตระกูลของฟังก์ชัน bijective เหล่านี้: fk( x ) : Z →Zkfk(x):Z→Zkf_k(x) : \mathbb{Z} \to \mathbb{Z}^k ความท้าทาย กำหนดตระกูลของฟังก์ชัน (โดยที่เป็นจำนวนเต็มบวก) กับคุณสมบัติที่ทำแผนที่เชิงเส้นจำนวนเต็มกับ -tuples ของจำนวนเต็มฉk( x )ฉk(x)f_k(x)kkkฉk( x )ฉk(x)f_k(x)kkk การส่งของคุณควรจะได้รับปัจจัยการผลิตและกลับ(x)kkkxxxฉk( x )ฉk(x)f_k(x) นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดที่ถูกต้อง (วัดเป็นไบต์) …
23 code-golf  math  number 

10
มดบนบันทึกธรรมชาติ
นี่เป็นความท้าทายเริ่มต้นที่ดีและเป็นนักฆ่าเวลาที่ดี ฉันเพียงแค่พูดว่า - บันทึก - ธรรมชาติเพราะชื่อสั้นเกินไปนี่ไม่มีส่วนเกี่ยวข้องกับลอการิทึม รับ 2 ตัวแปร: nจำนวนของมด wความกว้างของการเข้าสู่ระบบ การส่งออกเข้าสู่ระบบของความกว้างwกับnมด (ตัวอย่างแสดงให้เห็นw=3,n=6 ) | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ /o\ /o\ | | ^ ^ ^ | | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ …

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