//0q GxxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLGC//*/0e#'
/*
박망희 0#
;*/
//\u000A\u002F\u002A
n=>//\u002A\u002Fn->
/**/""+n==""+n?5/2>2?1:40-/**/n:n*n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
//ip@
//
;/**/
//I01-* h
//
;/*""'"""'""""""""""'"""" "'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/
ไม่เคยคิดว่าฉันจะเห็นวันที่ฉันจะสามารถเพิ่มคำตอบ Java เป็นคำตอบที่ 16 ในห่วงโซ่หลายภาษา! : D
1. ลองใช้ใน C #: a(n)=40−n
2. ลองใช้ใน brainfuck: a(n)=1+n mod 2
3. ลองใช้ใน Runic Enchantments: a(n)=4n
4. ลอง it in Jelly: a(n)=nn
5. ลองใช้ใน Gol> <>: a(n)=−n
6 ลองใช้ JavaScript: a(n)=1
7. ลองใช้ใน Parenthetic: a(n)=1 if xn+yn=zn has a nontrivial solution in integers, otherwise a(n)=0
8 ลองใช้ในช่องว่าง: a(n)=3
9 . ลองใช้ใน 05AB1E: a(n)=0
10. ลองใช้ใน Unreadable: a(n)=n
11. ลองใช้หญ้า: a(n)=⌊n/10(⌊log10(n)⌋)⌋
12. ลองใช้ในความกว้าง: a(n)=n+1 with n≥2
13. ลองใช้มันใน AlphaBeta: a(n)=1∥n
14. ลองใช้ใน Aheui: a(n)=2
15. ลองใช้ใน Commentator a(n)=2n+6
16. ลองใช้ใน Java 8: a(n)=n2
คำอธิบาย:
ให้ฉันเริ่มต้นด้วยการพูดว่าถึงแม้ว่าฉันจะได้ยินจากแต่ละภาษาเหล่านี้มาก่อนใน CGCC แต่ฉันมีความสามารถเฉพาะกับ Java, C #, 05AB1E และ Whitespace และนอกจากนั้นยังสามารถอ่านส่วนของรหัส JavaScript ได้ ภาษาอื่นส่วนใหญ่ไม่คุ้นเคยสำหรับฉันดังนั้นฉันหวังว่าหลังจากการเปลี่ยนแปลงที่ฉันมีในใจที่จะทำให้ Java โต้ตอบกับ C # / JavaScript ภาษาอื่น ๆ ส่วนใหญ่ยังคงทำงานได้
สิ่งที่สำคัญเป็นครั้งแรกที่จะแก้ไขปัญหาเป็นของ Java n->
VS n=>
C Java รองรับค่า unicode เป็นส่วนหนึ่งของรหัสดังนั้นการใช้สิ่งต่อไปนี้:
//\u000A\u002F\u002A
n=>//\u002A\u002Fn->
จะตีความเช่นนี้ใน C # / JavaScript:
//\u000A\u002F\u002A
n=>//\u002A\u002Fn->
แต่เป็นเช่นนี้ใน Java:
//
/*
n=>//*/n->
นี่คือเนื่องจาก\u000A
เป็นตัวแบ่งบรรทัด\u002F
เป็น/
และ\u002A
อยู่*
ใน Java
จากนั้นเพื่อแยกความแตกต่างระหว่าง Java vs C # / JavaScript ฉันได้เพิ่มสิ่งต่อไปนี้:
""+n==""+n?...:n*n
โดยที่...
มีอยู่5/2>2?1:40-n
และn*n
เป็นส่วนหนึ่งของรหัสสำหรับลำดับOeis A000290 (สี่เหลี่ยมจัตุรัสหรือที่รู้จักว่าa(n)=n2 )
ทำไมจึงใช้งานได้ ใน Java Strings เป็นวัตถุที่==
ใช้ในการตรวจสอบว่าการอ้างอิงของวัตถุชี้ไปที่สถานที่เดียวกัน (หรือเพื่อตรวจสอบว่า primitives เท่ากัน) และที่เกิดขึ้นจริงObject.equals(Object)
จะต้องใช้เพื่อตรวจสอบว่าค่าของวัตถุเหล่านี้เหมือนกัน ดังนั้น""+n==""+n
จะเป็นเท็จใน Java แต่ความจริงใน C # / JavaScript
หลังจากนั้นถูกแก้ไข (โดยการใช้ newlines ที่มีอยู่แล้วเพื่อไม่ให้โปรแกรมช่องว่างว่างซ้ำ) บางสิ่งต้องได้รับการแก้ไข สี่โปรแกรมที่มีอยู่กำลังล้มเหลวในขณะนี้: Runic Enchantments, Jelly, Unreadable และ Commentator
การแก้ไขสำหรับอ่านไม่ได้เป็นเรื่องง่าย เราเพิ่มสี่""""
ก่อนหน้าแรก'
ดังนั้นเราจึงใส่ที่'
ใดที่หนึ่งไว้ก่อนหน้านี้ (ฉันวางไว้ที่ท้ายบรรทัดแรก) และลบส่วนนำ'""""
จากส่วนที่อ่านไม่ได้ของโค้ดที่ด้านล่าง
IndexError: pop from empty list
หลังจากที่มาเจลลี่ซึ่งได้รับการให้ ฉันไม่ค่อยเก่งในเยลลี่ฉันเลยไม่รู้เหมือนกันว่าทำไมมันถึงทำให้เกิดข้อผิดพลาดนี้ หากฉันจำได้อย่างถูกต้องบรรทัดสุดท้ายจะเป็นลิงก์หลักของโปรแกรม Jelly และเนื่องจากรหัสในบรรทัดสุดท้ายนั้นไม่ได้ใช้ลิงก์อื่น ๆ ดังนั้นทุกอย่างจึงควรถูกละเว้น แต่อย่างใดส่วนหนึ่ง""+n==""+n
ก็ยังให้ปัญหาบางอย่าง ฉันสามารถแก้ไขได้โดยเพิ่มที่/**/
ด้านหน้าของบรรทัดนั้น
สำหรับ Runic Enchantments มันไม่ได้เอาท์พุทอะไรอีกแล้ว @ Draco18sชี้ให้ฉันเห็นว่า Runic Enchantments เริ่มต้น>
พร้อมกัน แต่มีเพียง>2?1:40-n/
และ/ip@
มีความเกี่ยวข้อง นี้เป็นความช่วยเหลืออย่างมากที่จะเข้าใจการไหลของโปรแกรมรูนตราและฉันก็สามารถที่จะแก้ไขเส้นทางโดยการเพิ่ม/**/
ที่>2?1:40-/**/n:n*n
และการเปลี่ยนตำแหน่งของ//ip@
, //
และพื้นที่บนบรรทัดสุดท้าย
สิ่งที่เหลืออยู่คือ Commentator ณ จุดนั้นฉันตระหนักว่าการแก้ไขก่อนหน้าของฉันในการเพิ่ม/**/
ไม่ได้เป็นความคิดที่ดีเพราะมันจะส่งออกขยะเพิ่มเติมเนื่องจาก builtins /*
(แปลงแอ็คทีฟเป็นอักขระและเอาต์พุต Unicode) และ*/
(เอาต์พุตแอ็คทีฟเป็นตัวเลข) .. >.> หลังจากเล่นไปมาแล้วลองทำบางอย่างการแก้ไขกลายเป็นเรื่องง่ายมาก: ฉันได้เพิ่มไว้e
ก่อนหน้า#
ในบรรทัดแรก e#
เป็น builtin ที่จะปฏิเสธการใช้งานแก้ไขปัญหาที่เกิดจากรหัสที่ฉันเพิ่ม (apparently)