Hai sự khác biệt - Cảnh sát


60

THÔNG BÁO - Thử thách này hiện đang đóng cửa. Mọi câu trả lời mới sẽ bị bỏ qua và câu trả lời được chấp nhận sẽ không thay đổi

Thử thách

Viết chương trình hợp lệ, khi chỉ hai ký tự trong chương trình được thay đổi, xóa hoặc thêm, sẽ thay đổi hoàn toàn đầu ra.

Đầu ra thay đổi phải có Khoảng cách Levenshtein từ 15 trở lên so với đầu ra ban đầu của bạn.

Đầu ra phải không trống và hữu hạn. Chương trình của bạn do đó phải chấm dứt trong vòng 1 phút.

Đầu ra của bạn phải có tính quyết định, xuất ra điều tương tự mỗi khi bạn chạy chương trình. Nó cũng không được phụ thuộc vào nền tảng.

Bất kỳ hàm băm nào đều không được phép , như được xây dựng trong PRNG. Tương tự, gieo RNG không được phép.

Sau một khoảng thời gian ba ngày, một bài nộp không bị theo dõi sẽ trở nên an toàn. Để khẳng định sự an toàn này, bạn nên chỉnh sửa câu trả lời của mình để hiển thị câu trả lời đúng. (Làm rõ: Cho đến khi bạn tiết lộ câu trả lời, bạn không an toàn và vẫn có thể bị bẻ khóa.)

Định dạng

Câu trả lời của bạn phải ở định dạng sau:

# <Language name>, <Program length>

## Code

<code goes here>

## Original Output

<output goes here>

## Changed output

<changed output goes here>

Cướp

Thử thách của bọn cướp là tìm ra hai nhân vật bạn đã thay đổi. Nếu một tên cướp đã bẻ khóa giải pháp của bạn, họ sẽ để lại nhận xét về câu trả lời của bạn.

Bạn có thể tìm thấy chủ đề của bọn cướp ở đây .

Chiến thắng

Người có giải pháp không bị bẻ khóa ngắn nhất sẽ thắng.

Bảng xếp hạng

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><script>site = 'meta.codegolf';postID = 5686;isAnswer = false;QUESTION_ID = 54464;var safe_list=[];var uncracked_list=[];var n=0;var bycreation=function(x,y){return (x[0][0]<y[0][0])-(x[0][0]>y[0][0]);};var bylength=function(x,y){return (x[0][1]>y[0][1])-(x[0][1]<y[0][1]);};function u(l,o){ jQuery(l[1]).empty(); l[0].sort(o); for(var i=0;i<l[0].length;i++) l[0][i][1].appendTo(l[1]); if(l[0].length==0) jQuery('<tr><td colspan="3" class="message">none yet.</td></tr>').appendTo(l[1]);}function g(p) { jQuery.getJSON('//api.stackexchange.com/2.2/questions/' + QUESTION_ID + '/answers?page=' + p + '&pagesize=100&order=desc&sort=creation&site=codegolf&filter=!.Fjs-H6J36w0DtV5A_ZMzR7bRqt1e', function(s) { s.items.map(function(a) { var he = jQuery('<div/>').html(a.body).children().first(); he.find('strike').text(''); var h = he.text(); if (!/cracked/i.test(h) && (typeof a.comments == 'undefined' || a.comments.filter(function(b) { var c = jQuery('<div/>').html(b.body); return /^cracked/i.test(c.text()) || c.find('a').filter(function() { return /cracked/i.test(jQuery(this).text()) }).length > 0 }).length == 0)) { var m = /^\s*((?:[^,;(\s]|\s+[^-,;(\s])+)\s*(?:[,;(]|\s-).*?([0-9]+)/.exec(h); var e = [[n++, m ? parseInt(m[2]) : null], jQuery('<tr/>').append( jQuery('<td/>').append( jQuery('<a/>').text(m ? m[1] : h).attr('href', a.link)), jQuery('<td class="score"/>').text(m ? m[2] : '?'), jQuery('<td/>').append( jQuery('<a/>').text(a.owner.display_name).attr('href', a.owner.link)) )]; if(/safe/i.test(h)) safe_list.push(e); else uncracked_list.push(e); } }); if (s.length == 100) g(p + 1); else { var s=[[uncracked_list, '#uncracked'], [safe_list, '#safe']]; for(var p=0;p<2;p++) u(s[p],bylength); jQuery('#uncracked_by_length').bind('click',function(){u(s[0],bylength);return false}); jQuery('#uncracked_by_creation').bind('click',function(){u(s[0],bycreation);return false}); } });}g(1);</script><link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"><style>table th,table td { padding: 5px;}th { text-align: left;}.score { text-align: right;}table a { display: block;}.main { float: left; margin-right: 30px;}.main h3,.main div { margin: 5px;}.message { font-style: italic;}</style><div class="main"><h3>Uncracked submissions</h3><table> <tr> <th>Language</th> <th class="score">Length</th> <th>User</th> </tr> <tbody id="uncracked"></tbody></table><div>Sort by: <a href="#" id="uncracked_by_length">length</a> <a href="#" id="uncracked_by_creation">creation</a></div></div><div class="main"><h3>Safe submissions</h3><table> <tr> <th>Language</th> <th class="score">Length</th> <th>User</th> </tr> <tbody id="safe"></tbody></table></div>


@BetaDecay Làm thế nào để bạn xác định hàm băm?
isaacg

1
@xnor Về mặt lý thuyết, nhưng số lượng khả năng tăng lên rất nhiều khi thời lượng chương trình tăng lên và do đó có thể mất nhiều thời gian
Beta Decay

1
@RedPanda Vâng, tôi sẽ nghĩ vậy
Beta Decay

5
@isaacg Tôi quyết định thay đổi ngày an toàn thành ba ngày
Beta Decay

4
Có thể đặt mã bảng xếp hạng trên ít dòng hơn để chiếm ít phòng hơn không?
isaacg

Câu trả lời:


6

CJam, 13 byte (an toàn)

J{m!_)mQ%2b}/

Hãy thử trực tuyến.

Đầu ra ban đầu

000010010101001010001101111000111011100110100100001011101101010100011111110010010010001111111111010000010011001110001010011111000010001001110111100000010110000010000111011011110101110010000011100111100

Đầu ra sửa đổi

11101101100011110001011010000100111011000010011101100000001010100111011010011011010111101000000011101111100000000110001000111110110110101111110100101110000101110100110011110000010101110

Giải pháp

J{m!_)ci%2b}/

Hãy thử trực tuyến.

Làm thế nào nó hoạt động

Điều này tận dụng lợi thế của cách CJam in toàn bộ ngăn xếp sau khi thực hiện chương trình.

Đơn giản chỉ cần bỏ các biểu diễn cơ sở 2 của một vài số nguyên trên ngăn xếp khiến chúng được in mà không có dấu phân cách, do đó, thật khó để tìm ra nơi một trong số chúng bắt đầu và một số khác kết thúc.

Mã ban đầu thực hiện như sau:

J{   e# For each I from 0 to 18, do the following:
  m! e#   Calculate the factorial of I.
  _) e#   Push a copy and add 1.
  mQ e#   Compute the result's integer square root.
  %  e#   Calculate the residue of the factorial divided by the square root.
  2b e#   Push the array of base 2-digits of the resulting integer.
}/   e#

Như @AndreaBiondo ghi chú trong các bình luận, các biểu diễn nhị phân bằng 0! đến 8! có thể được tìm thấy ở đầu của đầu ra (khoảng trắng được thêm vào cho rõ ràng):

1 1 10 110 11000 1111000 1011010000 1001110110000 1001110110000000

Thay đổi dự định là thay thế mQbằng ci, lấy số nguyên modulo 65536, sử dụng số học ký tự 16 bit (chuyển sang ký tự 16 bit không dấu, sau đó quay lại số nguyên).

Tôi hy vọng ý tưởng sử dụng cđể thay thế một toán tử toán học sẽ đủ tối nghĩa.


Ồ Làm thế nào để bạn đi đến với điều này?
The_Basset_Hound

Tôi đã cố gắng để crack này khá lâu. Tôi đã tìm ra một phần của mô hình sửa đổi, nhưng tôi đã thiếu một cái gì đó. Bây giờ tôi đoán là an toàn rồi.
Andrea Biondo

@AndreaBiondo Bây giờ. Cảm ơn vì đã nhắc tôi.
Dennis

@Dennis Tôi đã tìm ra rằng _)mQcần phải thay đổi thành một cái f(x!)như vậy f(x!) > x!cho x <= 8f(x!) < x!x >= 9, x!rõ ràng là đã được điều chỉnh bởi một số còn lại các yếu tố từ 0 đến 8 nguyên vẹn trong đầu ra. Tôi đã không nhận thấy 9!là giai thừa đầu tiên lớn hơn 2^16. Thử thách rất hay nào.
Andrea Biondo

39

Nứt

Shakespeare, 1721 byte

Tôi đã thử một câu trả lời của Shakespeare. Nó không phải là ngắn và tôi đã gặp khó khăn khi thay đổi đầu ra chỉ với 2 ký tự, nhưng tôi nghĩ rằng tôi đã thành công khá tốt. Chúc may mắn nha tất cả mọi người. Là một lưu ý phụ, tôi đã sử dụng "trình biên dịch" có sẵn tại địa chỉ nàynó có thể không hoạt động với một trình biên dịch khác. (nó không hoạt động với trình thông dịch trực tuyến) Đầu ra không chứa bất kỳ ký tự không thể in nào.

Sự thay đổi ẩn.

Helen, một phụ nữ trẻ với một sự kiên nhẫn đáng chú ý.
Helena, một phụ nữ trẻ tương tự của ân sủng đáng chú ý.
Claudio, một người đàn ông đáng chú ý nhiều trong tranh chấp với Claudius.
Claudius, người tâng bốc.
Tổng giám mục Canterbury, người vô dụng.


          Act I: Những lời lăng mạ và nịnh hót của Claudius.

          Cảnh I: Sự xúc phạm của Helen.

[Nhập Claudius và Helen]

Claudius:
 Ngươi là lông như tổng của một người cha kinh khủng ghê tởm 
 con mèo già thối nát bụi bặm và một cuộc chiến lớn bị nguyền rủa bẩn thỉu.
 Ngươi thật ngu ngốc như sản phẩm của ngươi và một mùi mỡ 
 Một nửa con trai yếu đuối khốn khổ bẩn thỉu.

[Exe]

          Cảnh II: Lời khen của Helena.

[Nhập Claudio và Helena]

Claudio:
 Ngươi là nghệ thuật đầy nắng tuyệt vời tự hào lành mạnh niềm vui ngọt ngào.
 Bạn thật tuyệt vời như sản phẩm của bạn và người đẹp
 Anh hùng trẻ đẹp trai hiền lành đáng yêu. Bạn thật tuyệt vời
 như tổng của bạn và sản phẩm của một dấu nhắc vàng công bằng tốt trung thực 
 duyên dáng yêu quý quý tộc và một thiên thần vàng mịn thêu thêu.

[Exe]

          Cảnh III: Sự sỉ nhục của Claudio

[Nhập Claudius và Helen]

Helen:
 Ngươi thật ngu ngốc như tổng của ngươi và một con mèo và ta.
[Thoát Helen]

[Nhập Claudio]

Claudius:
 Ngươi thật ngu ngốc như tổng của ngươi và sản phẩm của 
 sản phẩm của tôi và Helen và Helena

[Exe]

          Cảnh IV: Đếm ngược cuối cùng

[Nhập Tổng Giám mục Canterbury và Claudius]

Claudius:
 Ngài là tổng của bạn và một con mèo.

Tổng giám mục Canterbury:
 Tôi có tốt hơn một con đường tốt không?

Claudius:
 Nếu không, chúng ta hãy trở lại với sự xúc phạm của Claudio.

[Thoát khỏi Tổng Giám mục Canterbury]

[Nhập Claudio]

Claudius:
 Hãy mở lòng!
 Hãy mở lòng!
[Exe]

Đầu ra ban đầu

11324620811132462081

Đầu ra thay đổi

11

9
Thật kỳ diệu. Câu chuyện này đã mang đến những giọt nước mắt cho tôi.
Alex Van Liew

6
@AlexVanLiew Tôi đã mất rất nhiều thời gian để viết. Nó là kiệt tác của tôi!
TrênFire


Câu trả lời rất hay
tự hào

24

J, 76 byte (an toàn)

,:|.,.<,:>><|.,:>,.<|.>,:<<|.>|.,:,.<,.<,:,.<,:>|.<,:>,.|.<,:,.|.<<,:>126$a.

Đầu ra ban đầu

┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐│
││┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐││
│││┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐│││
││││┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐││││
│││││     ┌┬┐├┼┤└┴┘│─ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}│││││
││││└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘││││
│││└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘│││
││└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘││
│└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘│
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Đầu ra thay đổi

┌──────────────────────┐
│┌────────────────────┐│
││┌──────────────────┐││
│││┌────────────────┐│││
││││┌──────────────┐││││
│││││┌───────────┬┐│││││
││││││0 0 0 0 0 0│││││││
│││││└───────────┴┘│││││
││││└──────────────┘││││
│││└────────────────┘│││
││└──────────────────┘││
│└────────────────────┘│
└──────────────────────┘

EDIT: Giải pháp {:được thêm vào (hiển thị giữa ###)

,:|.,.<,:>><|.,:>,.<|.>,:<<|.>|.,:,.<,.<,:,.<,###{:###:>|.<,:>,.|.<,:,.|.<<,:>126$a.

Làm cho việc sử dụng {::Bản đồ đơn nguyên . Hầu hết phần còn lại của mã là rác vô dụng.


Lưu ý rằng tôi chắc chắn có thể mở rộng mã bằng một số lượng ký tự lố bịch để khó tìm (các) vị trí mà hai ký tự cần được thêm / xóa / thay đổi
Fatalize

Tôi nghĩ rằng đã 3 ngày cho cái này, vì vậy nếu bạn đăng câu trả lời, bạn an toàn.
isaacg

@isaacg Đúng, chỉnh sửa câu trả lời
Fatalize 14/08/2015

12

Nứt

Hồng ngọc, 14

x=9;puts x*9*9

Đầu ra ban đầu

729

Đầu ra thay đổi

99999999999999999

4
Điều này trông rất ngây thơ. Tôi đã thử và tôi đã thử, nhưng tôi không biết lấy 17 từ đâu ...
Dennis

1
Tôi nghĩ đó là 18 9, vì vậy tôi sẽ làm một cái gì đó như thế '99'*2. wc, Bạn đã phản bội tôi!
Alex Van Liew

@AlexVanLiew 18 sẽ dễ dàng. Đổ lỗi cho vỏ của bạn để nối thêm một nguồn cấp dữ liệu.
Dennis

@Dennis Bạn sẽ làm thế nào với 18? Tôi không thể tìm ra nó (nhưng tôi cũng không biết Ruby).
Alex Van Liew


12

Nứt

Bash, 15 byte

echo {{{1..9}}}

Đầu ra ban đầu

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

Đầu ra sửa đổi

1 2 3 4 5 6 7 8 9


2
Làm tốt. Điều này kéo dài lâu hơn tôi nghĩ nó sẽ.
Dennis

10

Nứt

Prolog, 10 byte

X is 1/42.

Đầu ra ban đầu

X = 0.023809523809523808.

Đầu ra thay đổi

X = -2.


2
Vì một số lý do, tôi hoàn toàn bỏ qua thực tế rằng điều này cũng có thể được giải quyết như thế này : X is 1//4-2., dễ thấy hơn nhiều so với giải pháp ban đầu của tôi rằng @ sp3000 đã bị bẻ khóa ...
Gây tử vong

10

Nứt

Python 2, 43 byte

print (sum(range(054321)*9876)*87654)/01234

Đầu ra ban đầu

334960491355406

Đầu ra thay đổi

222084148077792

Khoảng cách Levenshtein chính xác là 15. Cả bản gốc và bản thay đổi đều chạy dưới 1 phút trên máy tính của tôi.


1
Tôi đã chỉnh sửa bài đăng của bạn để phản ánh rằng đây là bài gửi dành riêng cho Python 2, do các dấu ngoặc đơn bị thiếu printvà nhân của rangemột số nguyên. Tuy nhiên, tôi dường như nhận được MemoryErrors từ danh sách lớn ...
Sp3000

1
Vì đây không phải là mã golf, bạn có thể giảm tải bộ nhớ bằng cách sử dụng xrangethay vì rangevà tôi tin rằng itertoolscó một trình tạo trình tạo lặp lại xsố lần lặp .
Alex Van Liew

1
@AlexVanLiew Nhưng cách tính điểm chơi gôn theo nghĩa, ngắn nhất không bị bẻ khóa. Tuy nhiên, có nói rằng, có một không gian và cặp parens không cần thiết ... hoặc chúng có cần thiết không? ;)
Sp3000

2
IMO câu trả lời này có vẻ không thú vị nếu điều này chỉ phụ thuộc vào việc thay đổi các con số liên quan (chúng tôi không biết đây có phải là trường hợp không), bởi vì trong trường hợp đó bạn có thể có thể làm ngắn hơn và cách duy nhất nó sẽ bị bẻ khóa chỉ là bằng vũ lực, không khéo léo.
Gây tử vong vào

3
Nứt. Đó là một niềm vui!
isaacg

8

Nứt

BrainFuck, 504 byte

Không ai cần phải phân tích một mã não. Đây là phiên bản sửa đổi của mã trước đó, nhưng bất kỳ thay đổi nào trong mã Brainfuck đều tạo ra sự khác biệt lớn trong đầu ra. Tôi sử dụng Trình thông dịch tại http://esoteric.sange.fi/brainfuck/impl/interp/i.html để kiểm tra mã của tôi. Chúc may mắn !

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

Đầu ra ban đầu

 ___
/   \
|   |
\___/

Đầu ra thay đổi

}}}\}}}|.}}}.|///\\}}|.}.|///\\}}|.}.|///\\}}|.}.|///\\}}|.}.|///\\}}|.}.|///\\}}|.}.|///\\}}|.}.|///\\}}|.}.|///\\}}|.}.|///\\}}|.}.|///\

Lưu ý: Đầu ra thay đổi chứa một số ký tự STX (ASCII 2) và EOT (ASCII 4)

Đây là phiên bản có mã ASCII trong ngoặc đơn thay vì các ký tự không thể in được:

(2)}}}(2)\}}}|(2).}}}.(2)|///\\(4)}|(2).(4)}(4).(2)|///\\(4)}}|(2).(4)}(4).(2)///\\(4)}}|(2).(4)}(4).(2)|///\\(4)}}(2).(4)}(4).(2)|///\\(4)}}|(2).(4)}(4).(2)|/(4)/\\(4)}}|(2).(4)}(4).(2)|///\\(4)}}|(2).(4)}(4).(2)|///\\(4)}}|(2).(4)}(4).(2)|///\\(4)}}|(2).(4)}(4).(2)|///\\(4)}}|(2).(4)}(4).(2)|///\

3
Bạn thật độc ác. Nhưng tôi sẽ tìm thấy nó!
RedPanda

@RedPanda Mã của tôi không có cấu trúc. Ít nhất đó không phải là ngẫu nhiên! Chúc may mắn!
TrênFire

Có bất kỳ dấu vết trong đầu ra?
tự hào

@proudhaskeller Xin lỗi về điều đó, tôi sẽ chỉnh sửa bài đăng, có một loạt các ký tự STX (ASCII 2) và EOT (ASCII 4)
TrênFire


8

nứt

Ngôn ngữ Wolfram (Mathicala hoặc WolframAlpha), 3 byte

8.!

Đầu ra ban đầu

40320.

Đầu ra thay đổi

2.67182 - 0.891969 I

Đối với những người dùng thử trên WolframAlpha, kết quả hiển thị là

Đồ họa toán học

Tôi đã xóa câu trả lời trước đó của mình vì nó chỉ hoạt động trên Mathematica chứ không phải trong WolframAlpha . Điều đó đặt những tên cướp đằng sau một bức tường thành (thay vì những thanh xứng đáng), điều đó không công bằng.



@ableigh Đẹp! :)
Tiến sĩ belisarius

1
Câu trả lời của người khác là gì? Tôi rất tò mò.
Brain Guider

7

Nứt

MATLAB / OCTAVE, 7 byte

Mã số:

cos(pi)

Đầu ra ban đầu:

ans =

     -1

Đầu ra thay đổi:

ans =

   1.5708 - 0.8814i

Điều này cho khoảng cách Levenshtein chính xác là 15.



3
Điểm nổi bật lớn đối với tôi là nhận thấy rằng phần thực của sản lượng thay đổi của bạn là pi / 2. Từ đó, thật khó để đoán được giải pháp.
David Zhang

7

Nứt

CJam, 8 ký tự

"~f":i:#

Đầu ra ban đầu

17290024234092933295664461412112060373713158853249678427974319674060504032816100667656743434803884485234668769970047274563123327020396104330878852891146011372048615474145637592955298601510765168228550988848615653376

Đầu ra thay đổi

Đầu ra sau khi sửa đổi là ở đây . Cả hai mất dưới một phút trên máy tính xách tay 2GHz của tôi.

Giải trình

Mọi người có vẻ ngạc nhiên về cách làm việc này. Mã này hoạt động như thế này:

"~f"       Push a string
    :i     Convert to a list of bytes [126 102]
      :#   Fold with # (power)

Điều này tính toán 126 ^ 102. Giải pháp là:

"}\t~f"
       :i     Convert to a list of bytes [125 9 126 102]
         :#   Fold with # (power)

Điều này tính toán ((125 ^ 9) ^ 126) ^ 102, dài hàng trăm ngàn chữ số.


6
Đây là hình sự.
Alex Van Liew

Cái gì ... tôi thực sự muốn biết cái này hoạt động như thế nào! ;)
Beta Decay


@BetaDecay Tôi có thể giải thích cách hoạt động của bản gốc nhưng không phải phiên bản của Dennis. Tôi tự hỏi làm thế nào Mauris có nghĩa là nó sẽ được giải quyết ...
Alex Van Liew

Chuối thánh! WTF!
não

7

Nứt

Bình thường, 8 byte

Mã số:

%CG^3y21

Đầu ra ban đầu:

51230235128920219893

Đầu ra thay đổi:

58227066

1
Sản lượng thay đổi bằng CG mod (2^21 * 28). Tôi không biết Pyth, vì vậy tôi không thể thấy làm thế nào để thay đổi (3 ^ (2 * 21))điều đó ...
Lynn

1
Ngoài ra, CGbằng sum(256**n * (122-n) for n in range(26)).
Lynn

1
Đầu ra thay đổi cũng bằng CG mod (2^21 * 28 * 2*n), ở đâu 1 <= n <= 4, cũng như cho n=6n=12. Ngoài ra, CGchỉ là bảng chữ cái chữ thường được hiểu là một số cơ sở 256. Tôi tự hỏi nếu có một modulo khác với cơ sở 3?
Alex Van Liew

%CG^2 26hoặc %CG^4y13, nhưng cả hai đều có khoảng cách 3 ...
Jakube


6

Nứt

Python 2, 58 byte

R=range(01234);print sum(m<<min(m,n)for m in R for n in R)

Đầu ra ban đầu

2444542772018013876036977350299418162656593659528311114655474359757543862791958572561591492595632222632192542272836836649846934427359810217936317967768095940470375690509652583392001888886352103127515963142

Đầu ra thay đổi

4669

Đó là quy tắc 15 khoảng cách chắc chắn làm cho mọi thứ khó khăn. Tôi hy vọng điều này diễn ra tốt đẹp.


Thực tế là 4669 = 667 * 7 và yếu tố cuối cùng của phạm vi (01.234) là 667 là đáng ngờ đối với tôi ...
Fatalize

Nếu bạn in ra [m<<min(m,n)for m in R for n in R]trong trình thông dịch, bạn sẽ nhận được một số mẫu esque nhiễu trắng thực sự ma quái.
Alex Van Liew


6

Nứt

Python 2, 50 byte

Mã gốc:

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

Đầu ra gốc:

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'

Đầu ra sửa đổi:

'~~~~~~~~~~~~~~~~~~~'

Không quá ngắn và có thể không quá khó, tôi thực sự không biết. Tôi sẽ cố gắng đưa ra một cái gì đó tốt hơn sớm.


Có phải là 40 dấu ngã và sau đó là 19 dấu ngã? Và tôi cho rằng điều này được chạy trong trình thông dịch?
Alex Van Liew

Nứt , tôi nghĩ
Alex Văn Liew

2
Một bản tóm tắt về những gì tôi tìm thấy cho đến nay: không có sự kết hợp nào của việc thay thế xbằng y, ybằng xhoặc thay đổi chữ số trong rangekết quả trong 19 dấu ngã. Tôi cũng đã thử nghiệm chèn -trước xhoặc y, hoặc thay đổi %thành một trong số đó + - / *, nhưng không có kết quả. Bây giờ tôi khá chắc chắn rằng 1 hoặc 2 chèn là bắt buộc.
mbomb007

1
Được rồi, liên kết đầu tiên của tôi bây giờ nứt nó một cách chính xác.
Alex Van Liew

2
Tôi đã thêm một lời giải thích nhỏ, tôi thực sự nghĩ rằng điều này thực sự thông minh. Tôi không biết rằng tôi thậm chí đã từng nhìn thấy một sự hiểu biết được thiết lập và việc dựa vào Python bị rò rỉ yvào phạm vi kèm theo là một liên lạc tốt đẹp.
Alex Van Liew

6

Nứt

PHP, 164 byte

$S_U_M_M_E_R = 1;
$A_U_T_U_M_N = 2;
$T_I_M_E = 1;

if ($T_I_M_E == $S_U_M_M_E_R) {
    $A_C_=$T_I_=$O_N= 'SWIM' ? 'TAN' : 'DRINK';
}

print $T_I_M_E * $A_U_T_U_M_N;

Đầu ra ban đầu

2

Đầu ra thay đổi

-1.1306063769532


Làm tốt! Tôi đã không nghĩ rằng nó sẽ dễ dàng bị bẻ khóa.
Razvan

6

GolfScript, 15 byte (an toàn)

10,{1+3?}%{*}*]

Thay đổi mã

107,{1+3?}%{^}*]

Đầu ra ban đầu

47784725839872000000

Đầu ra thay đổi

557154

Giải thích:

10,             # numbers from 0 to 10
   {1+3?}%      # add one and raise to the cube. (%=for each)
          {*}*] # take the product and place it in a list(useless)`

Thay đổi mã

107,             # numbers from 0 to 107
    {1+3?}%      # add one and raise to the cube. (%=for each)
           {^}*] # xor them and place it in a list(useless)

Tôi tin rằng điều này hiện an toàn, vì vậy nếu bạn muốn chỉnh sửa bài đăng của mình
Beta Decay

@BetaDecay tôi đây!
Baconaro

5

Nứt

APL , 7 byte

-/3⍴157

Đầu ra ban đầu

157

Đầu ra thay đổi

0.11479360684269167J0.37526348448410907

Đó có phải là Jbằng chứng đầu ra rằng đó là một số phức?
mbomb007

@ mbomb007 Có, aJbđề cập đến số phức a + bi.
Dennis


4

Nứt

C, 53 byte

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

Đầu ra ban đầu

Expected Output

Đầu ra thay đổi

?

Có lẽ quá dễ, nhưng ai biết được. (Lưu ý: nó phụ thuộc vào hệ thống về mặt kỹ thuật nhưng loại hệ thống mà nó bị lỗi cũng sẽ thất bại trong tất cả các lần gửi khác ở đây, vì vậy tôi cho rằng đó là một điểm cần thiết).

Nứt

Biên tập

Tôi đã phạm một sai lầm. Mã mới an toàn hơn cho cuộc tấn công rõ ràng:

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

đầu ra giống nhau. Kích thước mới 65 byte. Hy vọng khó hơn ... mặc dù vẫn có thể quá dễ dàng.




2
(lưu ý bên lề - điều này có lẽ nên có hai câu trả lời)
Sp3000

@ Sp3000 Bạn có thể đúng, mặc dù mục tiêu của bản gốc là có cùng một giải pháp, tôi chỉ tập trung quá nhiều vào vấn đề số lẻ * (trong đó bạn có thể biến phần giữa thành một /) và không xem xét dễ dàng hơn * 0 thay đổi.
LambdaBeta

4

Cracked bởi issacg

MATLAB, 20 byte

format long
sin(i^pi)

Đầu ra ban đầu

0.331393418243797 - 1.109981778186163i

Đầu ra thay đổi

0.220584040749698 - 0.975367972083631i

Tôi đã thử một loạt các ý tưởng trong trình thông dịch Octave trực tuyến. Vẫn không có gì. Tôi cố gắng điều như sử dụng sinh, asin, tan, pi^i, vv ...
mbomb007

@ mbomb007 - Tôi cũng thua lỗ ở đây ... và tôi cao thứ 5 trên StackOverflow trong MATLAB nói chung!
rayryeng - Phục hồi Monica



4

CJam, 28 byte (an toàn)

"jK=\~"5*)ib257b~{G$5$+}*]Jb

Hãy thử trực tuyến .

Đầu ra ban đầu

7705397905065379035618588652533563996660018265606606763127193120855297133322151462150247488267491212817218321670720380456985476811737021068519164822984561148339610474891720342171053455881107227302663880445203851079295537592154028123394687360216561235621729967011148112746984677807932995700334185726563970223018774

Đầu ra sửa đổi

16650180159137697345989048346412185774444335111603430666402604460993564226370500963166158223117360250140073061887053326627468495236957122711656527124216908303912850181595147494475577084810653496778801228980874902968634143062

Giải pháp

"jK=\~"5*Wcib257b~{G$5$+}*]Jb

Hãy thử trực tuyến.

Làm thế nào nó hoạt động

Tôi đã hơi quá nhiệt tình với cái này ...

Mã ban đầu thực hiện như sau:

"jK=\~"5* e# Push "jK=\~jK=\~jK=\~jK=\~jK=\~".
)i        e# Pop the last character and cast it to integer.
b257b     e# Convert the remainder of the string from that base to base 257.
~         e# Dump all resulting base-257 digits on the stack:
          e# 137 72 124 88 81 145 85 32 28 251 118 230 53 13 245 147 256 116 187 22 224
{         e# Do the following 224 times:
  G$5$+   e#   Add copies of the 5th and 17th topmost integers on the stack
          e#   (recurrence of a lagged Fibonacci sequence).
}*        e#
]         e# Wrap the entire stack in an array.
Jb        e# Convert from base 19 to integer.
          e# The resulting integer is printed implicitly.

Thay đổi dự định sẽ thay thế (ibằng Wci.

Điều này làm cho chuỗi lặp lại không bị chạm và đẩy 65535 (bằng cách chuyển sang ký tự 16 bit không dấu, sau đó trở về số nguyên), để các phần tử đầu tiên của chuỗi Fibonacci bị trễ trở thành

87 225 162 210 73 196 142 219 175 61 40 147 0 93 75 55 103 116 237 188 108 122 176 133 135 240 251 155 224 82 181 75 23 87 139 49 148 169 84 109 110 166 52 103 83 185 78 73

và vòng lặp được lặp lại 126 lần.


Điều này là an toàn, phải không?
Beta Decay

@BetaDecay Tôi đã sử dụng khá nhiều mẹo tương tự trong cả hai câu trả lời của CJam, vì vậy tôi đã phải chờ để đăng cả hai giải pháp cùng một lúc. Bây giờ là an toàn.
Dennis

Khi tôi tìm ra cái này là gì, tôi nhận ra có rất nhiều thứ có thể được điều chỉnh mà tôi thậm chí không thèm cố gắng vũ phu cái này ... công việc tốt :)
Sp3000

4

Javascript, 47 (an toàn)

for(var i=64460,x=773;i>=1324;)x=i--/x;alert(x)

Đầu ra ban đầu

11.948938595656971

Đầu ra thay đổi

3.679331284911481

Khoảng cách chính xác là 15.

Đã thử nghiệm trong Chrome và IE.

Giải pháp

for(var i=64460,x=773;i>>=1<324;)x=i--/x;alert(x)

Điều này sử dụng toán tử gán chuyển bit i>>=1để làm cho vòng lặp không tuyến tính. Ngoài ra, điều này có một tài sản thú vị rằng ai đó đang cố gắng tạo ra một giải pháp sẽ chạy vào một số biến thể chạy vô tận.


3

Nứt

Tưởng tượng , 26

Float.makeBits(1123581321)

Đầu ra ban đầu

5.55122931E-315

Đầu ra thay đổi

124.24518585205078

Bảo mật thông qua che khuất, nếu không ai biết ngôn ngữ, không ai có thể bẻ khóa nó. Levenshtein Khoảng cách 15. Chạy nó trong fansh.


Tôi đoán tôi cần phải học Fantom ...
InsideFire


3

Nứt

CJam, 6 ký tự

25mse7

Đầu ra ban đầu

-1323517.5009777304

Đầu ra thay đổi

72004899337.38588

Điều này có thể quá dễ dàng. : P


Nứt? Đầu ra hơi khác trong trình duyệt của tôi (và hoàn toàn khác với trình thông dịch Java).
Dennis

@Dennis Không hoàn toàn chắc chắn tại sao, nhưng những thay đổi là chính xác.
The_Basset_Hound

3

Nứt

Java, 149 ký tự

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

Đầu ra ban đầu

174542852132661

Đầu ra sửa đổi

106906909674100

Dấu:

Random.java



3

Brainfuck, 100 byte

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

Đầu ra ban đầu

ABCDEFGHIJKLMNOPQRSTUVWXYZ

Đầu ra thay đổi

[
  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ

Lưu ý: Có thể dễ bị nứt. Nhưng sau đó, không có gì là dễ dàng trong Brainfuck.


2
Có bất kỳ ký tự không thể in trong đầu ra?
Sp3000

Có vẻ như một vài người đã ăn nhưng vẫn còn rất nhiều
dấu vết không thể xóa

@ Sp3000 Er- không, không nên có bất kỳ dấu vết nào. Bạn đang sử dụng thông dịch viên nào?
Kurousagi

Phương pháp này không bằng tôi, hoặc tiếp tục thử.
Kurousagi

5
Nếu bạn có thể đăng mã ASCII thực tế của đầu ra sẽ rất tuyệt vời.
Alex Van Liew

3

nứt

hiện đại Perl 5, 70

@array = (qw smiles) x 11;
s/.*// foreach @array;
print "@array\n";

Đầu ra ban đầu

Một dòng mới.

Đầu ra thay đổi

 mile mile mile mile mile mile mile mile mile mile

Đầu ra bắt đầu bằng một khoảng trắng và kết thúc bằng một dòng mới.


@AlexVanLiew Lưu ý rằng có một khoảng
Dennis

@Dennis ơi không! Tôi biết nó không thể đơn giản như vậy.
Alex Van Liew

Tôi không chắc, nhưng tôi nghĩ rằng tôi có nó ...
Dom Hastings

@DomHastings Yep! Giải quyết tốt. Như ai đó đã nhận xét về giải pháp của bạn, nhân vật bổ sung có thể là một không gian thêm ở bất cứ đâu. Tôi đã nói "hiện đại" Perl 5 vì chỉ eacháp dụng cho một mảng kể từ một số phiên bản.
msh210

2
Nếu anh ta không bẻ khóa nó, bạn có nói "đã bỏ lỡ nó một dặm" ​​không? : D
mbomb007


3

perl, 12 byte

nứt

print sin 97

Đầu ra ban đầu

0.379607739027522

Kết quả mong muốn

-0.64618863474386

1
Tôi có thể khẳng định đó là gần như chắc chắn không print sin xx, print sin xx97hoặc print sin 97xxnơi xxlà hai số bất kỳ.
Alex Van Liew


@DomHastings thực sự - cũng được thực hiện. Không quan tâm làm thế nào bạn làm điều đó?
abligh

3
Sau khi đọc @ bình luận AlexVanLiew, tôi đã kiểm tra con số tương tự 9.?7, 9.7?, vv, nhưng nhận ra nó phải là một nhà điều hành. Đã thử tất cả những gì tôi có thể nghĩ trong đoạn trích như perl -e 'print map{sin((+"9${_}")x7).$/}1..9'cuối cùng có sự kết hợp đúng!
Dom Hastings

@DomHastings muộn +1 cho vết nứt của bạn rồi.
abligh

3

Nứt

SWI-Prolog, 54 byte

assert(d(E,F):-(print(E),print(F))). d(123456,123456).

Đầu ra ban đầu

true.

123456123456
true.

Đầu ra thay đổi

true.

false.

Tôi đã cố gắng để một thông dịch viên SWI-Prolog làm việc vào ngày khác nhưng không thể, vì vậy tôi sẽ bị đâm trong bóng tối; Nếu bạn loại bỏ EFtrong các printbáo cáo bạn có nhận được những gì bạn muốn?
Alex Van Liew

@AlexVanLiew Tôi đang gặp lỗi cú pháp từ đó
Sp3000

@AlexVanLiew Không chính xác
Gây tử vong vào

À Đáng để thử.
Alex Van Liew

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.