Mã điểm tổng quine


20

Tất cả các thử thách trên trang web này được tập trung vào số byte hoặc chính các ký tự. Cái này thì khác. Thử thách của bạn là viết một chương trình tạo đầu ra có tổng điểm mã giống với tổng điểm của mã nguồn.

Để tạo tổng điểm mã:

  1. Tìm các giá trị của các ký tự trong bộ ký tự của chương trình.
    Ví dụ: FOOtrong ASCII: F= 70, O= 79, O= 79
  2. Thêm tất cả chúng lại với nhau.
    Tổng điểm của FOOmã trong ASCII: F+ O+ O= 70 + 79 + 79 = 228.

Một ví dụ về một tổng số ASCII sẽ là nếu mã nguồn là ABCvà đầu ra là !!!!!!. Điều này là do tổng các giá trị ASCII của nguồn ( A= 65, B= 66, C= 67, sum = 198) giống như tổng của các giá trị ASCII trong đầu ra ( != 33, 33 * 6 = 198) . BBBcũng sẽ là đầu ra hợp lệ, như sẽ cc.

Quy tắc

  • Chương trình của bạn không được đảo ngược, xáo trộn, lỗi hoặc bất kỳ loại câu hỏi "đúng" nào khác. Để giải thích: Nếu đầu ra chứa tất cả các ký tự giống như nguồn, thì nó không hợp lệ.
  • Chương trình của bạn không thể sử dụng bất kỳ lỗi / cảnh báo nào từ trình biên dịch / trình thông dịch làm đầu ra.
  • Nguồn chương trình của bạn phải sử dụng cùng một bảng mã như đầu ra.
  • Chương trình của bạn có thể sử dụng bất kỳ bảng mã nào được tạo trước khi thử thách này diễn ra.
  • Đầu ra của chương trình của bạn không được chứa bất kỳ ký tự không thể in nào (ví dụ ASCII 0 đến 31 hoặc trên 127) ngoài các nguồn cấp dữ liệu và tab.
  • Tiêu chuẩn áp dụng.
  • Nếu nguồn và / hoặc đầu ra có nguồn cấp theo dõi, nó phải được bao gồm trong tổng điểm mã.
  • Các cờ biên dịch cần được đưa vào số byte (điểm) cuối cùng, nhưng không phải là tổng điểm của mã nguồn.
  • Đầu ra / nguồn có thể không trống.

Chấm điểm

Câu trả lời ngắn nhất về số byte (không phải tổng điểm mã) sẽ thắng. Vui lòng sử dụng câu trả lời định dạng tiêu đề này:

# Jelly, 12 bytes, sum 56 (SBCS)

Bạn có thể sử dụng công cụ này để tính tổng ASCII.

Tài liệu tham khảo

Dưới đây là một số tài liệu tham khảo codepage hữu ích.


Được cho phép ý kiến?
sĩ523

@ musicman523 vâng, tôi đoán vậy.
MD XF

Tại sao không cho phép cảnh báo? Tôi cảm thấy không cần thiết.
Conor O'Brien

1
@ ConorO'Brien Cảnh báo không được phép là đầu ra của chương trình, ví dụ: không có lỗi nào. Tôi đoán điều đó không rõ ràng, một phút.
MD XF

Chính sách về cờ là gì?
Okx

Câu trả lời:


24

Võng mạc , 1 byte, sum = 58 (ASCII)

:

Cái này đếm các trận đấu :trong đầu vào ( 0 ), vì vậy nó in

0

Các điểm mã của :, 0và LF (nguồn cấp dữ liệu) là 58 , 4810 (tương ứng) và 58 = 48 + 10 .

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


14

ArnoldC, 316 byte, tổng 20992 (ASCII)

Đủ vui

IT'S SHOWTIME
HEY CHRISTMAS TREE s
YOU SET US UP 1
HEY CHRISTMAS TREE iaV
YOU SET US UP 0
STICK AROUND s
GET TO THE CHOPPER iaV
HERE IS MY INVITATION iaV
GET UP 8
ENOUGH TALK
TALK TO THE HAND "H"
GET TO THE CHOPPER s
HERE IS MY INVITATION 2048
LET OFF SOME STEAM BENNET iaV
ENOUGH TALK
CHILL
YOU HAVE BEEN TERMINATED

Tôi đã sử dụng cái nàycái này để làm tính toán của tôi. Mất tôi một tiếng rưỡi. Nhưng vui.

Dùng thử trực tuyến!

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

STICK AROUNDlà một vòng lặp, vòng lặp đó 2048lần trên chỉ mục iaV, nhưng chỉ số này bước qua 8. Vì vậy, có 256các vòng lặp, in ấn Hvà một nguồn cấp dữ liệu (72 + 10 = 82, 82 * 256 = 20992).

Đây là vẫn RẤT golfable (bằng cách tìm calcs khác) nhưng nó là dài và nhàm chán để đo byte của bạn tổng hợp mỗi khi bạn làm một sửa đổi.

Xin vui lòng cho tôi biết nếu tôi nhầm ở bất cứ đâu.


1
Câu trả lời tốt nhất của ArnoldC mà tôi đã thấy.
Bạch tuộc ma thuật Urn

1
@MagicOctopusUrn cảm ơn xD, đây là lần thử đầu tiên của tôi đối với ngôn ngữ này (¿¿??!?!? Vẫn không chắc chắn đó là ngôn ngữ nào )
V. Courtois

github.com/samshadwell/TrumpScript là một "ngôn ngữ" vô nghĩa khác nếu bạn muốn mô phỏng tổng thống Hoa Kỳ.
Bạch tuộc ma thuật Urn

@MagicOctopusUrn cũng ima thực hiện thử thách này trong trumpscript rồi.
V. Courtois

1
Vì vậy, tôi phát hiện ra ArnoldC hỗ trợ đầu ra unicode và loại bỏ thêm 2 byte. Tôi đã đăng riêng nó (có xác nhận)
TemporalWolf


8

Python 2, 11 byte, tổng 838 (ASCII)

print 76**8

in

1113034787454976

Không thông minh lắm nhưng nó hoạt động.

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


Câu trả lời tuyệt vời đầu tiên; Chào mừng đến với trang web! Tôi có thể xác minh rằng tổng ASCII là chính xác .
MD XF

Đây là một polygot, nó cũng hoạt động trong Groovy, rất ấn tượng.
Bạch tuộc ma thuật Urn

2
Câu trả lời tuyệt vời, nhưng không phải đầu ra có một dòng cấp dữ liệu phải được thêm vào?
Phục hồi lại

Điều này cũng hoạt động trong ruby
Alexis Andersen

7

Jelly, 12 byte, tổng 948 (SBCS)

Bạn đã nói:

Thạch, 12 byte

sau đó là Jelly, 12 byte.

\
³³³ ,: D +++

Thật là vui, vì tôi không biết Jelly chút nào.

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

Tôi không có ý kiến ​​gì. Nhưng ³không đặt 100 trong ngăn xếp, ,đặt ngăn xếp thành một mảng hoặc thứ gì đó, :có thể ghép nối thứ đó trong khi Dliệt kê mọi chữ cái của chữ số cuối cùng (không tồn tại) và +++ là để giải trí. Dòng đầu tiên và cuối cùng không ảnh hưởng đến đầu ra :)

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

Sử dụng này để đếm.


4
"Tôi biết những gì ³Dlàm, nhưng đừng hỏi tôi WTF bất cứ điều gì khác." - Đây cũng sẽ là bài viết của tôi nếu tôi trả lời Jelly.
Bạch tuộc ma thuật Urn

6

CJam / Japt / bc, 2 byte, tổng 97 (ASCII)

A

Dùng thử trực tuyến (CJam), Thử trực tuyến (Japt) (cảm ơn @shaggy),

Phiên bản bc hoạt động trên dòng lệnh, nhưng không phải TIO.

Đầu ra 10

Nguồn: A+ Space= 65 + 32 = 97

Đầu ra: 1+ 0 = 49 + 48 = 97


Điều này cũng hoạt động trong Japt.
Xù xì

Tôi không nghĩ rằng điều này làm việc trong bc. Tất cả các phiên bản tôi biết nhấn mạnh vào một dòng mới.
Dennis

@Dennis Mình mới chạy bcchương trình rồi gõ vào A . Tôi có nên gọi nó là REPL không?
geokavel


5

Về cơ bản , 4 byte, tổng 141 (ASCII)

%44E

Đầu ra 3636. Hãy thử trực tuyến! Và đây là trình kiểm tra tổng ASCII mà tôi đã sử dụng.

Giải trình:

  • % có nghĩa là 'tổng mặt in dưới dạng số nguyên'.
  • 4 in tổng của tất cả các giá trị trên mặt BACK (36) hai lần.
  • E là một no-op, chỉ được sử dụng để có được số tiền cần thiết.

hahaha, lấy upvote của tôi
Giuseppe

5

Một số câu trả lời này chứa các ký tự có thể sẽ vô hình với bạn (đặc biệt là ASCII 17), nhấp vào liên kết TIO để xem vị trí của chúng.

Klein 100/110, 4 byte, tổng 147

1
@

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

Đầu ra:

1 1

Klein 201, 4 byte, tổng 147

1
@

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

Đầu ra:

1 1

Klein (bất kỳ cấu trúc liên kết), 5 byte, tổng số 221 (ASCII)

111@

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

Bản in này

1 1 1


Một lời cảm ơn cho bất cứ ai vừa nâng cao điều này ra khỏi màu xanh. Bạn khiến tôi có cái nhìn thứ hai về điều này và bây giờ tôi đã cải thiện nó một chút.
Phù thủy lúa mì

@JoKing Tôi muốn nói rằng đó là câu trả lời của riêng bạn. Nó khá thông minh và không chỉ là một cải tiến cho những gì tôi đã làm.
Thuật sĩ lúa mì

4

Java 7, 88 85 byte, tổng 7808 7617 7507 (ASCII)

class
w{public
static
void
main(String[]H){for(int
B=0;B<77;)System.out.print(B++);}}

Hầu như chắc chắn là golf. Thật dễ dàng để điều chỉnh vì chúng ta có một số biến dự phòng như tên của lớp và tên của tham số đối số chương trình mà chúng ta có thể thay đổi tự do.

Kiểm tra nó trực tuyến!

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


Java 8, 84 byte, tổng 7434

Tín dụng cho Kevin Cruijssen .

interface A{static void main(String[]G){for(int A=59;A-->0;)System.out.print("~");}}

Kiểm tra nó trực tuyến!

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


Tốt công việc, tôi có thể xác minh nó hoạt động ở đây . Sẽ +1 nhưng tôi hết phiếu.
MD XF

Chuyển đổi nó thành Java 8, bạn có thể sử dụng cách này: interface A{static void main(String[]G){for(int A=59;A-->0;)System.out.print("~");}}để đánh gôn 4 byte và hạ xuống 7434 dưới dạng tổng. Hãy thử nó ở đây. Xác nhận tổng kết quả.
Kevin Cruijssen

1
@KevinCruijssen Tôi muốn giữ câu trả lời của mình trong Java 7 nhưng tôi đã thêm giải pháp Java 8 của bạn vào câu trả lời của tôi và ghi có cho bạn. Nếu bạn muốn đăng bài cho mình, tôi có thể xóa câu trả lời của bạn khỏi tôi.
Chọc

3

Python 2 , 11 byte, tổng byte 854 (ASCII)

Mã (có dòng mới):

print'z'*7

Đầu ra (với dòng mới):

zzzzzzz

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


Tại sao phần <code> không hoạt động? Ý tôi là, tôi có thể thấy dòng mới trên bản xem trước khi tôi chỉnh sửa bài đăng của bạn, nhưng chúng tôi không thể thấy nó trên bài đăng.
V. Courtois

@ V.Courtois Trình duyệt khác biệt (ví dụ: hoạt động trong Firefox, không hoạt động trong Chrome). Đó là lý do tại sao tôi chỉ ra rõ ràng dòng mới.
Anders Kaseorg

ok, có vẻ như đó là điều tôi sẽ phải làm tiếp theo. Nhưng tại sao phần thứ hai phản ứng tốt sau đó? : o
V. Courtois


3

V , 2 byte, Sum 255 (Latin1)

á

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

Hexdump:

00000000: 1ee1                                     ..

Ký tự đầu tiên là ctrl-^, hoặc điểm mã LATIN1 / ASCII 0x1E. Ký tự thứ hai là alt-a, hoặc ký tự LATIN1 0xE1. Chương trình này xuất ra ÿ, 0xFFtrong LATIN1.

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

Nhân vật đầu tiên là một no-op. Nó không có tác dụng gì với chương trình cả. Ký tự thứ hai là lệnh thêm ký tự . Nhưng chúng tôi không chỉ định nhân vật nào để nối thêm. Vì vậy, do kết thúc ngầm , nó nối thêm ký tự mà V sử dụng để báo hiệu chương trình kết thúc, điều này thật sự xảy ra 0xFF.


Tổng và codepage?
MD XF

@MDXF Đó là tất cả trong lời giải thích của tôi ...
DJMcMayhem

3

05AB1E , 5 byte, tổng 256 (Bản dịch 05AB1E Base-255)

ΔTnon

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


Kết quả này: 1606938044258990275541962092341162602522202993782792835301376

Mà, sử dụng kết quả trang mã của 05AB1E trong: [1, 6, 0, 6, 9, 3, 8, 0, 4, 4, 2, 5, 8, 9, 9, 0, 2, 7, 5, 5, 4, 1, 9, 6, 2, 0, 9, 2, 3, 4, 1, 1, 6, 2, 6, 0, 2, 5, 2, 2, 2, 0, 2, 9, 9, 3, 7, 8, 2, 7, 9, 2, 8, 3, 5, 3, 0, 1, 3, 7, 6]

Đó là: 256


Mã ở đâu: ΔTnon

Với các điểm mã: [79, 29, 49, 50, 49]

Đó là: 256


Trang mã này là gì? Cái này liệt kê 149 , không phải 1 .
Dennis

@Dennis Tôi đã đi với bất cứ điều gì 05AB1E trả về cho hàm base(char, 255), tôi đã giả định (dường như không chính xác) rằng chúng sẽ là một và giống nhau.
Bạch tuộc ma thuật Urn

3

Taxi , 543 byte, tổng 47124 (ASCII)

374 is waiting at Starchild Numerology.Go to Starchild Numerology:w 1 l 2 r 1 l 1 l 2 l.Pickup a passenger going to The Underground.'~' is waiting at Writer's Depot.Go to Writer's Depot:w 1 r 1 l 1 r.Pickup a passenger going to Cyclone.Go to Cyclone:n.[a]Pickup a passenger going to Cyclone.Pickup a passenger going to Post Office.Go to Zoom Zoom:n.Go to Post Office:w 3 l 2 r 1 l.Go to The Underground:n 1 r 1 l.Switch to plan "R" if no one is waiting.Pickup a passenger going to The Underground.Go to Cyclone:n 3 l 2 l.Switch to plan "a".[R]

Hãy thử trực tuyến! ( Xác minh điểm )

Đầu ra là 374 dấu ngã ~.


3

Toán học, 2 byte, sum = 101 (ASCII)

E + Space trả về e

E 

Toán học, 2 byte, sum = 105 (ASCII)

nó cũng làm việc cho tôi

Tôi + không gian trả về tôi

I 


2

Brain-Flak (Rain-Flak) , 79 byte

(((((((((((((((((((((((((((((((((()()()()){}){})))))))))))))))))))))))))))))))

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

Điều này in 16và một dòng mới 31 lần.

Brain-Flak (BrainHack) , 55 byte

(((((((((((((((((((((()()()()){}){})))))))))))))))))))#

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

Điều này in 16và một không gian 18 lần.

Cũng 55 byte

((((((((((((((((((((((()()()){}){}))))))))))))))))))))

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

Bản in này 12theo sau là một khoảng trống 19 lần.


Tổng và codepage?
MD XF

@MDXF Tôi không nhớ các khoản tiền nhưng tất cả đều là ascii.
Phù thủy lúa mì

Thứ hai và thứ ba có vẻ không đúng (họ in 19 và 20 lần chuỗi đã đề cập), mặc dù bạn có thể sửa cả hai, xem tại đây .
ბიმო


2

Cubix , 20 byte, tổng điểm 1505

OuOOQ++OOOOU@>!OOO<

Chứa ký tự không thể in được DEL(ascii 127).

Qđẩy "(hằng số lớn nhất có sẵn trong khối), sau đó liên tục in ra ( O) 68hoặc 102đủ số lần để đạt được nó 68686868686868102102102102102là 1505; thông qua một số thử nghiệm và lỗi tôi nhận ra rằng tôi cần 81 điểm nhiều hơn .(một Cubix no-op và ASCII 46) dẫn đến nhu cầu DEL, vẫn là một điểm không có trong Cubix.

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

Trên một khối lập phương:

    O u
    O O
Q + + O O O O U
@ > ! O O O  <
    . .
    . .

1
Tôi đã xem "Cubix" và đọc " Lập thể ", phải tự bắt lấy trước khi tôi đưa cho bạn một tiền thưởng ... thở dài +1
MD XF

Thử thách @MDXF được chấp nhận
Giuseppe


2

dc, 7 byte, tổng 720 (ASCII)

[my]fff

(91 + 109 + 121 + 93 + (102 * 3) = 720)

Đầu ra:

my
my
my

((109 + 121 + 10) * 3 = 720)


2

Cà rốt , 4 byte, sum = 279 (ASCII)

]^*2

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

In ]]].


Con đường phía trước của tôi trong cái này. Tôi không ở đâu để có được một khoản tiền chính xác.
TheLethalCoder

@TheLethalCoder Tổng số ASCII ^*3là 187, vì vậy tôi đã thử giải x+187=4x, nhưng kết quả là không có giải pháp số nguyên. Vì vậy, tôi đã tiếp tục ^*2, trong đó có tôi 186+x=3xđã cho tôi xnhư 93, điểm mã của ]. Đó là tất cả những gì tôi đã làm :)
Kritixi Lithos

Cách làm thông minh của nó :)
TheLethalCoder

Tôi giả sử sau đó ¹^*1cũng hoạt động. Nếu tôi đã làm toán chính xác của tôi đó là. Mặc dù đó là giá trị unicode không utf8.
TheLethalCoder

@TheLethalCoder Tôi cho rằng nó phụ thuộc vào mã hóa, vì Carrot sử dụng ASCII theo mặc định.
Kritixi Lithos

2

Về cơ bản , 3 byte, sum = 105 (ASCII)

%4

Byte thứ ba là DLE , có mã điểm 16 , do đó tổng điểm mã của mã nguồn là
37 + 52 + 16 = 105 .

Chương trình in

36

có tổng điểm mã là 51 + 54 = 105 .

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


* thực hiện DLE * xin lỗi, không hợp lệ. : P +1
MD XF

Ồ, tôi đã không thấy một giải pháp khác ở đây. Rất tiếc!
TehPers

2

Cubix , 11 byte, tổng byte 954 (ASCII)

Mã số:

vOw~N(!@O^|

Đầu ra:

998877665544332211

Xác nhận tại đây!

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

Lập thể

    v O
    w ~
N ( ! @ O ^ | .
. . . . . . . .
    . .
    . .
  • N khởi tạo ngăn xếp với 10
  • (! giảm và kiểm tra cho sự thật
    • @ không dừng lại
  • O^O đầu ra số hiện tại chuyển hướng đến mặt trên và đầu ra một lần nữa
  • vwchuyển hướng trở lại (giảm dần để bắt đầu lại vòng lặp

Xem nó chạy


1

Husk , 4 byte, tổng 334 ( Husk SBCS )

up63

Đầu ra:

[3,7]

Giá trị của một chữ số được cho bởi 0x3?(nơi ?là viết tắt của chữ số đó) và u, p, [, ], ,đã giá trị 0x75, 0x70, 0x5b, 0x5d, 0x2c- do đó số tiền là:

0x75 + 0x70 + 0x36 + 0x33        = 0x14e
0x5b + 0x33 + 0x2c + 0x37 + 0x5d = 0x14e

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


1

JavaScript (ES6), 6 byte, sum = 385 (ASCII)

Y=>1E7

Đầu ra 10000000. Có 6 câu trả lời khác như h=>1e8. Hãy thử bộ đếm điểm mã này:

<input oninput=o.textContent=[...this.value].reduce(function(s,c){return(s+c.charCodeAt())},0)><pre id=o>0


1

cQuents , 5 byte, tổng 238 (ASCII)

#3::$

Đầu ra 1,2,3, hoặc theo thuật ngữ cQuents, in ba thuật ngữ đầu tiên của chuỗi 1,2,3,4,5,6....

Bây giờ hãy lắng nghe. Đây là, theo nghĩa đen, chương trình đầu tiên tôi đã thử. Lý do tôi đã thử nó là vì đây là chương trình tôi đã sử dụng cho Đầu ra có cùng độ dài với mã . Và nó quái đản làm việc.

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


1

Gaia , 4 byte, tổng 176 ( SBCS )

6 5%

Giải trình

Trong bảng mã của Gaia, linefeed có điểm mã là x7F (127 ở dạng thập phân). Các ký tự ASCII có thể in có cùng điểm mã như trong ASCII.

Điều này sẽ tính toán 6 modulo 5, là 1 và in 1với một dòng cấp dữ liệu.

Giá trị byte của các ký tự trong bảng mã (ở dạng thập phân):

6 5%: 54 + 32 + 53 + 37 = 176

1: 49 + 127 (nguồn cấp dữ liệu) = 176


1

Trumpscript, 131 byte, tổng 10600 (ASCII)

They wants to make war 110000000;make dark 10000000;as long as,dark less war;:make dark,dark plus 1000000;say "00"!america is great

này thực tế đời sống?

Kiểm tra với điều này .

Cảm ơn @MagicOctopusUrn đã nói với tôi rằng có tồn tại.


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.