*
  Мысли   Галерея   Проекты   Тексты  
  Мысли   Галерея   Проекты   Тексты  
Giver: 99 бутылок  (2009-04-14 20:15:19)

Играли каналом в 99 бутылок пива по полному тексту, я писал сначала на схеме, затем на перле, резульатат на схеме — 404 байта, перл - 272. Scheme:

(let* ((& string-append)(b " bottle")(o " of beer")
(w " on the wall")(t ".nTake one down and pass it around, ")(m " more")(q(& b "s" o)))
(define (s . z)(map display z))(define (v n N g)(s t n g w ".nn" N g w ", " n g))
(define (f n e) (v n n q)(if (= n 2)(begin(v 1 1 (& b o))(v "no" "No" (& m q))
(s"nGo to the store and buy some" m ", 99" q w "."))
(f (- n 1) 's)))(s 99 q w ", " 99 q)(f 98 's) 0)

Perl:

$b=$q=" bottles of beer";$b=~tr/s//d;$w=" on the wall";
sub p{print @_}sub v{($n,$g)=@_;p
".nTake one down and pass it around, $n$g$w.nn".uc($n)."$g$w, $n$g"}
p "99$q$w, 99$q";v 98-$_,$q for 0..96;v 1,$b;v "n","o more$q";p
"nGo to the store and buy some more, 99$q$w."

Итого финишировал вторым. Первое место занял парень на dc с результатом 266 байт. Правда потом нашли соревнование взрослых дядь, но текст у них упрощен. Зато лучший результат 165 байт на перле, как и вся десятка лучших, кроме девятой позиции на PHP

UPD: После упорного колупания пёрла удалось вырваться на первое место со счетом 216, а "взрослые дяди", как оказалось, играют по сокращенному тексту, без последнего куплета. Вот что вышло после изменений:

print 99,$q=" bottles of beer",$w=" on the wall",$m=", 99$q",(map{/^1 /&&s/s//;$l=lc;".
Take one down and pass it around, $l$w.

$_$w, $l"}((map-$_.$q,-98..-1),"No more$q")),".
Go to the store and buy some more$m$w."

Попутно уловил баг перла — lc модифицировала $_ при обращении к ней, после пересборки перла баг исчез.


gXVztgFhZU от 2015-05-27 16:41:38:
6shU6w mwpohfaaxrog, [url=http://ladzsagdxrlm.com/]ladzsagdxrlm[/url], [link=http://jjxviehzvogw.com/]jjxviehzvogw[/link], http://qkxqgbksbyid.com/
http://www.charopf.com/gucci-outlet/ от 2016-03-17 08:54:59:
I'd like to obtain choose the kindle buy amazon version of Vector' but precisely how might I then obtain the DVD? would it be down-loadable? Gucci Outlet Online
http://www.charopf.com/gucci-outlet/ от 2016-03-17 10:55:58:
Mesothelioma malignancies are classified as the malignancies that will happen within the mesothelium tissues. Mesothelium normally may be the title of muscle that will versions blackout lining of varied technique internal organs similar to coronary heart, voice, abdominal along with reproductive internal organs. The lining all-around stomach internal organs is termed peritoneal membrane. Liner around voice generally known as pleural membrane while the lining around coronary heart is referred to as pericardium. Gucci Shoes
Renatokig от 2017-05-27 00:38:53:
Полностью разделяю Ваше мнение. Это отличная идея. Я Вас поддерживаю. ----- Снять квартиру в аликанте испания без посредников долгосрочно | http://save.benidormapartment.ru/
WilliamdaL от 2017-11-15 01:30:57:
Eat and lose weight in 15 days: https://sites.google.com/site/weightlossluxury/how-to-lose-weight-40-fast-easy-tips Food for Google: all natural weight loss pill science diet weight loss dogs walking study weight loss weight loss center portland oregon medi weight loss staten island did john from biggest loser keep weight off oatmeal and protein powder for weight loss quick start weight loss program power diet quick weight loss
Имя:
Комментарий: