Đặt tên cho Hadrons


19

Thử thách

Đưa ra một thành phần quark của một hạt làm đầu vào, xuất ra tên của hadron tương ứng.

Quark sẽ được đại diện bởi một chữ cái viết hoa và phản vật chất bằng một chữ cái viết thường.

Các quark có thể theo bất kỳ thứ tự nào, không nhất thiết phải theo thứ tự dưới đây.

Các hàm tích hợp, dữ liệu truy cập về các hạt và / hoặc quark không được phép.

Các quark duy nhất bạn sẽ được cung cấp là U (up), u (antiup), D (down), d (antidown), S (lạ), s (antistrange), C (charm), c (anticharm), B ( đáy hoặc vẻ đẹp), b (kháng sinh hoặc kháng khuẩn).

Danh sách Hadrons và các thành phần quark của họ

Lưu ý rằng mặc dù có nhiều loại hadron khác như pentaquarks và glueballs, v.v., bạn chỉ cần hỗ trợ các hadron được đưa ra trong danh sách sau

Baryons (QQQ) và Antaryons (qqq)

Tên trong ngoặc là tên thay thế cho các hạt. Bạn có thể xuất tên.

Input - Output

UUU - delta++
uuu - antidelta++
UUD - delta+ (proton)
uud - antidelta+ (antiproton)
UDD - delta0 (neutron)
udd - antidelta0 (antineutron)
DDD - delta-
ddd - antidelta-
UUS - sigma+
uus - antisigma+
UDS - sigma0
uds - antisigma0
DDS - sigma-
dds - antisigma-
USS - xi0
uss - antixi0
DSS - xi-
dss - antixi-
SSS - omega-
sss - antiomega-

UUC - charmed sigma++
uuc - charmed antisigma++
UDC - charmed sigma+
udc - charmed antisigma+
DDC - charmed sigma0
ddc - charmed antisigma0
UUB - bottom sigma+
uub - bottom antisigma+
UDB - bottom sigma0
udb - bottom antisigma0
DDB - bottom sigma-
ddb - bottom antisigma-
USC - charmed xi+
usc - charmed antixi+
DSC - charmed xi0
dsc - charmed antixi0
UCC - double charmed xi++
ucc - double charmed antixi++
DCC - double charmed xi+
dcc - double charmed antixi+
USB - bottom xi0
usb - bottom antixi0
DSB - bottom xi-
dsb - bottom antixi-
UBB - double bottom xi0
ubb - double bottom antixi0
DBB - double bottom xi-
dbb - double bottom antixi-
UCB - charmed bottom xi+
ucb - charmed bottom antixi+
DCB - charmed bottom xi0
dcb - charmed bottom antixi0
SSC - charmed omega0
ssc - charmed antiomega0
SSB - bottom omega-
ssb - bottom antiomega-
SCC - double charmed omega+
scc - double charmed antiomega+
SCB - charmed bottom omega0
scb - charmed bottom antiomega0
SBB - double bottom omega-
sbb - double bottom antiomega-
CCB - double charmed bottom omega+
ccb - double charmed bottom antiomega+
CBB - charmed double bottom omega0
cbb - charmed double bottom antiomega0
CCC - triple charmed omega++
ccc - triple charmed antiomega++
BBB - triple bottom omega-
bbb - triple bottom antiomega-

Meson (Qq)

Input - Output

Ud - pion+
Uu - pion0
Dd - pion0
Du - pion-
Us - kaon+
Ds - kaon0
Sd - antikaon0
Su - kaon-
Ss - phion0
Cd - D meson+
Dc - D meson-
Cu - D meson0
Uc - antiD meson0
Cs - strange D meson+
Sc - strange D meson-
Cc - psion0
Bu - B meson-
Ub - B meson+
Db - B meson0
Bd - antiB meson0
Sb - strange B meson0
Bs - strange antiB meson0
Bb - upsilon0

Chiến thắng

Mã ngắn nhất trong byte thắng.


11
Các hàm tích hợp, dữ liệu truy cập về các hạt và / hoặc quark không được phép. Tôi đang nhìn bạn, Mathicala.
Okx

Vì vậy, thách thức này thực chất là nén aa tra bảng?
Rohan Jhunjhunwala

3
Mathematica không có ParticleDatachức năng với một QuarkContenttùy chọn.
Ian Miller

1
Không có vẻ khó khăn. Ý tôi là, mỗi quark có điện tích riêng, bạn chỉ phải xử lý tên chứ không phải sạc.
Matthew Roh

1
1. Dường như các baryon có thể là bất kỳ sự kết hợp nào của 3 quark của cùng một trường hợp. Meson là sự kết hợp của 2 quark của trường hợp ngược lại, nhưng đối với meson CbBcbị thiếu. Đây có phải là cố ý? 2. Sắp xếp các chữ cái khác nhau có nghĩa là cùng một điều - phải chăng chương trình của chúng tôi có thể xử lý các thứ tự khác nhau của các chữ cái, hoặc chúng sẽ luôn được sắp xếp như hiển thị? (tức là nó sẽ luôn luôn là UDSví dụ hay nó có thể SUDhoặc DSUví dụ?) Tương tự như vậy đối với meson chúng ta có thể có uD?
Cấp sông St

Câu trả lời:


5

SOGL 0.11 , 341 339 333 310 305 305 300 byte

‘θw±
on”≥
0c{≤
”=?"▒
on0”←"█
c SW?"▲
?ļ0←j ►
?"anti”o}▼
SD”;W¡+}□
=?ļ-←ļ+←■
‘B≤a=+}:?"⁽¬Τk⅜K±l?@+}ob@+o}▓
UCl2-? CA"K¼⁶▓ BA"δ╬▓cd≠▼≤: U=; D=++}"8}↕x╔:⁵F┘¹±o≤"B□"κ§)Ƨ7%s±p←"Ss▒phi█Cc▒psi█Bb▒upsil█SdUcBd”2n{=▼}≤"U□1>?▲ka≥pc DW►S■"pi≥Pcρ►D■▲)»β⁴‘o}ƧBs=▼ Dc BW?X B}" mes≥+p"D═S┐╔¬ν↑FνF⌠V3╗βstA\≈²‘:cW2+Wp

12

JavaScript (ES6), 456 448 431 420 byte

Mã này chỉ sử dụng hai bảng tra cứu nhỏ:

  • một để xác định các quark: 'CUBDScubds'
  • một số khác để phát hiện tiền tố 'chống' của Mesons: 'SdUcBdBs'

Mọi thứ khác được suy luận từ các quark.

(s,[a,b]=[...s].map(c=>(i='CUBDScubds'.search(c)%5,m|=1<<i,j+=i<2,k+=i&1,p+=i?i-2?'':'bottom ':'charmed ',i),m=j=k=0,p=''))=>s[2]?p.replace(/(\w+) \1( \1)?/,(_,a,b)=>b?'triple'+b:'double '+a)+(s>'Z'?'anti':'')+['omega','xi','sigma','delta'][k]+('-0+'[j]||'++'):(m&16&&m&5?'strange ':'')+(~'SdUcBdBs'.search(s)?'anti':'')+(m&1?m^1?'D mes':'psi':m&4?m^4?'B mes':'upsil':m&16?m^16?'ka':'phi':'pi')+'on'+'-0+'[(a<2)-(b<2)+1]


2

Perl 5, 318 byte

$_=<>;$h=qw/- ++ + 0/[y/uc//*2*($i=3-map{${lc;}++}/./g)-$u-$c-$i];$a=($i?!$h&&/[dUB]/:/[a-z]/)&&anti;map{/(.)/;$q.=("","$_ ","double $_ ","triple $_ ")[$$1]}charmed,bottom;print(($i?($u+$d>1?pi:$s>1?phi:$c>1?psi:$b>1?upsil:$c+$b?($s?"strange $a":$a).($b?B:D).' mes':$a.ka).on:$q.$a.qw/omega xi sigma delta/[$u+$d]).$h)

Dòng mới được thêm vào để dễ đọc (hơi):

$_=<>
$h=qw/- ++ + 0/[y/uc//*2*($i=3-map{${lc;}++}/./g)-$u-$c-$i]
$a=($i?!$h&&/[dUB]/:/[a-z]/)&&anti
map{/(.)/;$q.=("","$_ ","double $_ ","triple $_ ")[$$1]}charmed,bottom;
print(($i?($u+$d>1?pi:$s>1?phi:$c>1?psi:$b>1?upsil:$c+$b?($s?"strange $a":$a).($b?B:D).' mes':$a.ka).on:$q.$a.qw/omega xi sigma delta/[$u+$d]).$h)
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.