Two Makes All The Difference - Robbers


29

สำหรับความท้าทายของตำรวจหลักคลิกที่นี่

ประกาศ - ความท้าทายนี้ปิดตอนนี้ รอยแตกใด ๆ ที่โพสต์ในขณะนี้จะไม่ถูกนับในกระดานแต้มนำและคำตอบที่ยอมรับจะไม่เปลี่ยนแปลง

ท้าทาย

เมื่อได้รับโปรแกรมดั้งเดิมเอาต์พุตและเอาต์พุตของโปรแกรมที่ถูกเปลี่ยนคุณต้องค้นหาว่าอักขระใดที่จำเป็นต้องเปลี่ยนลบหรือเพิ่มเพื่อให้ได้ผลลัพธ์ที่ต้องการ

เมื่อคุณถอดรหัสรหัสของใครบางคนออกความคิดเห็นพร้อมลิงค์ไปยังรอยแตกของคุณในคำตอบของพวกเขา

การจัดรูปแบบ

# [<language>, <username of program owner>](<link to answer>)

## Description

<description of change and how you found it>

## Code

<changed code>

การชนะ

ผู้ที่ได้แก้ปัญหาให้ได้มากที่สุดจะเป็นผู้ชนะ

ลีดเดอร์บอร์ด

13 รอยแตก:

  • เดนนิส

8 รอยแตก:

  • Alex Van Liew

5 รอยแตก:

  • SP3000
  • isaacg

3 รอยแตก:

  • หลุยส์เมนโด
  • jimmy23013
  • เฮสติ้งส์ Dom

2 รอยแตก:

  • mbomb007
  • Sluck49

1 รอยแตก:

  • TheNumberOne
  • Jakube
  • ProudHaskeller
  • เดวิดจาง
  • samgak
  • paul.oderso
  • rayryeng
  • mgibsonbr
  • n̴̖̋h̷͉a̷̭̿h̸̡̅ẗ̵̨d̷̰ĥ̷̳
  • Stewie Griffin
  • abligh

1
@ mbomb007 คุณสามารถละเว้นจากการแก้ไขโพสต์นี้เพราะมันทำให้ฉันรู้ว่าฉันอยู่ที่ไหนเมื่ออัปเดตกระดานผู้นำ
Beta Decay

คำตอบ:


10

CJam โดย Mauris

ลักษณะ

รหัสดั้งเดิมของ Mauris ทำดังต่อไปนี้:

"f~"     e# Push that string on the stack.
    :i   e# Cast each to integer. Pushes [102 126].
      :# e# Reduce by exponentiation. Pushes 102^126.

ไม่มีผู้ประกอบการทางคณิตศาสตร์คนอื่นของ CJam ที่จะให้ผลผลิตจำนวนมากสำหรับอินพุตขนาดเล็กดังนั้นจึง:#ไม่สามารถแก้ไขได้ เนื่องจาก#เมื่อใช้สำหรับการยกกำลังจะใช้จำนวนเต็มเป็นอินพุตเท่านั้น:iจึงไม่สามารถลบได้เช่นกัน ใบนี้เพียงหนึ่งสถานที่ที่จะปรับเปลี่ยนการป้อนข้อมูล: "f~"สตริง

ไม่ว่าอักขระจะมีสตริงจำนวนเท่าใดผลลัพธ์จะเป็นหอพลังงานที่เชื่อมโยงทางซ้าย CJam รองรับอักขระในช่วงตั้งแต่ 0 ถึง 65535 (ยกเว้นตัวแทน) ดังนั้นเราต้องแสดงผลลัพธ์เป็นb n × k × jโดยที่b , n , kและjเป็นจำนวนเต็มในช่วงนั้น

ค่าลอการิทึมฐานสิบของจำนวนเต็มซึ่งเป็นผลมาจากรหัสที่แก้ไขนั้นมีขนาดเล็กกว่าlog 10เล็กน้อย(2.44 × 10 242545 ) = log 10 (2.44) + 242545ดังนั้นเราสามารถหารค่านี้ด้วยลอการิทึมของฐานที่เป็นไปได้ทั้งหมดเพื่อค้นหาค่าที่เหมาะสม สำหรับn ×× k J

ในความเป็นจริง:

$ cjam <(echo '65536,2>{2.44AmL242545+1$AmL/i:I#s8<"24399707"=}=SIN')
5 347004

การเปรียบเทียบตัวเลข 8 หลักแรกนั้นเพียงพอแล้ว

ซึ่งหมายความว่าเราสามารถแสดงออกเป็น5 347004 = 15625 57834 = 125 9 × 102 × 126ดังนั้นจึงพอเพียงที่จะแทนที่"f~"ด้วย"㴉""} f~"หรือ

รหัส

"㴉":i:#

หรือ

"}  f~":i:#

โปรดทราบว่าช่องว่างในรหัส ASCII ควรเป็นตัวสร้างตาราง

การพยายามรันโค้ดนี้ในล่ามออนไลน์อาจเป็นความคิดที่ไม่ดี แต่นี่เป็นวิธีที่คุณสามารถตรวจสอบผลลัพธ์จากบรรทัดคำสั่ง:

$ wget -q https://bpaste.net/raw/f449928d9870
$ cjam <(echo '[15625 57834]:c`":i:#") > mauris.cjam
$ cat mauris.cjam; echo
"㴉":i:#
$ cjam mauris.cjam | diff -s - f449928d9870
Files - and f449928d9870 are identical
$ echo -en '"}\tf~":i:#' > mauris-ascii.cjam
$ cat mauris.cjam; echo
"}  f~":i:#
$ cjam mauris-ascii.cjam | diff -s - f449928d9870
Files - and f449928d9870 are identical

11
หนึ่งไม่เพียงชนะเดนนิสใน CJam
Fatalize

คุณทราบได้อย่างไรว่าจะใช้หมายเลขใด
Alex Van Liew

@AlexVanLiew กำลังดุร้าย ฉันกำลังเขียนคำอธิบาย ฉันแค่อยากให้รอยแตกที่โพสต์ก่อนที่คนอื่นทำ
เดนนิส

@Dennis: ยุติธรรมเพียงพอ ฉันลองอันนี้ แต่ไม่รู้ว่า CJam; ฉันหาวิธีแก้ปัญหาที่เกี่ยวข้องกับการใช้งานจริง~fในโปรแกรม
Alex Van Liew

1
@Mauris คำถามที่บอกว่าเมื่อเพียงแค่ตัวละครสองตัวในโปรแกรมมีการเปลี่ยนแปลง (ฉันเน้น) ดังนั้นฉันคิดว่านี่เป็น OK อย่างไรก็ตามการแยกตัวประกอบจำนวนออกเป็นส่วนที่ยาก
เดนนิส

15

ทับทิม

ลักษณะ

เปลี่ยน x เป็นอาร์เรย์แทนสเกลาร์โดยการเพิ่ม *

เปลี่ยนค่าล่าสุด9เป็นสตริงแทนที่จะเป็นตัวเลขด้วยการเพิ่ม?

ผลลัพธ์ที่ได้นั้นทำจากอาเรย์ที่มีองค์ประกอบเดียว ( [9]) คูณ 9 ครั้งจากนั้นก็ฝังด้วย"9"ตัวคั่น

รหัส

x=*9;puts x*9*?9

12

Python 2, muddyfish

ลักษณะ

ผ่านการทดลองและความยากลำบากที่เกี่ยวข้องกับการแยกตัวประกอบจำนวนมากและมองหาปัจจัยที่เป็นรูปธรรมฉันรู้ว่าการเปลี่ยน 87654 เป็น 58116 จะเพียงพอ จากนั้นฉันแยกตัวประกอบ 58116 เป็น 87 * 668 จากนั้นฉันก็รู้ว่า 01234 = 668 ดังนั้นฉันต้องเปลี่ยน 87654 เป็น 87 และลบ 01234 ทั้งหมด นี่คือความสำเร็จที่มีความคิดเห็น

รหัส

print (sum(range(054321)*9876)*87)#654)/01234

ใช่เกือบจะว่าฉันมีมัน (ของฉันเป็นprint sum(range(054321)*9876)*87#654)/01234)
บลู

ฉลาดฉลาด! ฉันดีใจที่มีคนได้รับและมันน่าสนใจกว่า "เล่นกับตัวเลข"!
Alex Van Liew

11

เช็คสเปียร์, AboveFire

ในฉาก III หนึ่งต้องเปลี่ยน Claudius เป็น Claudio ในตัวอย่างต่อไปนี้:

[Enter Claudio]

Claudius:
 Thou art as stupid as the sum of thee and the product of the 
 product of me and Helen and Helena

[Exeunt]

รหัสที่แก้ไข:

The Hidden Change.

Helen, a young woman with a remarkable patience.
Helena, a likewise young woman of remarkable grace.
Claudio, a remarkable man much in dispute with Claudius.
Claudius, the flatterer.
The Archbishop of Canterbury, the useless.


          Act I: Claudius's insults and flattery.

          Scene I: The insulting of Helen.

[Enter Claudius and Helen]

Claudius:
 Thou art as hairy as the sum of a disgusting horrible fatherless 
 dusty old rotten fat-kidneyed cat and a big dirty cursed war.
 Thou art as stupid as the product of thee and a fat smelly 
 half-witted dirty miserable vile weak son.

[Exeunt]

          Scene II: The complimenting of Helena.

[Enter Claudio and Helena]

Claudio:
 Thou art the sunny amazing proud healthy peaceful sweet joy.
 Thou art as amazing as the product of thee and the pretty
 lovely young gentle handsome rich Hero. Thou art as great 
 as the sum of thee and the product of a fair golden prompt good honest 
 charming loving noble king and a embroidered rich smooth golden angel.

[Exeunt]

          Scene III: The insulting of Claudio

[Enter Claudius and Helen]

Helen:
 Thou art as stupid as the sum of the sum of thee and a cat and me.
[Exit Helen]

[Enter Claudio]

Claudio:
 Thou art as stupid as the sum of thee and the product of the 
 product of me and Helen and Helena

[Exeunt]

          Scene IV: The Final Countdown

[Enter The Archbishop of Canterbury and Claudius]

Claudius:
 Thou art the sum of you and a cat.

The Archbishop of Canterbury:
 Am I better than a fine road?

Claudius:
 If not, let us return to the insulting of Claudio.

[Exit The Archbishop of Canterbury]

[Enter Claudio]

Claudius:
 Open your heart!
 Open your heart!
[Exeunt]

การใช้คอมไพเลอร์ที่ลิงค์โดย @AboveFire จะพิมพ์11ออกมา


2
คุณช่วยอธิบายให้ชัดเจนว่าตัวละครตัวไหนที่เปลี่ยนไปได้บ้าง? มันไม่ง่ายเลยที่จะมองย้อนกลับไป
mbomb007

สาย 15 นาที ขอแสดงความยินดี
Sumyrda - Reinstate Monica

2
Jeebus H. Christ งานที่ดี!
rayryeng - Reinstate Monica

1
@ mbomb007 ฉันหวังว่าการแก้ไขของฉันจะทำให้ชัดเจนยิ่งขึ้น AboveFire: ขอโทษ :)
plannapus

3
@plannapus ฮ่าฮ่ามันก็โอเค แต่วิธีที่ตั้งใจจะเคลียร์มันก็คือการแทนที่คำว่า "ราชา" โดย "หมู" ด้วยการเปลี่ยนแปลงนี้เฮเลนาเท่ากับ 0 และ "ผลรวมของเจ้าและผลิตภัณฑ์ของฉัน และเฮเลนกับเฮเลนา "เท่ากับ 1 ฉันได้ทำรายการคำทั้งหมดที่สามารถคว่ำด้วยตัวอักษรสองตัวและใช้พวกเขาจำนวนมากในรหัสของฉัน (เช่น: joy-> hog-> บุตรชาย, war-> cat, ถนน -> คางคก, ฮีโร่ -> นรก, คำสาป -> กระเป๋าเงิน, เฮเลน -> เฮเลนา, claudio-> claudius และอื่น ๆ อีกมากมาย) สิ่งเดียวที่สามารถเปลี่ยนโปรแกรมเช็คสเปียร์ด้วย 2 ถ่านคือการเปลี่ยนแปลงของตัวแปรการเปลี่ยนแปลงของ คำนามและการเปลี่ยนแปลงของข้ามไป
AboveFire



7

C, LambdaBeta

ลักษณะ

เลี้ยวเข้าไปmain(a,_) main(_)อาร์กิวเมนต์แรกของหลักคือการที่จะเริ่มต้นเป็นargc1

รหัส

main(_){puts(_*_-1||_*_*_-1||_*_*_*_-1?"Expected Output":"?");}

นั่นคือทางออกที่ฉันมีอยู่ในใจ รับได้สวย. บังเอิญถ้า argv เกิดขึ้นที่จะโหลดลงในเซลล์หน่วยความจำ 1 นี้จะไม่ทำงาน ฉันไม่สามารถนึกถึงระบบใด ๆ ที่จะทำเช่นนั้นได้ซึ่งสามารถใช้ภาษาที่ตีความต่าง ๆ ในหน้านั้นได้
LambdaBeta

6

Python 2, rp.belrann

เปลี่ยนรายการความเข้าใจนอกสุดเป็นความเข้าใจที่กำหนด เครดิตบางส่วนถึง @ mbomb007 ซึ่งกำจัดโซลูชัน "น่าเบื่อ" ทั้งหมด (การแลกเปลี่ยนxและyรอบ ๆ ผู้ประกอบการปรับเปลี่ยนเปลี่ยนช่วง)

'~'*sum({(x,y)[x%2] for x in[y for y in range(8)]})

คำอธิบาย:

ในต้นฉบับ[(x,y)[x%2]for x in[y for y in range(8)]]สร้างรายการต่อไปนี้:

[0, 7, 2, 7, 4, 7, 6, 7]

นี่เป็นเพราะใน Python 2.7 ความyเข้าใจในรายการภายในรั่วไหลเข้าไปในขอบเขตการล้อมรอบซึ่งเป็นค่าที่ทราบกันครั้งสุดท้าย (ซึ่งในตอนท้ายของช่วงคือ 7) ดังนั้นใน tuple yจะเป็น 7 เสมอxอย่างไรก็ตามจะผ่านรายการตามปกติตั้งแต่ 0 ถึง 7 เมื่อxถึงแม้มันจะเลือกค่าของxเมื่อมันแปลกมันเลือกy(ซึ่งเป็น 7 เสมอ) ฉันสังเกตเห็นว่าถ้าฉันรวมหนึ่งอย่างแน่นอน 7 และค่าที่เหลือทั้งหมดของxฉันได้ 19 จากนั้นฉันก็รู้ว่าฉันสามารถแปลงความเข้าใจภายนอกให้เป็นความเข้าใจเซตซึ่งจะกำจัดค่าที่ซ้ำกันทั้งหมดและทิ้งฉันไว้กับ 19 อย่างแน่นอน

มันค่อนข้างฉลาดฉันไม่คิดว่าฉันเคยใช้ชุดความเข้าใจมาก่อน ความรุ่งโรจน์


Nope แค่นั้นแหละ ผลตอบแทนprint len('~'*sum([(x,y)[x%2]for x in[y for y in range(6)]])) 21เพียงแค่กำหนดรหัสให้ตัวแปรแล้วพิมพ์ถ้ามันเท่ากับสตริงที่คุณต้องการ ถ้าคุณเห็นTrueคุณแตก
mbomb007

แปลกประหลาด _ฉันทรยศฉันเดา
Alex Van Liew

@ mbomb007 ฉันเข้าใจแล้ว
Alex Van Liew

คุณมีฉัน. ทำได้ดี.
rp.beltran


5

Bash เดนนิส

รหัสเดิม:

echo {{{1..9}}}

เอาท์พุทเดิม:

{{1}} {{2}} {{3}} {{4}} {{5}} {{6}} {{7}} {{8}} {{9}}

รหัสที่แก้ไข:

echo {,{1..9},}

แก้ไขเอาต์พุต:

1 2 3 4 5 6 7 8 9

คำอธิบาย:

ใน Bash คุณสามารถแสดงรายการของรายการที่คั่นด้วยเครื่องหมายจุลภาคภายในวงเล็บปีกกาดังนี้:

echo {a,b,c}

พิมพ์

a b c

ดังนั้นรหัสที่แก้ไขคือการพิมพ์รายการของไม่มีอะไรตัวเลข 1..9 ไม่มีอะไร


5

MATLAB, Luis Mendo

รหัสเดิม:

-sin(2:.5:3)    
ans =    
   -0.9093   -0.5985   -0.1411

คำตอบใหม่:

psi(2:.5:3)
ans =
    0.4228    0.7032    0.9228

รายละเอียด:

การเปลี่ยนแปลง-sinที่จะpsiฟังก์ชั่น polygamma ใน MATLAB -เครื่องหมายถูกแทนที่โดยpและnจะถูกลบออก


4

C, LambdaBeta

ลักษณะ

เปลี่ยน-1เป็น*0ผลลัพธ์ของการคูณคือ0(ค่าเท็จ)

รหัส

main(a,_){puts(_*_*_*_*_*0?"Expected Output":"?");}

อ๊ะดูเหมือนว่าฉันได้แนะนำ (ข้อบกพร่องด้านความปลอดภัยหรือไม่) ในระหว่างการเล่นกอล์ฟของฉัน ฉันจะใช้มันอย่างเกียจคร้านเพื่อดูว่าฉันสามารถแก้ไขได้หรือไม่ แม้ว่าจับได้ดี
LambdaBeta

4

Brainfuck, Kurousagi

ลักษณะ

ลบอันแรก>และเปลี่ยนอันแรก<เป็น.

ทดสอบที่brainfuck.tk หมายเหตุว่าการส่งออกไม่ตรงกับการโพสต์ของ Kurousagi ว่าเนื่องจาก SE รับประทานอักขระ unprintable

รหัส

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.[>.+<-]

@muddyfish ฉันเชื่อมโยงคำตอบนี้ในความคิดเห็นที่สองของฉัน แต่ฉันยังคงรอการยืนยันจาก Kurousagi
Sp3000

4

Fantom อดัมและอีฟ

การรักษาความปลอดภัยผ่านความสับสนเป็นรูปแบบความปลอดภัยที่แย่มาก (โดยเฉพาะอย่างยิ่งเมื่อทั้งสองวิธีอยู่ติดกันในเอกสาร Fantom และใครก็ตามที่รู้ว่าสิ่งที่ดูเหมือนว่าลอยจะรู้ทันทีว่าจะทำอย่างไร)

Float.makeBits32(1123581321)

1
คุณได้รับฉันภายใน 1 นาที !!! เล่นได้ดี
AboveFire

1
ฮ่าฮ่าคุณได้รับฉันเพลิดเพลินไปกับรอยแตกฟรี
ดัมและอีฟ

@Cain นั่นคือเจตนา oo
The_Basset_Hound

1
@BassetHound ฉันหมายถึงมันเป็นมากกว่าการทดลองทางสังคมเพื่อดูว่าผู้คนจะรบกวนการเรียนรู้ภาษาที่คลุมเครือบ้างหรือเปล่า ฉันควรทำให้มันยากขึ้นเพื่อที่จะทำงานจริง
ดัมและอีฟ

4

CJam โดย Basset Hound

25me

คำนวณe 25 ลองออนไลน์

ล่ามออนไลน์ให้ผลลัพธ์ที่แตกต่างกันเล็กน้อยในเบราว์เซอร์ของฉันซึ่งดูเหมือนจะเป็นปัญหาการปัดเศษ

ล่าม Java พิมพ์7.200489933738588E10ออกซึ่งเป็นผลลัพธ์ที่ต้องการ แต่ในรูปแบบที่แตกต่างกัน


เฮ้มันง่ายมาก โดยเฉพาะอย่างยิ่งสำหรับพระเจ้า CJam แก้ไข.
The_Basset_Hound

4

Python 2, Sp3000

ลักษณะ

เปลี่ยนแปลง01234ไป0x1234และการmin9in

ความจริงที่4669 = (01234-1)*sum(m<<m in R for m in R)ทำให้เข้าใจผิด

รหัส

R=range(0x1234);print sum(m<<9in(m,n)for m in R for n in R)

ทำได้ดีมาก! ผมมีm<<m in(m,n)แต่สิ่งที่สำคัญคือการเปลี่ยนไปmin in
Sp3000

4

MATLAB / Octave, Stewie Griffin

ลักษณะ

สิ่งนี้จำเป็นต้องลบอินพุตให้เป็นฟังก์ชันที่ไม่ระบุชื่อgเช่นเดียวกับการเปลี่ยนค่าสเกลของgฟังก์ชันเป็น 2 แทน 7:

รหัส

>> f=@(x)x^.7;g=@(x)2/f(x);g(-7)

ans =

  -0.3011 - 0.4144i

ขอบคุณสำหรับความคิดเห็นของคุณในคำตอบของฉัน (ตอนนี้ถูกลบ) ฉันโพสต์ใหม่ (คล้ายกันมาก) ที่สามารถถอดรหัสได้โดยใช้ WolframAlpha ฉันเชื่อว่ามันยุติธรรม
ดร. เบลิซาเรียส


3

Java, TheNumberOne

ลักษณะ

โปรแกรมเป็นการใช้งานครั้งเดียวRandom.next()ด้วยการเริ่มต้นของเมล็ดInteger.MAX_INTและตัวเลขฐานสิบหกทั้งหมดแปลงเป็นทศนิยม เปลี่ยนเมล็ดเพื่อเสริมMAX_INTสร้างผลลัพธ์:

class T{public static void main(String[]a){System.out.print(((~Integer.MAX_VALUE^25214903917L)&281474976710655L)*25214903917L+11L&281474976710655L);}}

(เนื่องจากจะต้องมีการเปลี่ยนแปลงสองประการให้เลือกประเภทใด ๆ ของการเปลี่ยนแปลงแบบไม่ op: เพิ่มช่องว่างบางเครื่องหมายอัฒภาคพิเศษ ฯลฯ )


1
ดีคุณอาจกลายInteger.MAX_VALUEเป็นInteger.MAX_VALUE+1หรือInteger.MIN_VALUE
TheNumberOne

โอ้คุณรู้อะไรไหม ฉันพยายาม+1แต่เนื่องจากฉันทำมันใน Python มันเพิ่งจะกลิ้งไปได้นานฮ่าฮ่า นั่นเป็นความคิดแรกของฉันจริงๆ
Alex Van Liew

3

Brainfuck, AboveFire

โปรแกรมนี้เป็นการดัดแปลงของสิ่งนี้รหัสฉันตอบคุกกี้ คำตอบนั้นใช้ได้โดยการคำนวณตารางรหัส ascii ของอักขระที่มีประโยชน์ล่วงหน้าก่อนแล้วจึงมีคำสั่งแบบเงื่อนไขสามเงื่อนไขที่สร้างขึ้นโดยสามลูปซึ่งป้อนโดยมี a 1อยู่ในตำแหน่งที่ถูกต้อง

จุดเริ่มต้นของวิธีที่ฉันทำลายรหัสคือรูปแบบการทำซ้ำในผลลัพธ์ที่เปลี่ยนแปลงส่วนใหญ่จะเป็นสิ่งที่พิมพ์ถ้าคุณป้อนลูปที่สามโดยที่ตารางเลื่อนไปทางซ้าย

++++++++++[->++++++++<]>>++++++[-<---------->]<-------[----------->>>-<<+<[->->+<<]]>>>+<<>>>+++[->++++++++++<]>(<)++ .<+++++++++[->>>>>>>++++++++++<+++++<++++++++++++++<++++++++++<+++++<++++++++++<<]++++++++++>>+++++...>++>++>-->+>(>)++++<<<<<<<.<<<[->>>>>>.<<>>>>>.<<<<<.>>>>>.<<<<<>>>.<<<<.>>>>>.<<<<.>>>>>.<<<<<.>>>>.<<<<<.>>>>.<<...>.<<<<<<]>[->>>>>.<<...>>>.<<<<.>>>>>.<<<<...>>>>.<<<<<.>>>>.<<...>.<<<<<]>[->>>>.<<>>>>>>.<<<<<<..>>>.<<<<.>>>>>.<<<<>>>>>>.<<<<<<.>>>>>>.<<<<<<>>>>.<<<<<.>>>>.<<...>.<<<<]

(อักขระเพิ่มเติมถูกทำเครื่องหมายด้วยวงเล็บ)


3

Python 2, muddyfish

ลักษณะ

เปลี่ยน<<ไป<>(รุ่นเลิกของ!=) และ0x156เพื่อ0156จุดรหัสสำหรับ"n"(ซึ่งปรากฏขึ้น 3 ครั้งในสตริงยาว 23 '<built-in function sum>')

รหัส

print sum((ord(i)<>0156 for i in `sum`))

3

JavaScript โดย Razvan

ลักษณะ

Math['E']การส่งออกมีการปรับเปลี่ยนอย่างชัดเจนจำนวนธรรมชาติออยเลอร์ซึ่งสามารถเข้าถึงได้เป็น

โดยการเปลี่ยน''ไป'3'และ32ไป36,String.fromCharCodeEสร้าง

รหัส

a=1,b=a*2,c=a+b,d=[a+b];while(c>b)c-=a;for(i=1;i<=c;i++)d.push(i);i='3'+c*d['length']*d['length'];alert(Math[String.fromCharCode(i.charCodeAt(0) * i.charCodeAt(1) / 36)])

ใช่ที่ถูกต้อง. ถึงกระนั้นมันก็เป็นอะไรที่ลึกกว่า แต่ดูเหมือนว่าคุณสามารถหลีกเลี่ยงได้ด้วยเล่ห์เหลี่ยมนี้ ฉันจะคิดอย่างอื่นแล้วฉันจะกลับมา
Razvan

3

Fantom อดัมและอีฟ

ลักษณะ

การจัดทำดัชนีอาร์เรย์ถูกตั้งค่าแล้วดังนั้นฉันแค่ต้องสร้าง 55 จริงๆแล้วส่วนที่ยากที่สุดคือการดาวน์โหลดภาษา

รหัส

[7115432d/9,219.or(64),37,55,55][3]

(แทรกเครื่องหมายจุลภาค0-> 3)


อึอืมนั่นไม่ใช่วิธีแก้ปัญหาที่ตั้งใจไว้ปลาเฮอริ่งแดงของฉันเป็นทางออกที่แท้จริง
ดัมและอีฟ

3

เช็คสเปียร์, AboveFire

ไม่ถูกต้อง - ขออภัย :(

จะดูเพิ่มเติมเมื่อฉันกลับถึงบ้านจากที่ทำงานในค่า Claudio ดั้งเดิมคือ 1132462081 และค่า Claudius 'คือ 1

ในค่าสุดท้ายของฉาก Claudio จะถูกพิมพ์สองครั้ง

[Enter Claudio]

Claudius:
 Open your heart!
 Open your heart!

เปิดหัวใจของคุณ x2 = มูลค่าการพิมพ์ของอีกฝ่ายบนเวที (Claudio) ดังนั้นหากคุณเปลี่ยน Claudius เป็น Claudio (2 chars) - มูลค่าของ Claudius จะถูกพิมพ์ - ซึ่งคือ 1 - สองครั้ง

The Hidden Change.

Helen, a young woman with a remarkable patience.
Helena, a likewise young woman of remarkable grace.
Claudio, a remarkable man much in dispute with Claudius.
Claudius, the flatterer.
The Archbishop of Canterbury, the useless.


          Act I: Claudius's insults and flattery.

          Scene I: The insulting of Helen.

[Enter Claudius and Helen]

Claudius:
 Thou art as hairy as the sum of a disgusting horrible fatherless 
 dusty old rotten fat-kidneyed cat and a big dirty cursed war.
 Thou art as stupid as the product of thee and a fat smelly 
 half-witted dirty miserable vile weak son.

[Exeunt]

          Scene II: The complimenting of Helena.

[Enter Claudio and Helena]

Claudio:
 Thou art the sunny amazing proud healthy peaceful sweet joy.
 Thou art as amazing as the product of thee and the pretty
 lovely young gentle handsome rich Hero. Thou art as great 
 as the sum of thee and the product of a fair golden prompt good honest 
 charming loving noble king and a embroidered rich smooth golden angel.

[Exeunt]

          Scene III: The insulting of Claudio

[Enter Claudius and Helen]

Helen:
 Thou art as stupid as the sum of the sum of thee and a cat and me.
[Exit Helen]

[Enter Claudio]

Claudius:
 Thou art as stupid as the sum of thee and the product of the 
 product of me and Helen and Helena

[Exeunt]

          Scene IV: The Final Countdown

[Enter The Archbishop of Canterbury and Claudius]

Claudius:
 Thou art the sum of you and a cat.

The Archbishop of Canterbury:
 Am I better than a fine road?

Claudius:
 If not, let us return to the insulting of Claudio.

[Exit The Archbishop of Canterbury]

[Enter Claudio]

Claudio: << changed Claudius to Claudio
 Open your heart!
 Open your heart!
[Exeunt]

Nope ค่า Claudio ไม่ใช่ 1 xD ขอให้โชคดีในครั้งต่อไป
AboveFire

@AboveFire - หยาบคาย .. ฉันจะดูอีกครั้งเมื่อฉันกลับถึงบ้านจริงๆคิดว่าฉันมีมัน :(
Alex Carlsen

นั่นคือการเดาครั้งแรกของฉันเช่นกัน แต่ฉันยังไม่มีโอกาสลอง อย่างไรก็ตามส่วนเดียวที่ฉันยังไม่เข้าใจก็คือส่วนหนึ่งของอาร์คบิชอปดังนั้นฉันจะดูว่าเมื่อฉันกลับถึงบ้าน
Sumyrda - Reinstate Monica

3

VBA โดย JimmyJazzx

เปลี่ยนIRRเป็นMIRRและเปลี่ยน5เป็น a ,ดังนั้นจึงมี 3 พารามิเตอร์

ฉันพบสิ่งนี้ในขณะที่มองหาวิธีการIRRทำงานของ Excel มีบทความ: วิธี MIRR ของ Excel สามารถแก้ไขฟังก์ชัน IRRได้อย่างไร นั่นทำให้ฉันปิดท้าย ความพยายามที่ฉลาดแม้ว่า ฉันไม่เคยใช้ VBA มาก่อนดังนั้นมันจึงน่าสนใจเช่นกัน

Sub q()
Dim a(2) As Double
a(0)=-5
a(1)=10
msgBox MIRR(a,0.2,3)
End Sub

ดี ในทางเทคนิคแล้วฉันเพิ่มทั้ง M และ the ดังนั้น arg ตรงกลางคือ 0.25 แต่ฉันคิดว่าพวกมันจบลงด้วยผลลัพธ์เดียวกัน ความคิดที่ใช้ฟังก์ชั่นทางการเงินบางอย่างอาจทำให้โปรแกรมเมอร์หยุดชะงัก ทำได้ดีมาก
JimmyJazzx

3

Matlab / Octave, Jonas

ลักษณะ

ในบรรทัดสุดท้ายเพิ่ม'เพื่อแปลงarg'เป็นสตริง'arg'ซึ่งจะถูกตีความเป็นตัวเลข ASCII แล้วเพิ่มอีก'ส่วนท้ายเพื่อรักษารูปแบบคอลัมน์

เกือบจะไม่จำเป็น'ในรหัสต้นฉบับคือเบาะแสหลัก นอกจากนี้ในการหวนกลับความจริงที่argถูกกำหนดแยกต่างหาก (แทนที่จะอยู่ภายในsinบรรทัด) ควรดูน่าสงสัย

รหัส

format long
arg = [.1 .2 .3];
sin('arg'*exp(9))'

3

bc, abligh

แทรกตัวดำเนินการทางคณิตศาสตร์เท่านั้น ใช้เวลาประมาณ 1 นาทีในการแก้ปัญหาเมื่อฉันค้นหาว่า bc คืออะไรและมีการดำเนินการทางคณิตศาสตร์อะไรบ้าง สิ่งแรกที่ฉันคิดคือการแบ่ง แต่ไม่มีปัจจัยทั่วไปที่ดูดี ดังนั้นฉันจึงไปหาการยกกำลังและโมดูลัสทันที อย่างน้อย 15 หลักจำเป็นสำหรับโมดูลัส b / c ของผลลัพธ์ที่คาดหวัง หลังจากนั้นฉันก็เดาได้สองครั้งและพบว่า

4518^574%615489737231532

3

Lua, TreFox

ลักษณะ

"_G" เป็นตารางทั่วโลกซึ่งทำให้ "_G.load" อ้างถึง "โหลด" ของฟังก์ชันส่วนกลาง การแปลงฟังก์ชันให้เป็นสตริงจะส่งคืนที่อยู่ของฟังก์ชันซึ่งจะถูกทำให้เป็นความยาวของสตริงโดยตัวดำเนินการความยาว "#"

รหัส

G={load="lfkjgGsHjkU83fy6dtrg"}
print(#tostring(_G.load))

นอกจากนี้เนื่องจากนี่เป็นโพสต์แรกของฉันที่นี่ฉันไม่สามารถแสดงความคิดเห็นกับคำตอบเดิมได้


ฉันได้แสดงความคิดเห็นกับคำตอบของตำรวจ อย่างไรก็ตามมันไม่ได้ผลสำหรับฉัน ที่อยู่คือผมได้รับคือสำหรับผลลัพธ์สุดท้ายของ0x321a40c6d0 22
เดนนิส

ฉันไม่แน่ใจว่าทำไมคุณถึงอายุ 22 ปี ... กับทุกสิ่งที่ฉันทดสอบมันคือ 18 หรือ 26
TreFox


อ่าฉันสนิทมาก! ฉันรู้ว่าฉันต้องการทั่วโลกloadและฉันรู้ว่า_Gอ้างถึงตารางสัญลักษณ์ทั่วโลก ... ฉันไม่ได้รวมสองสิ่งเข้าด้วยกัน
Alex Van Liew

3

Python, rp.beltran

ลักษณะ

ฉันสังเกตเห็นว่าตัวอักษรที่ต้องการนั้นเป็นเลข 2 หน้าเสมอ เปลี่ยนตัวที่สาม\wเพื่อให้\dได้ตัวอักษรที่ถูกต้องทั้งหมดยกเว้นช่องว่าง \Dเป็นคนเดียว\กลุ่มฉันพบว่ามีตัวอักษรและช่องว่างที่อนุญาต

รหัส

import re;''.join(re.findall('\D(?=\w\d)','t74q joh7 jv f9dfij9j bfjtf0e nnjen3j nnjrb6fgam3gtm5tem3hj s3eim7djsd3ye d5dfhg5un7ljmm8nan3nn6n k m2ftm5bsof5bf r5arm4ken8 adcm3nub0 nfrn6sn3jfeb6n d m6jda5 gdif5vh6 gij7fnb2eb0g '))

w-> D, w-> dใน regex


3

Pyth, isaacg

ลักษณะ

รหัสเดิมทำสิ่งต่อไปนี้:

 CG      Convert "abcdefghijklmnopqrstuvwxyz" from base 256 to integer, yielding
         156490583352162063278528710879425690470022892627113539022649722.
   ^3y21 Compute 3^(2 * 21).
%        Calculate the modulus.

ตั้งแต่156490583352162063278528710879425690470022892627113539022649722 - 58227066ให้156490583352162063278528710879425690470022892627113538964422656ซึ่งเท่ากับ2 26 × 3 × 7 × 7477 × 381524422711 ×× 17007550201751761 2288745700077000184147 , ผลลัพธ์ที่ต้องการสามารถรับได้โดยการแทนที่^3y21ด้วยสิ่งที่ประเมินตัวหารของผลิตภัณฑ์นี้และมีขนาดใหญ่กว่า58,227,066 58,227,066

^ในรหัสเดิมแสดงให้เห็นว่าเราอาจจะใช้ในการคำนวณพลังของ2ที่3ที่เราสามารถคำนวณหารเหมาะสมของรูปแบบ3 × 2 n

ทั้งสองกำลังทำให้เข้าใจผิด โซลูชั่นที่มีระยะทาง Levenshtein 3 ( %CG^2 26, %CG^y2 13, %CG^4y13) หรือ 4 (%CG.<3y13 ) จะพบได้อย่างง่ายดาย แต่วิธีการแก้ปัญหาในระยะทางที่ 2 ต้องใช้วิธีการที่แตกต่างกัน

ตัวอักษรตัวพิมพ์เล็ก ( G) มี 26 ตัวอักษรดังนั้นชุดกำลังของมัน (ชุดของลำดับที่เพิ่มขึ้นอย่างเข้มงวดทั้งหมดของตัวอักษรตัวเล็ก) มี2 26องค์ประกอบ โดยการแทนที่y2ด้วยyGเราคำนวณชุดพาวเวอร์นี้

เราสามารถดึงความยาวของชุดโดยแทนที่3ด้วยlซึ่งทำให้เรามีค่า^lyG1เช่น2 26ยกกำลังแรก

รหัส

%CG^lyG1

โปรดทราบว่าสิ่งนี้จะใช้ได้กับคอมพิวเตอร์ที่มีหน่วยความจำเพียงพอ (ประมาณ 6.43 GiB ตามtime) ดังนั้นจึงไม่สามารถใช้งานล่ามออนไลน์ได้

นี่คือวิธีที่คุณสามารถตรวจสอบผลลัพธ์จากบรรทัดคำสั่ง:

$ \time -v pyth -c '%CG^lyG1'
58227066
        Command being timed: "pyth/pyth.py -c %CG^lyG1"
        User time (seconds): 30.73
        System time (seconds): 2.12
        Percent of CPU this job got: 100%
        Elapsed (wall clock) time (h:mm:ss or m:ss): 0:32.85
        Average shared text size (kbytes): 0
        Average unshared data size (kbytes): 0
        Average stack size (kbytes): 0
        Average total size (kbytes): 0
        Maximum resident set size (kbytes): 6742564
        Average resident set size (kbytes): 0
        Major (requiring I/O) page faults: 0
        Minor (reclaiming a frame) page faults: 2269338
        Voluntary context switches: 1
        Involuntary context switches: 58
        Swaps: 0
        File system inputs: 0
        File system outputs: 0
        Socket messages sent: 0
        Socket messages received: 0
        Signals delivered: 0
        Page size (bytes): 4096
        Exit status: 0

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