코드 포인트 합계 quine


20

이 사이트의 모든 문제는 바이트 수 또는 문자 자체에 중점을 둡니다. 이것은 다릅니다. 문제는 소스의 코드 포인트 합계와 동일한 코드 포인트 합계를 갖는 출력을 생성하는 프로그램을 작성하는 것입니다.

코드 포인트 합계를 생성하려면

  1. 프로그램의 문자 세트에서 문자 값을 찾으십시오.
    예를 들어 FOO-ASCII : F= 70, O= 79, O= 79
  2. 모두 함께 추가하십시오. ASCII
    의 코드 포인트 합계 FOO: F+ O+ O= 70 + 79 + 79 = 228.

ASCII 합계 quine의 예는 소스 코드가 ABC있고 출력이 인 경우 !!!!!!입니다. 이는 소스의 ASCII 값의 합 ( A= 65, B= 66, C= 67, 합 = 198)이 출력의 ASCII 값의 합과 같기 때문입니다 ( != 33, 33 * 6 = 198). . BBB마찬가지로 유효한 출력이 cc됩니다.

규칙

  • 프로그램이 반전, 뒤섞임, 오류 또는 다른 유형의 "true"퀴인이되어서는 안됩니다. 자세히 설명 : 출력에 소스와 동일한 문자가 모두 포함 된 경우 유효하지 않습니다.
  • 프로그램은 컴파일러 / 인터프리터의 오류 / 경고를 출력으로 사용할 수 없습니다.
  • 프로그램 소스는 출력과 동일한 코드 페이지를 사용해야합니다.
  • 귀하의 프로그램은이 챌린지 이전에 작성된 코드 페이지를 사용할 수 있습니다.
  • 프로그램의 출력에는 줄 바꿈 및 탭 외에 인쇄 할 수없는 문자 (예 : ASCII 0-31 이상 또는 127 이상)가 포함되어서는 안됩니다.
  • 표준 허점이 적용됩니다.
  • 소스 및 / 또는 출력에 후행 줄 바꿈이 있으면 코드 포인트 합계에 포함되어야합니다.
  • 컴파일러 플래그는 최종 바이트 수 (점수)에 포함되어야하지만 소스의 코드 포인트 합계에는 포함되지 않아야합니다.
  • 출력 / 소스가 비어 있지 않을 수 있습니다.

채점

바이트 수 (코드 포인트 합계 아님)의 최단 응답이 이깁니다. 이 헤더 형식 답변을 사용하십시오.

# Jelly, 12 bytes, sum 56 (SBCS)

이 도구 를 사용하여 ASCII 합계를 계산할 수 있습니다 .

참고

다음은 유용한 코드 페이지 참조입니다.


의견이 허용됩니까?
musicman523

@ musicman523 그렇습니다.
MD XF

왜 경고를 허용하지 않습니까? 불필요하다고 생각합니다.
코너 오브라이언

1
@ ConorO'Brien 경고는 프로그램의 출력이 될 수 없습니다 (예 : 오류 quine 없음). 1 분 정도는 불분명합니다.
MD XF

깃발에 대한 정책은 무엇입니까?
Okx

답변:



14

ArnoldC, 316 바이트, 합 20992 (ASCII)

충분히 재미있다.

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

내가 사용 내 계산을 할 수 있습니다. 한 시간 반 걸렸습니다. 그러나 재미있다.

온라인으로 사용해보십시오!

작동 원리

STICK AROUND2048색인 iaV에서 시간 을 반복하는 루프 이지만이 색인은 단계별로 수행됩니다 8. 따라서 256루프, 인쇄 H및 줄 바꿈이 있습니다 (72 + 10 = 82, 82 * 256 = 20992).

이것은 여전히 높게 (다른 CALCS을 찾아) golfable하지만 오랫동안 당신의 바이트는 수정을 할 때마다 합계를 측정하는 지루한입니다.

내가 어디를 잘못했는지 알려주세요.


1
내가 본 최고의 ArnoldC 답변.
매직 문어 Urn

1
@MagicOctopusUrn 고마워 xD이 언어 에 대한 나의 첫 번째 시도이다 (¿ ¿ ??!?!? 아직도 그것이 확실하지 않다)
V. Courtois

github.com/samshadwell/TrumpScript 는 미국 대통령을 모방하려는 경우 또 다른 의미없는 "언어"입니다.
매직 문어 Urn

트럼프 스크립트 에서이 도전을 잘하고 있습니다.
V. Courtois

1
그래서 ArnoldC가 유니 코드 출력을 지원하고 추가 2 바이트를 줄인 것을 알았습니다. 따로 게시했습니다 (확인)
TemporalWolf


8

Python 2, 11 바이트, 합계 838 (ASCII)

print 76**8

인쇄물

1113034787454976

매우 영리하지는 않지만 작동합니다.

온라인으로 사용해보십시오!


위대한 첫 번째 대답; 사이트에 오신 것을 환영합니다! ASCII 합계 가 올바른지 확인할 수 있습니다 .
MD XF

이것은 polygot이며, Groovy에서도 작동하며 매우 인상적입니다.
매직 문어 Urn

2
좋은 대답이지만 출력에 후행 줄 바꿈이 없어야합니까?
복원 Monica Monica

이것은 루비에서도 작동합니다
Alexis Andersen

7

젤리, 12 바이트, 합계 948 (SBCS)

당신은 말했다 :

젤리, 12 바이트

그런 다음 Jelly, 12 바이트입니다.

\
³³³, : D +++

젤리를 전혀 몰랐기 때문에 재미있었습니다.

작동 원리

나는 전혀 모른다. 그러나 ³스택에 100을 넣고 스택 ,이나 배열에 스택을 넣고 마지막 숫자 (존재하지 않는)의 모든 문자 :D나열 하는 동안 사물을 연결할 수 있으며 + ++는 재미 있습니다. 첫 번째와 마지막 줄은 출력에 영향을 미치지 않습니다 :)

온라인으로 사용해보십시오!

이것을 계산하는 데 사용 했습니다 .


4
"내가 알고있는 ³D않지만, 나에게 무슨 일 아무것도하지를 요구하지 않습니다." -젤리 답변을한다면이 글도 쓸 수있을 것입니다.
매직 문어 Urn

6

CJam / Japt / bc, 2 바이트, 합계 97 (ASCII)

A

온라인으로 시도 (CJam), 온라인으로 시도 (Japt) (@ shaggy 덕분에)

bc 버전은 명령 행에서 작동하지만 TIO에서는 작동하지 않습니다.

출력 10

출처 : A+ Space= 65 + 32 = 97

출력 : 1+ 0 = 49 + 48 = 97


이것은 Japt에서도 작동합니다.
얽히고 설킨

나는 이것이 BC에서 작동하지 않는다고 생각합니다. 내가 아는 모든 버전은 후행 줄 바꿈을 고집합니다.
Dennis

@Dennis 방금 bc프로그램을 실행 한 다음에 입력했습니다 A . bc REPL이라고해야합니까?
geokavel



5

이 답변 중 일부에는 보이지 않는 문자 (특히 ASCII 17)가 포함되어 있습니다. TIO 링크를 클릭하면 배치를 볼 수 있습니다.

클라인 100/110, 4 바이트, 합계 147

1
@

온라인으로 사용해보십시오!

산출:

1 1

클라인 201, 4 바이트, 합계 147

1
@

온라인으로 사용해보십시오!

산출:

1 1

클라인 (모든 토폴로지), 5 바이트, 합계 221 (ASCII)

111@

온라인으로 사용해보십시오!

이것은 인쇄

1 1 1


누구든지이 문제를 파란색으로 상향 조정했습니다. 이 부분을 다시 살펴 보았으니 이제 조금 개선했습니다.
밀 마법사

@ JoKing 나는 당신의 대답으로 그것을 게시하고 싶습니다. 그것은 똑똑하고 내가 한 일을 개선하는 것 이상입니다.
밀 마법사

4

Java 7, 88 85 바이트, 합계 7808 7617 7507 (ASCII)

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

거의 확실하게 골프를 즐길 수 있습니다. 클래스 이름 및 자유롭게 변경할 수있는 프로그램 인수 매개 변수 이름과 같은 여분의 변수가 있으므로 조정이 매우 쉽습니다.

온라인으로 테스트하십시오!

온라인으로 사용해보십시오!


Java 8, 84 바이트, 합계 7434

신용은 Kevin Cruijssen 에게갑니다 .

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

온라인으로 테스트하십시오!

온라인으로 사용해보십시오!


잘 했어, 여기서 작동하는지 확인할 수 있습니다 . +1하지만 투표가 없습니다.
MD XF

Java 8로 변환하면 이것을 사용할 수 있습니다 : interface A{static void main(String[]G){for(int A=59;A-->0;)System.out.print("~");}}4 바이트로 골프를 치고 7434로 줄입니다. 여기에서 시도하십시오. 결과 합계를 확인합니다.
케빈 크루이 센

1
@KevinCruijssen Java 7에서 답변을 유지하고 싶지만 Java 8 솔루션을 내 답변에 추가하고 인정했습니다. 당신은 오히려 자신을 게시하려는 경우 내 답변을 제거 할 수 있습니다.
Poke

3

파이썬 2 , 11 바이트, 바이트 합계 854 (ASCII)

코드 (줄 바꿈 포함) :

print'z'*7

출력 (후행 줄 바꿈) :

zzzzzzz

온라인으로 사용해보십시오!


<code> 섹션이 작동하지 않는 이유는 무엇입니까? 글을 수정하면 미리보기에서 후행 줄 바꿈을 볼 수 있지만 글에서 볼 수는 없습니다.
V. Courtois

@ V.Courtois 브라우저 차이점 (예 : Firefox에서는 작동하고 Chrome에서는 작동하지 않음) 이것이 바로 개행을 명시 적으로 지적한 이유입니다.
Anders Kaseorg

좋아, 내가 다음에해야 할 일 인 것 같습니다. 그런데 왜 두 번째 부분이 잘 반응합니까? : o
V. Courtois


3

V , 2 바이트, 합 255 (Latin1)

á

온라인으로 사용해보십시오!

16 진 덤프 :

00000000: 1ee1                                     ..

첫 번째 문자는 ctrl-^또는 LATIN1 / ASCII code-point 0x1E입니다. 두 번째 문자는 alt-a또는 LATIN1 문자 0xE1입니다. 이 프로그램 은 LATIN1에 ÿ있는을 출력 0xFF합니다.

어떻게 작동합니까?

첫 번째 캐릭터는 무작정입니다. 프로그램에는 전혀 영향을 미치지 않습니다. 두 번째 문자는 단일 문자 추가 명령입니다. 그러나 어떤 문자를 추가할지 지정하지 않습니다. 따라서 암시적인 엔딩 으로 인해 V는 프로그램이 끝났다는 신호를 보내는 데 사용하는 문자를 추가합니다 0xFF.


합과 코드 페이지?
MD XF

@MDXF 그것은 내 설명에 전부입니다 ...
DJMcMayhem

3

05AB1E , 5 바이트, 합 256 (05AB1E Base-255 변환)

ΔTnon

온라인으로 사용해보십시오!


이 결과는 다음과 같습니다. 1606938044258990275541962092341162602522202993782792835301376

05AB1E의 코드 페이지를 사용하면 다음과 같은 결과가 발생합니다. [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]

어느 것이 : 256


코드가있는 곳 : ΔTnon

코드 포인트로 : [79, 29, 49, 50, 49]

어느 것이 : 256


어떤 코드 페이지입니까? 이 하나 개의 목록 1으로 49 이 아닌 1 .
Dennis

@Dennis base(char, 255)나는 함수에 대해 반환 된 05AB1E와 함께 갔다 .
매직 문어 Urn

3

택시 , 543 바이트, 합계 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]

온라인으로 사용해보십시오! ( 점수 검증 )

출력은 374 개의 물결표 ~입니다.


3

수학, 2 바이트, 합 = 101 (ASCII)

E + 스페이스 리턴 e

E 

수학, 2 바이트, 합 = 105 (ASCII)

나에게도 효과가있다

I + Space는 i를 반환

I 


2

Brain-Flak (Rain-Flak) , 79 바이트

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

온라인으로 사용해보십시오!

이렇게 16하면 줄 바꿈이 31 번 인쇄 됩니다.

Brain-Flak (BrainHack) , 55 바이트

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

온라인으로 사용해보십시오!

인쇄 16및 공백 18 회.

또한 55 바이트

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

온라인으로 사용해보십시오!

이렇게 12하면 공백이 19 번 인쇄 됩니다.


합과 코드 페이지?
MD XF

@MDXF 나는 합계를 기억하지 않지만 모두 ascii입니다.
밀 마법사

두 번째와 세 번째는 옳지 않은 것처럼 보이지만 (앞서 언급 한 문자열의 19 배와 20 배 인쇄) 둘 다 수정할 수 있지만 여기를 참조 하십시오 .
ბიმო


2

Cubix , 20 바이트, 코드 포인트 합계 1505

OuOOQ++OOOOU@>!OOO<

인쇄 할 수없는 문자를 포함합니다 DEL (ascii 127).

Q푸시 "(cubix에서 사용할 수있는 최대 규모의 상수), 다음 반복적으로 출력한다 ( O) 68또는 102충분한 시간에 그것을 얻을 수 68686868686868102102102102102있는 1505입니다 몇 가지 시행 착오를 통해 .(Cubix no-op 및 ASCII 46) 보다 81 점이 더 필요하다는 것을 깨달았습니다 DEL.

온라인으로 사용해보십시오!

큐브에서 :

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

1
내가 "Cubix"을보고 "읽기 입체적를 "내가 당신에게 현상금을 준 전에 자신을 타야했다 ... 한숨 +1
MD XF

@MDXF 챌린지 허용
Giuseppe


2

dc, 7 바이트, 합계 720 (ASCII)

[my]fff

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

출력 :

my
my
my

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


2

당근 , 4 바이트, 합 = 279 (ASCII)

]^*2

온라인으로 사용해보십시오!

인쇄 ]]]합니다.


이걸로 나보다 앞서 나는 정확한 금액을 얻는 데 가까운 곳이 없었습니다.
TheLethalCoder

@TheLethalCoder ASCII 합계 ^*3는 187이므로 해결을 시도했지만 x+187=4x정수 솔루션이 없었습니다. 나는에 갔다 그래서 ^*2, 어느 날이 186+x=3x내게 준 x으로 93의 코드 포인트, ]. 그게 내가 한 전부 야 :)
Kritixi Lithos

아 현명한 방법 :)
TheLethalCoder

그때도 효과가 있다고 가정 ¹^*1합니다. 내가 수학을 올바르게했다면 그것은 utf8이 아닌 유니 코드 값이지만.
TheLethalCoder

@TheLethalCoder Carrot은 기본적으로 ASCII를 사용하기 때문에 인코딩에 의존한다고 가정합니다.
Kritixi Lithos

2

큐빅 , 3 바이트, 합 = 105 (ASCII)

%4

세 번째 바이트는 DLE 이며 코드 포인트는 16 이므로 소스 코드의 코드 포인트 합계는
37 + 52 + 16 = 105입니다. 입니다.

이 프로그램은 인쇄

36

코드 포인트 합계는 51 + 54 = 105 입니다.

온라인으로 사용해보십시오!


* 구현 DLE * 죄송합니다. 유효하지 않습니다. : P +1
MD XF

오, 나는 여기에 다른 Cubically 솔루션을 보지 못했습니다. 으악!
TehPers

2

Cubix , 11 바이트, 바이트 합계 954 (ASCII)

암호:

vOw~N(!@O^|

산출:

998877665544332211

여기에서 확인되었습니다!

온라인으로 사용해보십시오!

Cubified :

    v O
    w ~
N ( ! @ O ^ | .
. . . . . . . .
    . .
    . .
  • N 10으로 스택을 초기화합니다
  • (! 진실에 대한 감소와 테스트
    • @ 제로 정지시
  • O^O 현재 번호 출력을 윗면으로 리디렉션하고 다시 출력
  • vw(루프를 다시 시작하려면 감소로 다시 리디렉션

달려 봐



1

자바 스크립트 (ES6), 6 바이트, 합계 = 385 (ASCII)

Y=>1E7

출력 10000000. 와 같은 다른 6 바이트 답변이 있습니다 h=>1e8. 이 코드 포인트 카운터를 사용해보십시오.

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



1

Gaia , 4 바이트, 합 176 ( SBCS )

6 5%

설명

Gaia의 코드 페이지에서 줄 바꿈의 코드 포인트는 x7F (십진수 127)입니다. 인쇄 가능한 ASCII 문자는 ASCII에서와 동일한 코드 포인트를 갖습니다.

이것은 1 인 6 모듈로 5를 계산 1하고 후행 줄 바꿈으로 인쇄합니다 .

코드 페이지 에서 문자의 바이트 값 (10 진수) :

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

1: 49 + 127 (줄 바꿈) = 176


1

트럼프 스크립트, 131 바이트, 합계 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

실제 생활은?

확인 .

그것이 존재 한다는 것을 알려주는 @MagicOctopusUrn에게 감사드립니다 .


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.