गोल्फस्क्रिप्ट - 13 बाइट्स, 1315 आउटपुट
991,{`.$2>>},
उपरोक्त उन नंबरों को 0-990 से चुनता है, जिनका पहला अंक संख्या का सबसे बड़ा अंक है, यानी सॉर्ट किए गए स्ट्रिंग प्रतिनिधित्व का अंतिम अंक, स्ट्रिंग की तुलना में शाब्दिक रूप से कम है। तर्क निम्नलिखित है:
3 अंकों वाले नंबर के लिए एबीसी , अगर एक नंबर के सबसे बड़े अंकों नहीं है, संख्या, छोड़ी नहीं जा मेरी क्योंकि यह बाद में दो मामलों में से एक में शामिल किया जाएगा:
b <c (उदाहरण 123 )
क्योंकि c सबसे बड़ा अंक है, संख्या टैक्सी को छोड़ नहीं दिया जाएगा। इस उदाहरण में 312 को छोड़ दिया जाएगा, और न ही अगला मूल्य 313 होगा , जिसे समाप्त होने पर ( 312 313 ) में 123 शामिल हैं।
b largest c (उदाहरण 132 )
क्योंकि b सबसे बड़ा अंक है, संख्या bca को छोड़ा नहीं जाएगा। इस उदाहरण में 321 को छोड़ा नहीं जाएगा, और न ही अगले मूल्य 322 को , जिसे समाप्त होने पर ( 321 322 ) में 132 शामिल होंगे। यदि b = c (उदाहरण 122 ), यह मामला भी लागू होता है। मान bca को पहले की तरह स्किप नहीं किया जाएगा, और क्योंकि a आवश्यक रूप से b से कम है, bc <a + 1> को भी नहीं छोड़ा जाएगा। इस उदाहरण में, 221 222 में 122 शामिल हैं।
क्योंकि उपरोक्त कोड तीसरे अंक का परीक्षण करता है, बल्कि अंतिम रूप से सख्ती से, परिणाम में 0-99 से सभी मान शामिल हैं। हालाँकि, 1-99 से मानों को छोड़ दिया जा सकता है, क्योंकि यदि प्रत्येक 3-अंक अनुक्रम मौजूद है, तो प्रत्येक 1-अंक और 2-अंक अनुक्रम भी मौजूद होना चाहिए।
991-999 के मान भी छोड़े जा सकते हैं, क्योंकि ( 909 910 , 919 920 , ... 989 990 ) से उत्पन्न होते हैं ।
उत्पादन के 1315 बाइट्स पर, यह आराम से 1500 से कम की समस्या के विनिर्देश के तहत है।
आउटपुट:
0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101110111200201202210211212220221222300301302303310311312313320321322323330331332333400401402403404410411412413414420421422423424430431432433434440441442443444500501502503504505510511512513514515520521522523524525530531532533534535540541542543544545550551552553554555600601602603604605606610611612613614615616620621622623624625626630631632633634635636640641642643644645646650651652653654655656660661662663664665666700701702703704705706707710711712713714715716717720721722723724725726727730731732733734735736737740741742743744745746747750751752753754755756757760761762763764765766767770771772773774775776777800801802803804805806807808810811812813814815816817818820821822823824825826827828830831832833834835836837838840841842843844845846847848850851852853854855856857858860861862863864865866867868870871872873874875876877878880881882883884885886887888900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990
भिन्नता # 1
14 बाइट्स, 1233 आउटपुट
991,{`.$-1>>},
तुलना के लिए अंतिम अंक को कड़ाई से चुनने के बजाय, तीसरे के बजाय, 100 से कम अनावश्यक मानों को समाप्त कर दिया जाता है, जिसके परिणामस्वरूप स्ट्रिंग को छोटा कर दिया जाता है।
101120212230313233404142434450515253545560616263646566707172737475767780818283848586878890919293949596979899100101110111200201202210211212220221222300301302303310311312313320321322323330331332333400401402403404410411412413414420421422423424430431432433434440441442443444500501502503504505510511512513514515520521522523524525530531532533534535540541542543544545550551552553554555600601602603604605606610611612613614615616620621622623624625626630631632633634635636640641642643644645646650651652653654655656660661662663664665666700701702703704705706707710711712713714715716717720721722723724725726727730731732733734735736737740741742743744745746747750751752753754755756757760761762763764765766767770771772773774775776777800801802803804805806807808810811812813814815816817818820821822823824825826827828830831832833834835836837838840841842843844845846847848850851852853854855856857858860861862863864865866867868870871872873874875876877878880881882883884885886887888900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990
भिन्नता # 2
16 बाइट्स, 1127 आउटपुट
991,99>{`.$2>>},
99 से कम पहले से सभी मानों को बंद करके , परिणामी स्ट्रिंग को और भी छोटा किया जा सकता है।
99100101110111200201202210211212220221222300301302303310311312313320321322323330331332333400401402403404410411412413414420421422423424430431432433434440441442443444500501502503504505510511512513514515520521522523524525530531532533534535540541542543544545550551552553554555600601602603604605606610611612613614615616620621622623624625626630631632633634635636640641642643644645646650651652653654655656660661662663664665666700701702703704705706707710711712713714715716717720721722723724725726727730731732733734735736737740741742743744745746747750751752753754755756757760761762763764765766767770771772773774775776777800801802803804805806807808810811812813814815816817818820821822823824825826827828830831832833834835836837838840841842843844845846847848850851852853854855856857858860861862863864865866867868870871872873874875876877878880881882883884885886887888900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990
गोल्फस्क्रिप्ट - 19 बाइट्स, 1016 आउटपुट
910,99>{`.2$\?)>+}/
उपरोक्त संख्या 99 से 909 तक है , जो पहले से प्रकट नहीं हुई है ( 909 सामान्य रूप से इस तरह जोड़ा गया अंतिम मूल्य होगा) को जोड़ते हुए। बढ़ते 99 सामने से एक अनुकूलन की जरूरत से बचने के लिए है 910 पीछे।
आउटपुट:
99100101102103104105106107108109111112113114115116117118119120122123124125126127128129130132133134135136137138139140142143144145146147148149150152153154155156157158159160162163164165166167168169170172173174175176177178179180182183184185186187188189190192193194195196197198199200202203204205206207208209222223224225226227228229230233234235236237238239240243244245246247248249250253254255256257258259260263264265266267268269270273274275276277278279280283284285286287288289290293294295296297298299300303304305306307308309333334335336337338339340344345346347348349350354355356357358359360364365366367368369370374375376377378379380384385386387388389390394395396397398399400404405406407408409444445446447448449450455456457458459460465466467468469470475476477478479480485486487488489490495496497498499500505506507508509555556557558559560566567568569570576577578579580586587588589590596597598599600606607608609666667668669670677678679680687688689690697698699700707708709777778779780788789790798799800808809888889890899900909
गोल्फस्क्रिप्ट 26 बाइट्स, 999 आउटपुट
909.,99>{`..$.2><3$@?+>+}/
ध्यान दें कि 1016 चरित्र स्ट्रिंग पिछले समाधान द्वारा उत्पादित लगभग इष्टतम है, में से प्रत्येक के कई के लिए दो अतिरिक्त अंक होने के अलावा 111 (यानी 11111
के बजाय 111
, 22222
के बजाय 222
, आदि)। इन अतिरिक्त अंकों को हटाकर (इन मानों में से प्रत्येक के बजाय केवल एक अंक को तीन से घटाकर) हल किया जा सकता है, और 909
आगे की ओर घूमते हुए, इसे हटा दिया जाता है 9
(यह पिछले संस्करणों से भिन्न होता है, जो 9100
इसके बजाय पीछे की ओर चला जाता है) )।
अनियंत्रित और टिप्पणी:
909.,99> # add 909 to the stack, and duplicate
# create an array from 0..908, and
# remove the first 99 elements (99..908)
{
`.. # stringify, duplicate twice
$.2>< # non-divisibility by 111 check
# true if the last char of the sorted
# string is greater than the first char
3$@? # first position of this number in
# the total string so far (-1 if not found)
+> # add the two previous results,
# and slice from that point
# (see explanation below)
+ # concat what remains to the total string
}/ # loop over the set
यह चुनने के लिए कि कौन से वर्णों को जोड़ा गया है तर्क तीन मामलों का अनुसरण करता है:
- 111 the n , n The s
पहले चेक से मान 1 है , और दूसरे -1 से ।
सूचकांक 0 से स्लाइस शुरू होगा; यह पूरी स्ट्रिंग लौटाएगा।
- 111 ∤ एन , एन ⊂ s
पहली जांच से मूल्य है 1 , और दूसरा कुछ से ≥ 2 ।
टुकड़ा सूचकांक will 3 से घूरना शुरू कर देगा; यह एक खाली स्ट्रिंग लौटेगा।
- 111 | n , n ⊄ s
पहली जांच से मूल्य है 0 , और दूसरा से -1 ।
सूचकांक -1 से टुकड़ा शुरू होगा; यह अंतिम पात्र को ही लौटाएगा।
तर्क का योग यह है कि कोई भी मूल्य जो अभी तक प्रकट नहीं हुआ है, पूरे में जोड़ा जाएगा - जब तक कि यह 111 का गुणक न हो , उस स्थिति में केवल एक वर्ण ही जोड़ा जाएगा। अन्य सभी मूल्यों की अनदेखी की जाएगी।
ध्यान दें कि उत्पादित स्ट्रिंग पीटर टेलर के उत्तर द्वारा उत्पादित इष्टतम से भिन्न है ।
इतिहास:
899,{101+.111%{`.2$\?0<*}{3/9%}if+}/
899,{101+`.2$\?0<\.~111%2*)<*+}/0
899,{101+`.2$\?0<\..2>-!2*>*+}/0
899,{101+`...2>|,1|<2$@?0<*+}/0
999,{`..$.2>>2*>2$@?0<*+}/3>0
899,{101+`..$.2><3$@?+>+}/0
आउटपुट:
909910010110210310410510610710810911121131141151161171181191201221231241251261271281291301321331341351361371381391401421431441451461471481491501521531541551561571581591601621631641651661671681691701721731741751761771781791801821831841851861871881891901921931941951961971981992002022032042052062072082092223224225226227228229230233234235236237238239240243244245246247248249250253254255256257258259260263264265266267268269270273274275276277278279280283284285286287288289290293294295296297298299300303304305306307308309333433533633733833934034434534634734834935035435535635735835936036436536636736836937037437537637737837938038438538638738838939039439539639739839940040440540640740840944454464474484494504554564574584594604654664674684694704754764774784794804854864874884894904954964974984995005055065075085095556557558559560566567568569570576577578579580586587588589590596597598599600606607608609666766866967067767867968068768868969069769869970070770870977787797807887897907987998008088098889890899900