Cấm Xin chào, Thế giới! Một (chủ đề của Cops)


16

Đây là chủ đề của cảnh sát. Chủ đề của bọn cướp ở đây .

Thách thức của bạn là viết một chương trình hoặc chức năng, với một đầu vào nhất định, in chuỗi chính xác Hello, World!và một dòng mới. Viết hoa, khoảng cách và dấu chấm câu phải chính xác.

Đầu vào có thể được thực hiện thông qua đầu vào tiêu chuẩn, một tệp hoặc các đối số dòng lệnh / hàm. Đầu ra có thể được cung cấp thông qua giá trị trả về, ghi vào tệp hoặc đầu ra tiêu chuẩn.

Chương trình của bạn phải in Hello, World!ít nhất một đầu vào. Khi chương trình của bạn được cung cấp đầu vào sai (tức là đầu vào không làm cho nó được in Hello, World!), nó có thể làm bất cứ điều gì bạn thích - sự cố, in vô nghĩa ngẫu nhiên, gọi Chuck Norris, v.v.

Bạn không được sử dụng thuật toán băm hoặc bất kỳ phương pháp tương tự nào che khuất đầu vào cần thiết.

Đệ trình được ưu tiên để có thể chạy và bẻ khóa trên TIO . Đệ trình không thể chạy hoặc bẻ khóa trên TIO được cho phép, nhưng vui lòng bao gồm các hướng dẫn để tải xuống / chạy chúng.

Sau một tuần, thử thách này sẽ kết thúc với các bài nộp của cảnh sát trong tương lai. Người chiến thắng là mã ngắn nhất không bị bẻ khóa sau một tuần đăng nó ("nó" là mã, không phải là thử thách này). Người chiến thắng sẽ được chấp nhận sau hai tuần.

Sau một tuần trôi qua kể từ khi đăng, vui lòng đánh dấu câu trả lời của bạn là an toàn và hiển thị đầu vào (trong a > ! spoiler quote). Nếu một tên cướp phá vỡ trình của bạn (trước khi tuần kết thúc), vui lòng đánh dấu nó là bị bẻ khóa và hiển thị đầu vào tạm dừng (trong a > ! spoiler quote).

Tìm kiếm đệ trình không bị theo dõi?

fetch("https://api.stackexchange.com/2.2/questions/137742/answers?order=desc&sort=activity&site=codegolf&filter=!.Fjs-H6J36vlFcdkRGfButLhYEngU&key=kAc8QIHB*IqJDUFcjEF1KA((&pagesize=100").then(x=>x.json()).then(data=>{var res = data.items.filter(i=>!i.body_markdown.toLowerCase().includes("cracked")).map(x=>{const matched = /^ ?##? ?(?:(?:(?:\[|<a href ?= ?".*?">)([^\]]+)(?:\]|<\/a>)(?:[\(\[][a-z0-9/:\.]+[\]\)])?)|([^, ]+)).*[^\d](\d+) ?\[?(?:(?:byte|block|codel)s?)(?:\](?:\(.+\))?)? ?(?:\(?(?!no[nt][ -]competing)\)?)?/gim.exec(x.body_markdown);if(!matched){return;}return {link: x.link, lang: matched[1] || matched[2], owner: x.owner}}).filter(Boolean).forEach(ans=>{var tr = document.createElement("tr");var add = (lang, link)=>{var td = document.createElement("td");var a = document.createElement("a");a.innerHTML = lang;a.href = link;td.appendChild(a);tr.appendChild(td);};add(ans.lang, ans.link);add(ans.owner.display_name, ans.owner.link);document.querySelector("tbody").appendChild(tr);});});
<html><body><h1>Uncracked Submissions</h1><table><thead><tr><th>Language</th><th>Author</th></tr></thead><tbody></tbody></table></body></html>


Rất giống nhau không phải là một bản dupe mặc dù.
Thuật sĩ lúa mì

13
Như tôi đã nói trong hộp cát, tôi cảm thấy rằng đây là một bản sao của câu hỏi tạm dừng vì bất kỳ câu trả lời nào cũng có thể được đăng ở đây nhưng với mã cho và vòng lặp vô hạn được thay thế bằng mã để in hello world. Tôi sẽ không bỏ phiếu vì tôi ham, nhưng tôi tin chắc đây là một bản dupe.
FryAmTheEggman

5
Rõ ràng sha3rơi vào loại đó, nhưng nếu không thì bạn vẽ đường này ở đâu? Ý tôi mod 1e3là đó cũng là một hàm băm, và tôi thậm chí còn đi xa hơn và cho rằng nhiều bài nộp sẽ là hàm băm, vì về cơ bản, thách thức này là yêu cầu như vậy.
flawr

1
Dựa trên các câu trả lời tôi đã thấy trong ngày qua, không có gì xuất hiện thuyết phục tôi đây không phải là một bản sao. Bây giờ tôi sẽ đóng thử thách cảnh sát và nếu cộng đồng không đồng ý thì có thể mở lại và nếu cộng đồng đồng ý họ cũng có thể đóng chủ đề cướp.
FryAmTheEggman

1
@Dopapp điều này đã được thảo luận, ở đây (một số bình luận đã bị xóa) và trong trò chuyện. Câu trả lời không thể được sao chép, cũng không dễ dàng chuyển, từ thách thức này sang thử thách này, vì vậy chúng không phải là bản sao.
MD XF

Câu trả lời:


3

Python 3, 191 186 byte (AN TOÀN!)

Giống như câu trả lời trước đây của tôi, nhưng không có tuyên bố noob eval, để ai đó thực sự phải giải quyết vấn đề tôi tạo ra.

import sys
from numpy import *
e=enumerate
c='Hello, World!'
print(''.join([c[int(sum([c*cos(n*i)for i,c in e(fromiter(sys.argv[1:],float))])+.01)]for n in[2*i+ord(n)for i,n in e(c)]]))

Bây giờ thực hiện nó với các tham số chính xác, chẳng hạn như python3 hw.py 1 2 3


Chỉnh sửa : phiên bản trước bị thiếu dấu phẩy trong "Xin chào, Thế giới!", Và tôi cũng nhận ra rằng nó có một bảng liệt kê không cần thiết, hiện đã biến mất.


Chỉnh sửa 2 : Để giải trí, đây là phiên bản Pyth gần như giống hệt nhau (47 byte) của cùng một mã:

KEJ"Hello, World!"jkm@J.Rs.e*b.t*dk1K0.e+*2kCbJ

Đầu vào được lấy từ stdinvà ở dạng danh sách các đối số, chẳng hạn như[1,2,3]

Tôi thấy không có điểm nào trong việc đăng một câu trả lời riêng vì nếu bạn bẻ khóa phiên bản Pthyon3, thì bạn cũng bẻ khóa phiên bản Pyth, ngay cả khi không biết Pyth.


Câu trả lời:

python3 hw phút

Giải thích về mã:

''.join()tạo chuỗi hello world từ một mảng các ký tự từ chuỗi "Hello, World!". Câu đố được giải quyết khi những chỉ dẫn đó [0,1,2,3,4,5,6,7,8,9,10,11,12]. Mỗi chỉ số được tính toán từ một đầu vào và các hằng số được đưa ra trên dòng lệnh. Các đầu vào là một chuỗi mã hóa cứng : [2*i+ord(c) for i,c in enumerate('Hello, World!')]. Chức năng liên quan đến đầu vào, hằng số và đầu ra (chỉ định) là : sum([c*cos(x*i) for i,c in enumerate(CONSTANTS)]). Đây là một vấn đề mô hình hóa cổ điển, nơi bạn đang cố gắng khớp dữ liệu với mô hình của mình.

Đi đến giải pháp, trong python:

from scipy import optimize
x = [2*i+ord(c) for i,c in eumerate('Hello, World!')]
y = [0,1,2,3,4,5,6,7,8,9,10,11,12].
# make your function: 13 terms means we can achieve 13 exact outputs
def f(x,a,b,c,d,e,f,g,h,i,j,k,l,m):
    return sum([c*cos(x*i) for i,c in enumerate([a,b,c,d,e,f,g,h,i,j,k,l,m])])
# curve fit
ans,_ = optimize.curve_fit(f,x,y)
# check answer
[round(f(a,*ans),0) for a in x] # should be 0-12


2
Chỉ trong trường hợp bạn không biết, literal_eval()trong astmô-đun có thể được sử dụng để đánh giá các biểu thức một cách an toàn, do đó print(vấn đề tiêm mã sẽ không hoạt động. Có lẽ nó không liên quan ở đây, nhưng tôi chỉ nghĩ là tôi đã đề cập đến nó.
Trái cây Esolanging

2
bạn có chắc cái này có thể in Hello, World!không? Chưa bị bẻ khóa, nhưng có vẻ như nó thiếu dấu phẩy (chỉ có 12 lần lặp trong vòng lặp tham gia)
Uriel

Ồ, bạn nói đúng, nó thiếu một dấu phẩy. Tôi sẽ sửa nó ngay bây giờ.
rexroni

@ Challenger5 cảm ơn bạn, tôi không biết điều đó.
rexroni

12

TeX - 38 byte Cracked (ish)

Điều này đáng để thử, bởi vì tôi không thể tưởng tượng bất kỳ ai trên một trang web về việc viết các đoạn mã ngắn sẽ biết TeX:

\read16to\x\message{Hello, World!}\bye

Để chạy nó, bạn nên nắm giữ một số dạng TeX cho phép chế độ tương tác. Lưu tệp này vào một tệp và chạy TeX (hoặc pdfTeX, XeTeX, v.v.) trên đó.

Chỉnh sửa: Tôi hiện đang xem xét bán này nứt. Giải pháp dự định sử dụng đầu vào từ stdin, nhưng đầu vào TeXnally từ cách chương trình được gọi là hợp lệ. Tôi sẽ thêm các câu trả lời TeX lệch lạc hơn nếu ai đó có được phương pháp dự định.

Đây là giải pháp dự định:

^ C Ia - Khóa đầu tiên là control-c, gây ra lỗi. Sau đó, bạn nhấn I (viết hoa i) để nhập lệnh. Sau đó, bạn gõ một (hoặc bất cứ điều gì khác để được sắp chữ). Thông thường, thông báo được in ra thiết bị xuất chuẩn sẽ được theo sau bởi khoảng trắng và sau đó là ')'. Khi bạn gõ một cái gì đó, nó làm cho thông tin phông chữ được xuất ra sau thông báo. Điều đó có nghĩa là một dòng mới được đưa vào và ')' sẽ được di chuyển sau.

Điều đó có thể được đánh giá thấp, nhưng vẫn nên nằm trong các quy tắc của trò chơi.


Chào mừng đến với PPCG. Tốt đầu tiên trả lời
Евгений Новиков

Nó không đủ để sử dụng tex \ Hello, world!\bye(23 byte)?
Werner

@Werner sẽ cho phép người dùng nhập liệu?
Một người đàn ông vàng

Đây thực sự có nghĩa là bị nứt? : o
Felix Palmen

3
texnicallyÔi trời ơi.
MD XF

7

> <> , 538 byte, bị bẻ khóa bởi rexroni

v
\">/v>v\v</>"
/!?lp%*2di%*2di
a
v   "        "       "
   "l"      "o"  /  "e"
v   "        "     " "
      "   /       "l"/
v    "!"           "
 //   " " "      \
v     \"d"o"   " "    "
      " " "   "o"r"  "!"
v"   "H"       " "    "
"l"   ""
""    "r" "         "
    \  " "l"       "d"  "
v   "     "      "  "  "H"
   "e"         /","     "
v " " "     "  " "
 "e" "W"  /"d""l"
v " " "     "  "      "
   "H"               "!"
v   "                 "
                        v
>>"Hello world?"       >o<
                        ^

Hãy thử trực tuyến , hoặc bạn có thể muốn sử dụng sân chơi cá .

Ba dòng đầu tiên đọc trong một chuỗi từ STDIN và sử dụng mã số mod 26 của nó làm tọa độ để đặt các ký tự " >/v>v\v</>" vào mê cung bên dưới. Giải pháp dự định là một chuỗi gồm 20 ký tự chỉ được tạo từ các chữ cái A Z (mặc dù bạn được phép sử dụng bất cứ thứ gì bạn muốn, tất nhiên).

Giải pháp:

Đầu vào dự định là OCEANICWHITETIPSHARK(đó là một con cá!). Con đường xuyên qua mê cung trông như:

v
\">/v>v\v</>"
/!?lp%*2di%*2di
a                |  |
v   "        "   |  |"
| v"l"______"o"__/  "e"
v | "        "     " "
| |   "   /       "l"/
v |  "!"           "|
|//   " " "    v_\  |
v|    \"d"o"   " "  | "
||    " " "   "o"r" |"!"
v"   "H"       " "  | "
"l"___""_______ _/__/_____
""    "r" "    | |  "
|>__\  " "l"   | | "d"  "
v   "     "    | "  "  "H"
|  "e"v________/"," |   "
v " " "     "  " "  |
|"e"|"W"  /"d""l"|  |
v " " "     "  " |  | "
<  "H">__________ __\"!"__
v   "            |  | "
    >____________ __ ___v
>>"Hello world?" |  |  >o<
                 |  |   ^


Nứt! Mất tôi mãi mãi.
rexroni

3
Này, tôi nghi ngờ câu trả lời có thể là một từ, nhưng tôi đã không thực hiện bất kỳ nỗ lực nào để giải mã nó. Tôi đứng ấn tượng hơn nữa.
rexroni

6

Octave, 59 byte, Cracked

Điều này hoạt động trong Octave 4.2.0. Tôi không thể đảm bảo khả năng tương thích với tất cả các phiên bản.

i=input('');printf('%c',i*~all(isequal(i,'Hello, World!')))

Lưu ý: Điều này không in bất kỳ dấu cách hoặc dòng mới. Đây là những gì nó trông giống như:

enter image description here

Về cơ bản, nó nói: "In chuỗi đầu vào, trừ khi đầu vào là 'Xin chào, Thế giới!', Trong trường hợp đó, nó sẽ không in gì (hoặc ký tự null).


Tôi không chắc %ccó nghĩa là chuỗi hay char ... có lẽ bạn đang che giấu điều gì đó? Ngoài ra, điều này cũng *~khiến tôi hơi nghi ngờ ...
Erik the Outgolfer

Tôi không chắc chắn, nhưng bị nứt ?
ბიმო

@BruceForte in một byte null ở cuối đầu ra, tôi không chắc đó là liên kết
MD XF

1
Tôi chắc chắn rằng các giải pháp dự định là này loại điều.
Jonathan Allan

1
@BruceForte, không. không có \n. Tôi nghĩ rằng văn bản câu hỏi cho biết " dòng mới tùy chọn ".
Stewie Griffin


5

Cracked , nhưng nếu đây không phải là giải pháp dự định, nó cảm thấy hơi giống như gian lận.
Dennis

@Dennis Giải pháp dự định là ['Hello,' 1 'World!']. Tại sao lại gian lận? :-( Tài liệu / trợ giúp cho Dbiết Hầu hết các ký tự đầu vào dưới 32 được thay thế bằng dấu cách
Luis Mendo

Tôi có nghĩa là gian lận về phần mình, biến một dòng mới của LF thành một dòng mới CR + LF.
Dennis

@Dennis Ah, tôi hiểu rồi. Chà, tôi nghĩ nó cũng hoàn toàn hợp lệ
Luis Mendo

5

Phát nổ , 23 byte, Cracked

@_?&4_-j>5&f^~c>&6\|4>7

Sắp tới, đây mới chỉ là khởi đầu> :)

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

Giải thích thám hiểm

Có bốn nhà thám hiểm trong chương trình này. Tôi không hoàn toàn chắc chắn rằng Wait ( >) đang hoạt động chính xác.

@_?

Đọc đầu vào của người dùng ( ?), viết và mở rộng băng ( @) xuống ( _).

&4_-j>5

Đối với 4 tick ( 4), sửa đổi băng ( &) xuống dưới ( _), nhảy 5 ( 5), bằng cách trừ ( -) 19 ( j).

&f^~c>

Đối với 16 tick ( f), sửa đổi băng ( &) trở lên ( ^) trong wave ( ~), xen kẽ không ảnh hưởng, +13, không ảnh hưởng và -13 ( c).

&6\|4>7

Đối với 6 tick ( 6), sửa đổi băng ( &) theo cả hai hướng ( |), giảm ( \) xuống 4 ( 4) mỗi lần và nhảy 7 ( 7). Giảm có nghĩa là nó trừ 4 lần đầu tiên, 8 lần thứ hai, v.v.


3
Bị bẻ khóa nhưng hãy thoải mái đưa ra lời giải thích về các hoạt động trên :)
Jonathan Allan

@Jonathan ALLan giải thích thêm, xin lỗi tôi mất quá nhiều thời gian
Stephen

5

JavaScript (ES6), 173 169 163 150 151 148 143 byte (Đã bẻ khóa )

Chúng ta hãy có một cái gì đó hoàn toàn khác ... và hoàn toàn xấu xa .

const e=eval,p=''.split,c=''.slice,v=[].every,f=s=>(t=c.call(s),typeof s=='string'&&t.length<81&&v.call(p.call(t,`\n`),l=>l.length<3)&&e(t)(t))

Sử dụng: f(something) // returns 'Hello, World!'

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




Đẹp! Đó là một vết nứt thực sự.
Voile

Điều này thực sự khó khăn để phá vỡ. Làm tốt lắm!
DanTheMan

Nó được lấy trực tiếp từ một trong những câu đố tôi đã tạo ở nơi khác :) (Tôi sẽ cho mọi người biết nơi tôi đã đăng câu đố gốc.)
Voile

4

C # (.NET Core) , 130 152 byte, CRACKED

+22 byte, tôi quên mất việc theo dõi dòng mới ... Chương trình hoạt động giống như trước đây, dòng mới được thêm vào bất kỳ đầu ra nào.

a=>a.Distinct().Select((x,y)=>a.Reverse().Skip(y).First()*x%255).Take(a.First()-33).Concat(new int[]{10}).Select(x=>(char)x).ToArray()

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

Số lượng byte cũng bao gồm

using System.Linq;

Để bắt đầu, tôi đã đi cho một cái gì đó không quá điên rồ. Nó có thể có nhiều câu trả lời.

Các vết nứt "chính thức":

. ! $ 0%> 5 & 8 '#?) S * TuE [MRX` + 9



4

tcc, 89 byte, bị bẻ khóa bởi Dennis

#!/usr/bin/tcc -run
#include <stdio.h>

int main()
{
    puts("\n");
}
#include "/dev/stdin"

Điều này đặc biệt xấu do độ phân giải động của tcc. Rất nhiều chức năng được dự đoán trước và cố gắng ghi đè lên chúng đơn giản là không hoạt động.


Bạn có thể tạo một liên kết TIO hoạt động cho mọi người chơi không? ( điều này không nghi ngờ gì là không đầy đủ - có thể nó cần cờ trình biên dịch hoặc một cái gì đó, tôi không biết) TBH Tôi thậm chí không biết làm thế nào để lấy đầu vào này ...?
Jonathan Allan

Tcc của tio sẽ không hoạt động. Nó không nhận được rằng điều này phải được sử dụng như là tcc -run chứ không phải là một giai đoạn biên dịch và liên kết riêng biệt.
Joshua

Có lẽ nó có thể chạy qua một cái vỏ ở đó, bash có sẵn (tôi biết rất ít về tcc hoặc bash). Mặt khác, tôi nghĩ bạn nên đưa ra một số hướng dẫn chi tiết để khiến mọi người đi theo (trừ khi sự thiếu hiểu biết cá nhân của tôi là vấn đề ở đây - như tôi đã nói tôi thậm chí không biết làm thế nào mã của bạn nhận được bất kỳ đầu vào nào, tất cả những gì tôi thấy là putsvà tôi nghĩ rằng đầu ra.)
Jonathan Allan

Hầu như có một vết nứt nhưng tôi đang di động và mprotectđang là một mông.
MD XF



4

Brainfuck , 7 byte bị bẻ khóa

,+[.,+]

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

Chúc may mắn. (không hoạt động với mọi trình thông dịch BF


Đầu vào của bạn có hoạt động với bất kỳ trình thông dịch BF nào không, bao gồm các trình thông dịch có độ dài băng khác nhau? Đầu vào của bạn có hoạt động cục bộ không, và không chỉ trên TIO?
Stephen

@StepHen bất kỳ độ dài của loại afaik
Christopher


1
Giải pháp dự định của bạn có hoạt động trên TIO không?
hoàn toàn là

@totallyhuman cảm ơn, chỉnh sửa bình luận để nó trông pro. Tôi không biết cách đặt đầu vào không in được trên TIO. Tôi đã chuyển đầu vào trên stdin từ một chương trình C với một câu lệnh printf.
rexroni

3

JavaScript (ES6), 102 byte ( Cracked )

Các phiên bản trước có một pho mát lớn. Hãy thử lại lần nữa ...

f=s=>{let r='',i=0;while(i<13)r+=!s[i][0]||s[i]=='Hello, World!'[i]||s[i++];return r};Object.freeze(f)

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

Giải pháp của tác giả:

Proxy mới ({v: Array (13) .fill (0)}, {get: (o, p) => ['a', '', 'Xin chào, Thế giới!' [p]] [ov [p] ++]})

Sử dụng:

var p = new Proxy ({v: Array (13) .fill (0)}, {get: (o, p) => ['a', '', 'Xin chào, Thế giới!' [p]] [ov [p] ++]}) console.log (f (p))



3

Cubically, 159 bytes (Cracked)

+53$!7@6:2/1+551$?7@6:5+52$!7@66:3/1+552$?7@6:5+3/1+4$!7@6:5/1+3$?7@6:5+1/1+54$!7@6:3/1+552$?7@6:5+1/1+552$?7@6:5+52$!7@6:1/1+551$?7@6:5+1/1+3$!7@6:1/1+1$(@6)7

This will be pretty easy to those who are comfortable with Cubically. Try it online!


1
Có ai thoải mái với Cubally không? : P
hoàn toàn là con người

@totallyhuman Ngôn ngữ thực sự khá đơn giản một khi bạn đã quen với nó, và thật thú vị khi sử dụng!
Teher

@totallyhuman Có vẻ như không có bất kỳ hướng dẫn chuyển hướng nào, vì vậy điều này có vẻ như chủ yếu chỉ là toán học với bội số của 9. Toán học rất, rất phức tạp.
Robert Fraser

Nứt? Tôi nghĩ rằng tôi đã nhận được đầu vào dự định, nhưng nó không hoạt động, nhưng tôi khá chắc chắn rằng nó không thành công do lỗi trình thông dịch. Xem giải thích của tôi trong bài crack. Nếu tôi đúng, thì bạn đã đúng rằng nó thực sự dễ dàng :)
rexroni

3

Mã máy 6502 (C64), 51 53 byte ( Cracked )

00 C0                     .WORD $C000     ; load address
20 FD AE                  JSR $AEFD
20 EB B7                  JSR $B7EB
8A                        TXA
0A                        ASL A
45 14                     EOR $14
8D 21 C0                  STA $C021
45 15                     EOR $15
85 15                     STA $15
49 E5                     EOR #$E5
85 14                     STA $14
8E 18 D0                  STX $D018
A0 00                     LDY #$00
B1 14                     LDA ($14),Y
20 D2 FF                  JSR $FFD2
C8                        INY
C0 0E                     CPY #$0E
D0 F6                     BNE *-8
60                        RTS
C8 45 4C 4C 4F 2C 20 D7   .BYTE "Hello, W"
4F 52 4C 44 21 0D         .BYTE "orld!", $D

Bản demo trực tuyến

Cách sử dụng : SYS49152,[x],[n], trong đó xlà số nguyên không dấu 16 bit và nlà số nguyên không dấu 8 bit.

Đầu vào là 52768 và 23 (SYS49152,52768,23)

Tham số thứ hai được ghi trực tiếp vào D018, một thanh ghi điều khiển của chip đồ họa VIC-II. Sử dụng một tham chiếu phù hợp, bạn có thể suy ra những gì cần viết ở đó để cài đặt chế độ chữ thường mà không thay đổi các chế độ khác và địa chỉ của bộ nhớ màn hình : $17, hoặc thập phân 23. Cùng với đó, bạn có thể theo dõi các số liệu trong mã, vì vậy tham số đầu tiên kết thúc với địa chỉ chuỗi chính xác trong $14/$15(little endian). Một lời giải thích sâu hơn có thể được tìm thấy trong vết nứt.

Screenshot

Được gọi với các giá trị sai, một sự cốrất có thể .

Để bẻ khóa, bạn có thể muốn chạy nó trong bản cài đặt cục bộ của phó , vì vậy đây là một bộ nạp BASIC để dán vào các giả lập ( RUNnó để đặt các chương trình tại $C000):

0fOa=49152to49202:rEb:pOa,b:nE
1dA32,253,174,32,235,183,138,10,69,20,141,33,192,69,21,133,21,73,229,133,20,142
2dA24,208,160,0,177,20,32,210,255,200,192,255,208,246,96,200,69,76,76,79,44,32
3dA215,79,82,76,68,33,13

Cập nhật: Đã thêm hai byte cho địa chỉ tải để biến C64 thành tệp thực thi nàyPRG để đáp lại cuộc thảo luận về meta


Bạn có chắc chắn cần gọi chức năng kiểm tra dấu phẩy ngay từ đầu không? Tôi có ấn tượng rằng b7eb cũng kiểm tra.
Một người đàn ông vàng

b7ebcác cuộc gọi aefd, nhưng chỉ sau khi gọi ad8a(số phân tích là float (!) (wtf) (MS)) và b7f7(chuyển đổi float đó thành 16 bit không dấu int) - vì vậy trước tiên tôi phải gọi cho aefdmình để sử dụng dấu phẩy đầu tiên.
Felix Palmen

Nứt ! Ngọt ngào báo thù ngọt ngào!
Một người đàn ông vàng

@AGoldMan cuối cùng đã chỉnh sửa bài viết của tôi. Một lần nữa, làm tốt lắm! Có lẽ tôi có thể đưa ra một mã C64 khác khó bẻ khóa hơn (mà không công bằng), chưa chắc chắn :)
Felix Palmen

2

Python 2 , 63 byte, bị bẻ khóa

Chỉ để có được quả bóng lăn ...

#coding:rot13
cevag vachg()==h'Hello, World!'naq'Hello, World!'

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


1
Có phải thường được chấp nhận cho OP để bẻ khóa đệ trình?
MD XF


3
Điều đó thật thú vị ... Tôi đã không nhận ra bất kỳ ngôn ngữ "bình thường" nào hỗ trợ mã hóa trong ROT13 o_o
ETHproductions

13
@Arnauld Và bạn đang khẳng định PHP là ngôn ngữ bình thường ?
NoOneIsHãy là

1
@NoOneIsHere Er ... không. Lỗi của tôi. :-P
Arnauld



2

Jelly , 11 byte ( đã bẻ khóa )

sLƽ$Xṙ5O½Ọ

Try it online!

Đầu vào dự định:

〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ〡㋄ⶐ✐сᑀ⟙ⶐⶐ〡ސЀᶑ



@HyperNeutrino Heh thật lén lút, vì nó đã sống được hơn nửa giờ. ;)
Erik the Outgolfer

Heh đó là vì tôi chỉ nhìn thấy nó 10 phút trước khi nhìn thấy nó; P
HyperNeutrino



2

Python3, 192 bytes Cracked I guess

from sys import *
from numpy import *
e=enumerate
c='Hello World!'
w=eval(argv[1])
x=[ord(n)+2*i for i,n in e(c)]
print(''.join([c[int(sum([c*cos(n*i)for i,c in e(w)])+.01)]for i,n in e(x)]))

The text it reads is the first program argument: python3 hw.py '[1,2,3]'

Don't be lame and try to put a print("Hello World!") statement as the argument... it prints an error afterwards anyways (at least on the command line), so I don't think that should count. (Edit: somebody did exactly that)


4
Cracked. Lame crack, but unrestricted eval must be punished =)
Sisyphus


2

Lua 5.1, 44 bytes (Cracked)

s=...loadstring(#s>4+#s:gsub("%l","")or s)()

Note that Lua 5.1 is a different language than Lua 5.2 or Lua 5.3. "Try it online" doesn't have Lua 5.1. You can check your Lua version by running print(_VERSION). (There should be a solution in any implementation that uses PUC-Rio's Lua 5.1 core.)

As a test harness, you can use something like this:

function test(...)s=...loadstring(#s>4+#s:gsub("%l","")or s)()end

test[[
This is my input!
It can have multiple lines!
]]

Test harness on repl.it


2

C (GCC on TIO), 84 bytes golfed (Cracked)

#include<stdio.h>
main(x){scanf("%d",&x);printf("%2$s","Hello, World!\n",(void*)x);}

Here's an ungolfed version that works too:

#include <stdio.h>
int main(void)
{
    int x;
    scanf("%d",&x);

    printf("%2$s","Hello, World!\n",(void*)x);
}

2

JavaScript (ES6), 92 bytes (Cracked)

This simple string copy function seems to be really resisting you to copy any strings resembling Hello, World!...

f=s=>{let r='',i=0;while(i<13)r+=s[i]=='Hello, World!'[i]||s[i++];return r};Object.freeze(f)

Try it online!





2

JavaScript (ES6) 107 Bytes [Thanks Евгений Новиков] (Cracked)

i=r=>{for(e="",n=0;r.length>n;o=r.charCodeAt(++n),e+=String.fromCharCode(((3^o^19)<<1^15^13)<<1));return e}

Call on the i function using a string.

The console.log... is for testing purposes.

Try It Online!


Welcome to PPCG! You can save 8 bytes: (1) remove var, (2) () from one arrow-function argument, (3) replace return to eval("") (4) delete ; at the end. 110 bytes solution: pastebin.com/qwdm7fT7 Good luck
Евгений Новиков

Finally got 50 rep, so: Cracked
Voile
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.