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

สำหรับความท้าทายที่ตรีโกณมิติมีบทบาทสำคัญ

8
Upgoat หรือ Downgoat
เมื่อพิจารณาถึงภาพของแพะโปรแกรมของคุณควรพยายามระบุว่าแพะนั้นกลับหัวหรือไม่ ตัวอย่าง นี่คือตัวอย่างของสิ่งที่อินพุตอาจเป็น ไม่ใช่อินพุตจริง การป้อนข้อมูล: เอาท์พุท: Downgoat สเป็ค โปรแกรมของคุณควรมีขนาดสูงสุด 30,000 ไบต์ การป้อนข้อมูลจะมีแพะเต็ม ภาพจะมีแพะอยู่เสมอ ถ้าแพะกลับหัวให้เอาออกDowngoatเป็นอย่างอื่นUpgoat การป้อนข้อมูลจะเป็นอย่างไรคุณสามารถถ่ายภาพเป็นอินพุต (ชื่อไฟล์ base64 ของภาพ ฯลฯ ) อย่าพึ่งพาชื่อรูปภาพหรือข้อมูลเมตาอื่น ๆ ที่มีคำว่า "Upgoat" หรือ "Downgoat" เนื่องจากชื่อไฟล์ส่วนสำคัญใช้สำหรับการอ้างอิงเท่านั้น กรุณาอย่า hardcode มันน่าเบื่อฉันไม่สามารถบังคับใช้ได้อย่างสมบูรณ์ แต่ฉันสามารถถามได้ดี กรณีทดสอบ สรุปสาระสำคัญที่มีภาพ เริ่มต้นด้วยภาพdowngoatได้Downgoatส่งออกและเริ่มต้นด้วยภาพที่upgoatมีUpgoatเอาท์พุท ชุดทดสอบชุดที่สอง ตรวจสอบให้แน่ใจว่าได้ทดสอบภาพของคุณในทุกกรณีทดสอบ ภาพเหล่านี้เป็นjpgs ขนาดภาพจะแตกต่างกัน แต่ไม่ว่ามาก หมายเหตุ:อาจมีการเพิ่มกรณีทดสอบสองสามข้อก่อนยอมรับคำตอบเพื่อหลีกเลี่ยงคำตอบว่า hardcode ใดและเพื่อตรวจสอบประสิทธิภาพทั่วไปของโปรแกรม คะแนนโบนัสสำหรับการแก้ไขภาพแทนตัวของฉัน: P เกณฑ์การให้คะแนน คะแนนคือเปอร์เซ็นต์ซึ่งสามารถคำนวณได้โดย: (number_correct / total) * …

30
พิกเซลเดียวเคลื่อนที่ในเส้นทางวงกลม
นี่คือความท้าทายในการแสดงผลกราฟิกที่งานคือการให้รหัสสั้นที่สุดต่อภาษา งาน รหัสของคุณควรพล็อตพิกเซลสีม่วงเดียว (ค่าเลขฐานสิบหก # 800080 หรือ rgb (128, 0, 128)) โดยเลื่อนตามเข็มนาฬิกาเป็นวงกลม ควรใช้เวลา 60 วินาทีในการเดินทางรอบวงกลมอย่างเต็มรูปแบบและควรดำเนินการต่อไปเรื่อย ๆ ไม่ควรแสดงสิ่งใดบนหน้าจอหรือหน้าต่างยกเว้นพิกเซล ความกว้างของวงกลมควรเท่ากับ 0.75 (การปัดเศษอย่างเหมาะสม) ความกว้างของหน้าจอหรือหน้าต่างและพื้นหลังควรเป็นสีขาว เพื่อป้องกันการแก้ปัญหาที่โง่เง่าหน้าจอหรือหน้าต่างควรมีความกว้างอย่างน้อย 100 พิกเซล รหัสของคุณควรจะเป็นโปรแกรมเต็มรูปแบบ ภาษาและห้องสมุด คุณสามารถใช้ภาษาหรือไลบรารีที่คุณต้องการ อย่างไรก็ตามฉันต้องการทดสอบโค้ดของคุณถ้าเป็นไปได้ดังนั้นหากคุณสามารถให้คำแนะนำที่ชัดเจนเกี่ยวกับวิธีการเรียกใช้ใน Ubuntu ที่จะได้รับการชื่นชมอย่างมาก ภาษาที่ขาดหายไปยี่สิบอันดับแรก ต้องการความช่วยเหลือ. ภาษาการเขียนโปรแกรมยี่สิบอันดับแรกต่อไปนี้ไม่มีวิธีการแก้ปัญหาใด ๆ เลย C , C ++, C # , Python , PHP , Visual Basic .NET , …

19
วาดกราฟของ
ท้าทาย ได้รับการป้อนข้อมูลของจำนวนเต็มnnn (ที่ ) การส่งออกกราฟของจากการรวม0&lt;n&lt;500&lt;n&lt;500<n<50y=Re((−n)x)y=Re((−n)x)y=\mathrm{Re}((-n)^x)x=−3x=−3x = -3x=3x=3x = 3 ที่ไหนเป็นส่วนที่แท้จริงของจำนวนเชิงซ้อนพีRe(p)Re(p)\mathrm{Re}(p)ppp โปรดทราบว่าRe((−n)x)=nxcos(πx)Re((−n)x)=nxcos⁡(πx)\mathrm{Re}((-n)^x) = n^x \cos{(\pi x)} เอาท์พุต ผลลัพธ์อาจอยู่ในรูปแบบที่คุณต้องการ (เช่นรูปภาพหรือหน้าต่างเป็นต้น) ศิลปะ ASCII ไม่ได้รับอนุญาต กราฟไม่จำเป็นต้องมีแกน (เพื่ออนุญาตภาษาที่ไม่มีฟังก์ชั่นการสร้างกราฟในตัวเพื่อแข่งขัน) หากภาพถูกส่งออกแต่ละภาพจะต้องยาวเกิน 500 พิกเซล ในทำนองเดียวกันเนื้อเรื่องจะต้องเติมภาพให้ดีที่สุดเท่าที่จะทำได้ ช่วงเวลาต่ำสุดระหว่างแปลงคือ 0.05 อนุญาตให้ใช้กราฟิกแบบเวกเตอร์ ตัวอย่าง สำหรับอินพุตของ2: สำหรับอินพุตของ1: คุณต้องใส่ผลลัพธ์ที่สอดคล้องกันในคำตอบของคุณ (n = 1 และ n = 2) การชนะ รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ

15
ตรีโกณมิติกล่องดำ
เขียนโปรแกรมหรือฟังก์ชั่นที่สามารถแยกแยะความแตกต่างฟังก์ชันตรีโกณมิติต่อไปนี้ 12: sin, cos, tan, asin, acos, atan, sinh, cosh, tanh, asinh, ,acosh atanh โปรแกรมของคุณได้รับหนึ่งในฟังก์ชั่นด้านบนเป็นกล่องดำและควรเอาท์พุทชื่อฟังก์ชั่นตามที่กำหนดไว้ด้านบนหรือวิธีที่มันตั้งชื่อในภาษาของคุณ นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดในแต่ละภาษาจะเป็นผู้ชนะ คุณควรแสดงให้เห็นว่ารหัสของคุณทำงานอย่างถูกต้องโดยรวมถึงกรณีทดสอบที่มีทั้ง 12 อินพุตที่เป็นไปได้ หากภาษาที่คุณเลือกไม่ได้รวม build-ins สำหรับฟังก์ชั่นด้านบนทั้งหมดคุณจะต้องจัดเตรียมการปรับใช้ที่เหมาะสมของตัวเองสำหรับคนที่ขาดหายไป ชี้แจงเพิ่มเติม การใช้ตัวเลขที่ซับซ้อนเพื่อสืบค้นช่องดำอนุญาตให้ใช้หากบิลด์อินพื้นฐานสามารถจัดการได้ ในฐานะที่เป็นเมื่อใช้ตัวเลขจริงเท่านั้นแบบสอบถามเพื่อฟังก์ชั่นกล่องดำสามารถให้ข้อผิดพลาดโดเมน ในกรณีนี้คุณควรสมมติว่ากล่องดำสื่อสารเฉพาะการมีอยู่ของข้อผิดพลาด แต่ไม่ใช่จากการทำงานที่เกิดขึ้นdom acosh∩dom atanh=∅dom acosh∩dom atanh=∅ dom\ acosh \cap dom\ atanh = \emptyset หากแทนที่จะมีข้อผิดพลาดค่าอื่น ๆ เช่นNaNหรือnullจะถูกส่งกลับการส่งของคุณควรจะสามารถจัดการได้ ขอบคุณสำหรับข้อเสนอแนะ sandbox ที่เป็นประโยชน์!

30
The Pedant's Cosine
เจ้านายของฉันเพิ่งบอกให้ฉันเขียนฟังก์ชันโคไซน์ เป็นคนที่มีความสามารถทางคณิตศาสตร์ที่ดีจิตใจของฉันคิดในแบบที่เหมาะสมกับซีรีย์เทย์เลอร์ทันที cos(x) = 1 / 0! - x^2 / 2! + x^4 / 4! - x^6 / 6! + ... + (-1)^k x^(2k) / (2k)! + ... อย่างไรก็ตามเจ้านายของฉันจู้จี้จุกจิกมาก เขาต้องการที่จะสามารถระบุจำนวนเทย์เลอร์ในการคำนวณได้อย่างแม่นยำ คุณช่วยฉันเขียนฟังก์ชันนี้ได้ไหม งานของคุณ รับค่า floating point xจาก0ถึง2 piและจำนวนเต็มบวกnน้อยกว่า100คำนวณผลรวมของnเทอมแรกของอนุกรมเทย์เลอร์ที่กำหนดไว้ด้านบนสำหรับcos(x)แง่ของซีรีส์เทย์เลอร์กล่าวข้างต้นสำหรับ นี่คือ รหัสกอล์ฟดังนั้นรหัสที่สั้นที่สุดจึงชนะ สามารถนำเข้าและส่งออกได้หลายวิธี ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม หมายเหตุ สามารถป้อนข้อมูลในรูปแบบที่เหมาะสมใด ๆ ตราบใดที่มีการแยกชัดเจนระหว่าง xและnและ อินพุตและเอาต์พุตควรเป็นค่าจุดลอยตัวอย่างน้อยความแม่นยำเท่ากับการคำนวณสูตรโดยใช้ตัวเลขทศนิยมลอยตัว IEEE ที่มีความแม่นยำเดียวพร้อมกับกฎการปัดเศษมาตรฐานบางอย่าง หากเหมาะสมกับภาษาที่ใช้การคำนวณอาจทำได้โดยใช้ปริมาณที่แน่นอน …

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

7
ระยะห่างระหว่างสองจุดที่เดินทางบนกราฟกราฟขั้วโลก
คำอธิบายปัญหาโดยย่อ เขียนโปรแกรมเพื่อค้นหาระยะห่างต่ำสุดระหว่างจุดสองจุดที่เดินทางบนแสงที่เปล่งออกมาจากแหล่งกำเนิดและวงกลมที่อยู่กึ่งกลางแหล่งกำเนิด คำอธิบายของสถ ทีนี้ลองจินตนาการว่าเราอยู่บนเครื่องบินและบนเครื่องบินนี้เราได้รับอนุญาตให้เดินทางด้วยวิธีพิเศษเท่านั้น เราได้รับอนุญาตให้เดินทางกับรังสีใด ๆ ที่เล็ดลอดออกมาจากแหล่งกำเนิด เราสามารถเดินทางบนวงกลมใดก็ได้ที่อยู่ตรงกลางเป็นวงกลม ตอนนี้เป้าหมายของเราคือการเดินทางจากจุดหนึ่งบนเครื่องบินลำนี้ไปอีกจุดหนึ่ง อย่างไรก็ตามเราไม่สามารถเดินทางในเส้นทางแบบยุคลิดอย่างง่ายเราสามารถทำสิ่งนี้ได้ก็ต่อเมื่อจุดที่เกิดขึ้นตกกระทบกับรังสีจากจุดศูนย์กลาง เราสามารถเดินทางกับอันนี้เพราะมันตกอยู่บนหนึ่งในรังสีของเรา นอกจากนี้เรายังสามารถเดินทางบนวงกลมที่มีศูนย์กลางที่จุดกำเนิด ตัวอย่าง นี่คือความท้าทาย: เราต้องได้จากจุดหนึ่งไปอีกจุดหนึ่งในเส้นทางที่สั้นที่สุด; บ่อยครั้งที่นี่คือการรวมกันของการเดินทางในวงกลมและรังสี อย่างไรก็ตามนี่มันอาจเดินทางด้วยรังสีสองดวง บางครั้งมีสองเส้นทางที่เดินทางในระยะทางต่ำสุด ปัญหา ความท้าทายของคุณคือการเขียนโปรแกรมที่เมื่อได้รับสองคะแนนจะให้ระยะห่างขั้นต่ำระหว่างพวกเขาหากเราปฏิบัติตามกฎเหล่านี้ อินพุตสามารถกำหนดได้ทั้งในรูปแบบสี่เหลี่ยมหรือโพลาร์และเอาต์พุตควรเป็นหนึ่งหมายเลขคือระยะห่างระหว่าง กรณีทดสอบ (พร้อมอินพุตสี่เหลี่ยมผืนผ้า) (1,1) (1,-1) -&gt; ~ 2.22144 (0,0) (1, 1) -&gt; ~ 1.41421 (1,0) (-0.4161 , 0.90929) -&gt; ~ 2 (1,1) (1, 0) -&gt; ~ 1.19961 (1,2) (3, 4) …

25
วาดรูปหลายเหลี่ยมปกติ
เป้าหมายของการเล่นกอล์ฟรหัสนี้คือการวาดรูปหลายเหลี่ยมปกติ (หนึ่งที่มีความยาวด้านเท่ากัน) กำหนดจำนวนของด้านและรัศมี (ระยะทางจากศูนย์ถึงจุดสุดยอด) จำนวนของด้านและรัศมีสามารถป้อนผ่านไฟล์, STDIN หรือเพียงแค่ตัวแปรเก่าธรรมดา ใช้สิ่งที่สั้นกว่าในภาษาของคุณ -25% ของจำนวนอักขระ / ไบต์ทั้งหมดหากวาดภาพจริง ๆ แล้วแทนที่จะเป็น ASCII art

11
เพิ่มความแตกต่างยกกำลังสอง
พิจารณาการเปลี่ยนแปลงของค่าจำนวนเต็มจากไป1 Nเช่นตัวอย่างนี้สำหรับN = 4: [1, 3, 4, 2] เราจะถือว่ารายการนี้เป็นวงจรเช่นนั้น1และ2ได้รับการปฏิบัติเหมือนติดกัน ปริมาณหนึ่งที่เราสามารถคำนวณได้สำหรับรายการดังกล่าวคือผลต่างกำลังสองรวมของค่าที่อยู่ติดกัน: (1-3)² + (3-4)² + (4-2)² + (2-1)² = 10 Nงานของคุณคือการหาการเปลี่ยนแปลงซึ่งจะเพิ่มปริมาณนี้ให้เป็นจำนวนเต็มบวก ในกรณีของN = 4ตัวอย่างข้างต้นจะไม่เหมาะสมที่สุด (อันที่จริงแล้วเป็นเพียงเล็กน้อย) เราสามารถบรรลุผลต่างกำลังสองรวม18กับการเปลี่ยนแปลงต่อไปนี้ (รวมถึงการเปลี่ยนแปลงอื่น ๆ ): [1, 4, 2, 3] อัลกอริทึมของคุณต้องทำงานในเวลาพหุนาม (จากN) โดยเฉพาะอย่างยิ่งคุณไม่สามารถคำนวณความแตกต่างยกกำลังสองทั้งหมดของพีชคณิตทั้งหมดได้ คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่น, รับอินพุตผ่าน STDIN (หรือทางเลือกที่ใกล้เคียงที่สุด), อาร์กิวเมนต์บรรทัดคำสั่งหรืออาร์กิวเมนต์ของฟังก์ชันและส่งผลลัพธ์ผ่าน STDOUT (หรือทางเลือกที่ใกล้เคียงที่สุด), ค่าส่งคืนของฟังก์ชันหรือพารามิเตอร์ ผลลัพธ์อาจอยู่ในรูปแบบรายการแบบแบนหรือแบบสตริงที่สะดวกใด ๆ คุณอาจเลือกที่จะกลับรายการที่มีค่าจาก0การN-1แทนไป1N ใช้กฎมาตรฐานของกอล์ฟ ทดสอบข้อมูล มีวิธีการวิเคราะห์ที่ดีสำหรับปัญหานี้ เช่นโซลูชันที่ถูกต้องทั้งหมดN …
19 code-golf  array-manipulation  permutations  restricted-complexity  code-golf  geometry  grid  code-golf  string  sorting  code-golf  simulation  code-golf  string  code-golf  arithmetic  code-golf  sorting  code-golf  string  code-golf  sorting  code-golf  interpreter  code-golf  number  kolmogorov-complexity  natural-language  conversion  code-golf  random  internet  code-golf  board-game  code-golf  number  sequence  code-golf  math  number  code-challenge  image-processing  classification  test-battery  code-golf  ascii-art  code-golf  tips  code-golf  arithmetic  code-golf  tips  code-golf  tips  javascript  code-golf  array-manipulation  code-golf  ascii-art  code-golf  string  binary  code-golf  arithmetic  linear-algebra  matrix  code-golf  sequence  code-golf  math  number  arithmetic  code-golf  primes  code-golf  math  code-golf  array-manipulation  counting  code-golf  arithmetic  code-golf  quine  code-generation  polyglot  code-golf  math  kolmogorov-complexity  trigonometry  code-golf  string  encryption 

15
g o l f a t a n 2
บางครั้งจริงๆมันคือการต่อสู้การแปลงพิกัดคาร์ทีเซียนพิกัดขั้วโลก(x,y) (r,phi)ในขณะที่คุณสามารถคำนวณr = sqrt(x^2+y^2)ได้ง่ายมากคุณมักจะต้องแตกต่างจากกรณีเมื่อคำนวณมุมphiเพราะarcsin, arccosและarctanและฟังก์ชันตรีโกณมิติอื่น ๆ ทุกคนมีร่วมโดเมนที่เฉพาะในแต่ละช่วงครึ่งวงกลม ในหลายภาษามี built-in สำหรับการแปลงสี่เหลี่ยมพิกัดเชิงขั้วหรืออย่างน้อยก็มีatan2ฟังก์ชั่นที่ - รับ(x,y)- phiคำนวณมุม งาน งานของคุณคือการเขียนโปรแกรม / ฟังก์ชั่นที่ใช้เวลาสอง (จุดลอยไม่ใช่ทั้งสองศูนย์) พิกัดคาร์ทีเซียน(x,y)และเอาท์พุทมุมขั้วโลกที่สอดคล้องกันphiที่phiจะต้องมีในองศาเรเดียนหรือเกรด (มีเกรดผมหมายถึงGradiansซึ่งเป็น 1 / 400 ของวงกลมเต็ม) แล้วแต่ว่าอะไรจะสะดวกสำหรับคุณ (1,0)มุมที่เป็นวัดในทิศทางบวกและเรามีมุมสำหรับศูนย์ รายละเอียด คุณไม่สามารถใช้สร้างเพิ่มเติมที่คำนวณมุมที่phiได้รับสองพิกัดรวมทั้งatan2, rect2polar, argOfComplexNumberและฟังก์ชั่นที่คล้ายกัน อย่างไรก็ตามคุณสามารถใช้ฟังก์ชั่นตรีโกณมิติปกติและการกลับด้านได้ซึ่งจะรับเพียงหนึ่งอาร์กิวเมนต์เท่านั้น สัญลักษณ์หน่วยใดก็ได้เป็นตัวเลือก รัศมีrจะต้องไม่เป็นลบและphiจะต้องอยู่ในช่วง[-360°, 360°](ไม่สำคัญว่าคุณจะส่งออก270°หรือ-90°) ตัวอย่าง Input Output (1,1) 45° (0,3) 90° (-1,1) 135° (-5,0) 180° (-2,-2) 225° (0,-1.5) 270° (4,-5) …
18 code-golf  math  geometry  trigonometry  code-golf  number-theory  fibonacci  code-golf  math  sequence  fibonacci  code-golf  string  code-golf  math  graphical-output  geometry  code-golf  string  code-golf  math  geometry  code-golf  math  bitwise  number  popularity-contest  graphical-output  image-processing  fractal  code-golf  number-theory  code-golf  date  multi-threading  code-golf  math  code-golf  math  number  sequence  code-golf  math  number  sequence  arithmetic  code-golf  decision-problem  logic-gates  code-golf  decision-problem  balanced-string  code-golf  math  arithmetic  combinatorics  code-golf  expression-building  code-golf  physics  code-golf  abstract-algebra  code-golf  number  arithmetic  integer  code-golf  ascii-art  number  code-golf  number-theory  primes  code-golf  arithmetic  grid  code-golf  code-golf  sequence  code-golf  kolmogorov-complexity  compression  code-golf  math  number  arithmetic  array-manipulation  code-golf  primes  hexagonal-grid  complex-numbers  code-golf  number  counting  code-golf  math  number  arithmetic 

4
วันที่บีบอัดของสัปดาห์
กำหนดอินพุตของรายการวันในสัปดาห์เอาท์พุทการเรียงลำดับที่สั้นที่สุดของรายการ รูปแบบของการป้อนข้อมูลที่เป็นสตริงประกอบด้วยหนึ่งหรือมากกว่าของสตริงสองตัวอักษรSu(วันอาทิตย์), Mo(วันจันทร์) Tu( ฯลฯ ) We, Th, และFr Saอินพุตอาจไม่จำเป็นต้องถูกจัดเรียงตามลำดับ ในการแปลงอินพุตเป็นรูปแบบเอาต์พุต จัดเรียงอินพุตตามวันในสัปดาห์โดยเริ่มจากวันอาทิตย์ (เช่นThMoSaSuFrTuWe-&gt; SuMoTuWeThFrSa) ลดตัวย่อลงไปหนึ่งตัวอักษรถ้ามันไม่มีใบความคลุมเครือ ตัวอย่างเช่นSuMoTuWeควรเป็นSMTWเพราะ S ตัวแรกไม่สามารถเป็นวันเสาร์ได้เนื่องจากจะทำให้เอาต์พุตไม่ได้เรียงลำดับ (เหมือนกันสำหรับ T) อย่างไรก็ตามThFrSaควรเป็นThFSเช่นวันอังคารและวันพฤหัสบดีมาก่อนวันศุกร์และลดลงเพื่อTFSสร้างความกำกวม หากเอาท์พุทเป็นตอนนี้MTWTFเอาท์พุทDแทน (ซึ่งหมายถึง "สัปดาห์วัน ") ในทำนองเดียวกันSSควรจะเป็นEสำหรับสัปดาห์สิ้นสุด ในที่สุด SMTWTFSควรกลายเป็นAสำหรับทุกวัน ทั้งอินพุตและเอาต์พุตต้องเป็นสตริงเดี่ยว เนื่องจากนี่คือcode-golfรหัสที่สั้นที่สุดเป็นไบต์จะเป็นผู้ชนะ กรณีทดสอบ: In Out | In Out -----------------------|-------------------- SuTu STu | SuTuWe STW SuTuSa STuS | SuWeTh SWT TuThSa TTS | …

1
การหาพื้นที่พิเศษในสี่แยกวง
นี่คือปริศนาเรขาคณิตที่ท้าทายสำหรับคุณ! ป.ร. ให้ไว้เป็นวงกลมAและnวงการอื่น ๆB[n]พบว่าพื้นที่ทั้งหมดที่มีอยู่ภายในAนั่นคือไม่ได้Bอยู่ภายในวงกลมของใด ๆ รหัสของคุณควรสั้นที่สุด อินพุต ข้อมูลที่คุณป้อนควรมีข้อมูลต่อไปนี้: Aจำนวนจุดลอยตัวเพื่อเป็นตัวแทนของรัศมีของวงกลม รายการหมายเลขลอยจุด A Bไปแทนรัศมีของวงการใน Bรายชื่อศูนย์ของวงการใน โปรแกรมของคุณอาจคาดหวังว่าศูนย์ในพิกัดเชิงขั้วหรือคาร์ทีเซียน คุณอาจได้รับจำนวนnวงกลมใน B หรือไม่จำเป็นต้องป้อนข้อมูลนี้ก็ได้ มันจะได้รับการสันนิษฐานว่าศูนย์กลางของวงกลมเป็นที่มาที่เป็นจุดA(0, 0) มีการรับประกันว่าจะไม่มีวงกลมสองวงBเหมือนกัน แต่ไม่รับประกันว่า: วงกลมทั้งหมดของBจุดตัดA, ศูนย์กลางทั้งหมดBอยู่ด้านนอกAหรือไม่มีวงกลมสองวงที่อยู่Bตรงข้ามกัน ตรวจสอบให้แน่ใจว่าโซลูชันของคุณสามารถจัดการกับเคสแบบขอบต่างๆ คุณอาจได้รับการป้อนข้อมูลในลำดับใด ๆ และในรูปแบบของการป้อนข้อความ (ผ่าน stdin หรือเทียบเท่าภาษาของคุณ) พารามิเตอร์ฟังก์ชั่นหรืออาร์กิวเมนต์บรรทัดคำสั่ง หากคุณเลือกที่จะรับข้อความควรมีตัวคั่น ASCII หนึ่งหรือสองตัวอักษรที่พิมพ์ได้ระหว่างส่วนของอินพุต เอาท์พุต โปรแกรมหรือฟังก์ชั่นการส่งออกควรเป็นจำนวนจุดลอยตัวเดียวที่เป็นตัวแทนของพื้นที่ทั้งหมดของคุณไม่ได้อยู่ในแวดวงของA Bคำตอบของคุณควรแม่นยำถึงตัวเลขที่มีนัยสำคัญอย่างน้อยสามตัวสำหรับกรณีทดสอบทั้งหมด มีการใช้กฎเกณฑ์ทั่วไปเกี่ยวกับกอล์ฟ โซลูชันของคุณไม่ควรใช้จุดสุ่มตัวอย่างภายในวงกลมเพื่อกำหนดพื้นที่ บิวด์อินที่ค้นหาตำแหน่งทางแยกของวงกลมโดยอัตโนมัติค้นหาพื้นที่ภายในจุดตัดของวงกลมหรือแก้ไขปัญหานี้ทันทีไม่ได้รับอนุญาต กรณีทดสอบ ในแต่ละภาพวงกลมAจะมีเส้นขอบสีน้ำเงินโดยมีวงกลมที่ล้อมรอบด้วยBสีเขียวและดำ พื้นที่ที่ควรส่งคืนจะถูกเติมสีแดง (ขอขอบคุณRainer P. เป็นพิเศษสำหรับการตรวจสอบวิธีแก้ไขปัญหาของฉัน) กรณีทดสอบ 1: A = …

19
ประมาณจำนวน Dottie
รางวัลจะหมดอายุใน 6 วัน คำตอบสำหรับคำถามนี้มีสิทธิ์ได้รับ+100 ค่าชื่อเสียง Adámต้องการให้รางวัลคำตอบที่มีอยู่ : คำตอบที่ได้รับการอธิบายอย่างดีนี้เป็นคำตอบแรกใน APL ที่นี่ดังนั้นจึงเหมาะสำหรับความโปรดปรานนี้ จำนวน Dottieเป็นจุดคงที่ของฟังก์ชั่นโคไซน์หรือวิธีการแก้สมการcos (x) = x 1 งานของคุณคือการสร้างรหัสที่ใกล้เคียงกับค่าคงที่นี้ รหัสของคุณควรแสดงถึงฟังก์ชั่นที่ใช้จำนวนเต็มเป็นอินพุตและส่งออกจำนวนจริง ขีด จำกัด ของฟังก์ชันของคุณเมื่ออินพุตเพิ่มขึ้นควรเป็นหมายเลข Dottie คุณสามารถส่งออกเป็นเศษส่วนทศนิยมหรือการแสดงพีชคณิตของตัวเลข ผลลัพธ์ของคุณควรมีความแม่นยำโดยพลการลอยตัวและเป็นสองเท่าไม่เพียงพอสำหรับความท้าทายนี้ หากภาษาของคุณไม่สามารถใช้ตัวเลขที่มีความแม่นยำได้คุณจะต้องนำไปใช้หรือเลือกภาษาใหม่ นี่เป็นคำถามเกี่ยวกับรหัสกอล์ฟดังนั้นคำตอบจะได้คะแนนเป็นไบต์โดยมีจำนวนไบต์น้อยกว่าดีกว่า เคล็ดลับ วิธีหนึ่งในการคำนวณค่าคงที่คือการใช้ตัวเลขใด ๆ และนำโคไซน์มาใช้ซ้ำ ๆ เมื่อจำนวนของแอปพลิเคชันมีแนวโน้มที่จะไม่มีที่สิ้นสุดผลลัพธ์จึงมีแนวโน้มไปยังจุดคงที่ของโคไซน์ นี่คือการประมาณจำนวนที่ถูกต้องอย่างเป็นธรรม 0.739085133215161 1: ตรงนี้เราจะใช้โคไซน์เป็นเรเดียน

3
Polygrams ปกติ
ได้รับหมายเลขของจุดn ≥ 3และ "ขนาดขั้นตอน" 1 ≤ m &lt; n/2 (ระบุระยะห่างระหว่างสองจุดที่เกี่ยวโยงกัน) เอาท์พุทการแสดงกราฟิกของที่สอดคล้องโพลีปกติ หากรูปหลายเหลี่ยมประกอบด้วยวงหลายวงปิดแต่ละวงจะต้องแสดงผลในสีเส้นต่างกัน (หากสิ่งนี้ฟังดูสับสนตัวอย่างด้านล่างควรมีความหวังที่ชัดเจน) กฎระเบียบ การแก้ปัญหาที่สมเหตุสมผลใด ๆ จะทำให้กฎเหล่านี้เป็นไปตามกฎโดยอัตโนมัติ - พวกเขาอยู่ที่นั่นเพียงแค่ใส่ข้อ จำกัด บางอย่างเกี่ยวกับพารามิเตอร์ของผลลัพธ์เพื่อป้องกันคำตอบเช่น "บล็อกสีดำนี้เป็นรูปหลายเหลี่ยมทั้งหมด แต่คุณมองไม่เห็นเพราะ ฉันตั้งค่าความกว้างของบรรทัดเป็นมากกว่า 9000 " คุณสามารถเรนเดอร์รูปหลายเหลี่ยมลงในไฟล์ (ซึ่งอาจเขียนลงดิสก์หรือไปยังเอาต์พุตสตรีมมาตรฐาน) หรือแสดงบนหน้าจอ คุณสามารถใช้กราฟิกแบบเวกเตอร์หรือแรสเตอร์ก็ได้ หากผลลัพธ์ของคุณ rasterised ภาพของคุณต้องมีขนาด 400x400 พิกเซลหรือมากกว่าและรัศมีของรูปหลายเหลี่ยม(ระยะทางจากกึ่งกลางถึงจุดสุดยอดแต่ละจุด) ต้องอยู่ระหว่าง 35% ถึง 50% ของความยาวด้านข้าง อัตราส่วนภาพของรูปหลายเหลี่ยมจะต้องเป็น 1 (เพื่อให้จุดยอดของมันอยู่ในวงกลมที่เหมาะสม) - ผืนผ้าใบของภาพอาจเป็นรูปสี่เหลี่ยมผืนผ้า เส้นของรูปหลายเหลี่ยมจะต้องไม่หนากว่า 5% ของรัศมี (และแน่นอนว่าพวกเขาจะต้องมีความหนาที่ไม่เป็นศูนย์ที่จะมองเห็นได้) คุณสามารถสร้างแกนหรือเฟรมเพิ่มเติมจากรูปหลายเหลี่ยม …

5
การคำนวณแบบเร่งด่วน
การคำนวณตรีโกณมิติอย่างรวดเร็ว งานของคุณคือการสร้างโปรแกรมที่สามารถคำนวณไซน์, โคไซน์และแทนเจนต์ของมุมเป็นองศา กฎระเบียบ ไม่มีฟังก์ชั่นตรีโกณมิติในตัว (ไม่ได้แยกเป็นสองส่วน, โคเซแคนต์และโคแทนเจนต์หากภาษาของคุณมี) คุณอาจใช้ตารางการค้นหา แต่ขนาดรวมของพวกเขาจะต้องไม่เกิน 3000 สมาชิก (สำหรับการดำเนินการทั้งสามรวมกัน) กรุณาทำให้มันอ่านตารางจากไฟล์ (เช่นtrig.lookup) ดังนั้นพวกเขาจึงไม่สับสนรหัส ไม่มีการเข้าถึงเครือข่าย คุณต้องปัดเศษผลลัพธ์ของคุณอย่างถูกต้องตามที่อธิบายไว้ด้านล่าง อย่าใช้พื้นหรือเพดาน คุณอาจใช้วิธีการใด ๆ ในการคำนวณค่าเช่นเศษส่วนต่อเนื่องตราบใดที่มันถูกต้องถึง 7 ตัวเลขที่มีนัยสำคัญ รหัสของคุณต้องสามารถกำหนดเวลาเองได้ ไม่รวมการดำเนินการของไฟล์ I / O จากเวลาของคุณ - ดังนั้นเพียงแค่เวลาฟังก์ชั่นที่ทำตรีโกณมิติและการปัดเศษ ฉันจะต้องสามารถเรียกใช้รหัสของคุณ โปรดโพสต์ลิงก์ไปยังคอมไพเลอร์ / ล่ามที่พร้อมใช้งานได้อย่างอิสระและให้คำแนะนำที่จำเป็นในการรวบรวม / เรียกใช้โค้ด (เช่นตัวเลือกใดที่จะส่งผ่านไปยัง GCC) ช่องโหว่มาตรฐานใช้ รูปแบบอินพุต อ่านจากไฟล์ที่เรียกว่าtrig.inถ้าภาษาของคุณไม่รองรับไฟล์ I / O มุมอยู่ระหว่าง 0 ถึง 360 ข้อมูลที่ป้อนจะประกอบด้วยมุมสิบตัวเลขสำคัญในหน่วยทศนิยมคั่นด้วยบรรทัดใหม่ …

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