태그 보관물: kolmogorov-complexity

kolmogorov-complexity

Stack Exchange 사이트 아이콘에는 몇 개의 문자가 있습니까? & Landscaping Genealogy & Family History German Language Hardware

아직 자체 디자인이없는 Stack Exchange 사이트의 이름을 고려하여 아이콘에 몇 개의 ASCII 문자 (비 ASCII 문자는 별도로 계산 됨)가 있는지 결정하십시오. 코드는 다음 4 가지 경우를 구별해야합니다.

1 자 :

Astronomy
Beer
Freelancing
Health
History
Law
Music: Practice & Theory
Parenting
The Great Outdoors
Writers

2 자 :

3D Printing
Amateur Radio
Biblical Hermeneutics
Bitcoin
Board & Card Games
Buddhism
Chinese Language
Coffee
Community Building
Computational Science
Computer Graphics
Data Science
Earth Science
Ebooks
Economics
Emacs
Engineering
Expatriates
French Language
Gardening & Landscaping
Genealogy & Family History
German Language
Hardware Recommendations
Hinduism
Homebrewing
Islam
Italian Language
Japanese Language
Joomla
Lifehacks
Martial Arts
Mathematics Educators
Motor Vehicle Maintenance & Repair
Music Fans
Mythology
Open Data
Personal Productivity
Pets
Philosophy
Physical Fitness
Politics
Portuguese Language
Project Management
Puzzling
Quantitative Finance
Reverse Engineering
Robotics
Russian Language
Software Quality Assurance & Testing
Software Recommendations
Sound Design
Space Exploration
Spanish Language
Sports
Startups
Sustainable Living
Tridion
Vi and Vim
Video Production
Windows Phone
Woodworking
Worldbuilding

3 자 :

Cognitive Sciences
elementary OS
Ethereum
History of Science and Mathematics
Linguistics
Open Source
Programming Puzzles & Code Golf
Signal Processing
Tor

비 ASCII :

Anime & Manga
Arduino
Aviation
Chess
CiviCRM
Poker

ASCII가 아닌 문자를 이름으로 사용하는이 문제에서 제외되었습니다.

LEGO® Answers
Русский язык

코드는 4 개 세트 각각에 대해 일관된 고유 값을 출력해야합니다. 각 출력 (또는 함수에서 반환 된 문자열이 아닌 값에 대한 문자열 표현)은 선택적인 후행 줄 바꿈을 제외하고 10 바이트를 넘지 않아야합니다.

동일한 언어로 여러 코드를 만들 수 있습니다. 제출 결과는 고정 된 순서로 연결된 각 코드 조각의 결과로 간주되므로 Regex를 사용할 수 있습니다.

가장 짧은 코드가 승리합니다.



답변

CJam, 50 48 45 바이트

l22b391"þÁ "+{i%}/"Yª>Þÿ9cîÂcVáòe~"322b4b=

위의 문자열에는 인쇄 할 수없는 문자가 있습니다. 스 니펫으로 얻을 수 있습니다

[254 193 160]:c
[89 170 62 222 30 255 20 57 99 238 194 99 86 225 242 101 126 20]:c

또한 코드 포인트가 모두 256 미만임을 나타냅니다. 출력은 01 자, 12 자, 23 자 및 3비 ASCII입니다.

이 프로그램은 단순히 입력 문자열을 기본 22 숫자로 변환하고, 기본 4 인코딩 테이블에서 조회를 수행하기 전에 일련의 모듈러스를 수행하여 숫자를 줄입니다.

온라인으로 사용해보십시오 | 테스트 스위트


답변

망막 146 136 134 130 124 107 102 바이트

A\w*i|Che|CR|ke
4
my|Be|lan|^H.*y$|lt|aw|:|Pa|Ou|Wr
1
gn.|^e|Et|^H.*S|gui|rc|lf|To
2
.*(\d).*
$1
..+
3

4 바이트를 골라 낸 @ Sp3000에게 감사합니다! 그의 대답
에서 정규식을 사용할 수있게하여 17 바이트를 골라내는 @ Mwr247에게 감사드립니다 !
출력 값을 변경할 수 있음을 상기시켜 5 바이트를 골라내는 @ jimmy23013에게 감사드립니다!

출력은 1 문자, 2 문자, 3 문자 및 비 ASCII의 경우 각각 1, 3, 2 및 4입니다.

모든 테스트 케이스가 포함 된 버전은 여러 줄에서 작동하도록 몇 군데에서 수정되었습니다.

온라인으로 사용해보십시오!
모든 테스트 케이스와 함께 온라인으로 사용해보십시오!


답변

ES6에 javscript, 342 339 330 327 바이트

a=>{for(c of "9As4BebFr6He7Hi3LaoMu9PaiTh7Wrzb3DdAmlBi7BiiBo8BugCh6CoiColCohCocDadEa6Eb9Ec5EmbEnbExfFrnGaqGefGeoHa8HibHo5IsgIthJa6Jo9LicMalMayMoaMu9My9OplPe4PeaPhgPh8PojPoiPr8PukQujRe8RogRu10SooSocSohSpgSp6Sp8StiSu7TraVigVidWibWodWoziCodel8EtyHibLibOpvPrhSi3To".split`z`)if(~c.indexOf(a.length.toString(36)+a[0]+a[1]))return c}

9한 문자로 시작하는 긴 문자열 , 두 문자로 시작 하는 다른 긴 문자열 b, 세 번째로 시작하는 세 번째 문자열 i및 단순히 undefinedASCII가 아닌 경우를 반환합니다 .


답변

PowerShell을 212 181 바이트

$a=-join$args[0][0,2,-1];$b="Aty,Ber,Feg,Hah,Hsy,Lww,Msy,Prg,Tes,Wis,Cgs,eeS,Ehm,Hss,Lns,Oee,Pof,Sgg,Trr,Aia,Ado,Ain,Ces,CvM,Pkr".IndexOf($a);(((1,3)[$b-ge40],4)[$b-ge76],2)[$b-lt0]

가능한 모든 항목의 첫 번째, 세 번째 및 마지막 문자를 [0,2,-1]인덱싱하면 (0 인덱싱 된 경우) 각 항목마다 고유 한 3 문자 문자열을 얻습니다. 그런 다음 단순히 문자열 기반 조회를 사용하여 어떤 것이 있는지 확인합니다.

input을 가져 와서 $args[0]위의 고유 기능을 적용하고로 저장합니다 $a.

그런 다음 조회 목록을 통해 전송 .IndexOf($a)되고 결과는에 저장됩니다 $b. 그런 다음 $b적절한 값을 출력하기 위해 의 값을 기준으로 색인을 생성하는 의사 삼항을 살펴 봅니다.

출력 1, 2, 3, 및 4한 문자, 두 문자, 각각 세 문자, ASCII가 아닌,합니다.

편집-발견 된 [0,2,-1]각 항목에 대해 고유 한 3 문자 문자열을 생성하여 31 바이트를 절약합니다.


답변

자바 스크립트 (ES6), 108 바이트

a=>[/A\w*i|Che|CR|ke/,/my|Be|lan|^H.*y$|lt|aw|:|Pa|Ou|Wr/,/gn.|^e|Et|^H.*S|gui|rc|lf|To/].map(b=>+b.test(a))

세 개의 가장 작은 그룹 (1 자, 3 자 및 비아 스키) 각각에 고유 한 정규식 일치로 구성된 배열을 만든 다음 각 배열의 데이터에 대한 테스트를 매핑합니다. 출력이 문자열 1,0,0화되면 ASCII가 아닌 0,1,0문자, 3 자, 0,0,11 자 및 0,0,02 자로 평가됩니다.


답변