неделя, 30 март 2014 г.

вторник, 15 март 2011 г.

Задача по математика за IV клас

Интересна задача от Олимпиадата по математика за четвърти клас:

Задача 3. Да се реши числовият ребус abcd*a=eeeed ,  в който на еднаквите букви отговарят еднакви цифри, а на различните букви отговарят различни цифри.
На пръв поглед brute force решението е очевидно:
svilen@buhtum:~$ perl -e 'for$a(1..9){@r=(0..9);for$b(@r){for$c(@r){for$d(@r){for$e(@r){print"$a$b$c$d*$a=$e$e$e$e$d\n" if "$a$b$c$d"*$a=="$e$e$e$e$d"}}}}}'
След това се сетих, че четвъртокласниците едва ли имат компютър под ръка, затова трябва да има и друго решение.

Очевидно е, че "a" не може да е 0, 1 или 2, защото няма как при умножение да стане 5 цифрено число (2999*2 < 10000). Произведението d*a трябва да завършва на d. Щом "a" не може да е едно, (x*1=x), то пробваме останалите комбинации: кои числа при умножението си ще дадат число, което завършва на който и да е от двата множителя:

3*4=12
3*5=15 <<<<<
3*6=18
3*7=21
3*8=24
3*9=27
4*5=20
4*6=24 <<<<<
4*7=28
4*8=32
4*9=36
5*6=30
5*7=35 <<<<<
5*8=40
5*9=45 <<<<<
6*7=42
6*8=48 <<<<<
6*9=54
7*8=56
7*9=63
8*9=72


Само 5 произведения отговарят на условието, заменяме буквите със съществуващите числа:

3*5=15: 3bc5*3=eeee5
4*6=24: 6bc4*6=eeee4
5*7=35: 5bc7*5=eeee5
5*9=45: 5bc9*5=eeee5
6*8=48: 8bc6*8=eeee8

Тъй като "bc" комбинацията може да бъде от 00 до 99, то търсим 5 цифрено число с първи 4 еднакви цифри, различни от "a" и "d", и завършващо на "d", в интервалите

3005*3 < eеееd < 3995*3 -> 9015 < eеееd < 11985 -> 11115
6004*6 < eеееd < 6994*6 -> 36024 < eеееd < 41964 -> няма такова (най-близки 33336 или 44446)
5007*5 < eеееd < 5997*5 -> 25035 < eеееd < 29985 -> няма такова (най-близки 22225 или 33335)
5009*5 < eеееd < 5999*5 -> 25045 < eеееd < 29995 -> няма такова (най-близки 22225 или 33335)
8006*8 < eеееd < 8996*8 -> 64048 < eеееd < 71968 -> 66668, но няма как да стане защото "e" (6) трябва да е различно от "d" (6)

Следователно числото "e"=1, 11115/3=3705

Следователно: 3705*3=11115

петък, 20 август 2010 г.

Do not recycle - repair!

The Repair Manifesto
11 причини - добре казано...

Батерия от лимон

1 лимон, монета от 5 стотинки, болт, проста схема и светодиод = fun!

Медта в сплавта на 5-те стотинки, цинка, който защитатава болта от корозия и киселината от лимона, създават батерия с електродвижещо напрежение около 0.8 V. Това не е достатъчно да запали светодиод, затова се намесва електронната схема (създадена от изгоряла енергоспестяваща крушка). Тя представлява може би най-простия генератор (на около 40 kHz), който успява да акумулира (чрез индукция) достатъчно енергия за да запали светодиода. Ето и на живо:

четвъртък, 27 май 2010 г.

Абитуриенти

1, 2, 3, 4, 5, 6, 7, 8, 9, 0xA, 0xB, 0xC.... фииииииу

Български за начинаещи

Ако българският Ви език е малко "ръждясал", ето едно кратко четиво за опресняване. Интересни факти:
  • Точката след арабска цифра означава, че тя трябва да се чете като съответното числително редно.

    5. клас = пети клас
  • Когато абревиатурата, включително имената на програми, се състои от шест или повече букви, тя се пише с начална главна и последващи малки букви:
    Юнеско, Евратом
    Когато абревиатурата е само до пет символа, тя се пише с главни букви:
    ТАРИК, ОВППС, ЕИО, ЕО
  • "двама ученици, трима директори, петима студенти", а не двама ученика, трима директора, петима студента
Neat!

сряда, 26 май 2010 г.

Програмиране за удоволствие

Ако цял ден се се занимавал с "enterprise" софтуер, то понякога е много приятно да програмираш за нещо с 25 байта оперативна памет, а изпълнимия код е не повече от 1024 байта. "Recreational programming" тъй да се каже.
PIC12F509 e интегрална схема, която е миниатюрен "компютър" с памет (25 байта RAM, 1024 ROM), процесор (4 MHz), асемблер и двоични интефейси (4). Струва точно 1.17 лв. без ДДС ;). Какво може са направи човек с една такава схема - примерно електронно зарче:


Sweet!

понеделник, 24 май 2010 г.

24 май - денят на CP1251, UTF8

По случай днешния празник и почивен ден (в този ред), няколко прости правила как да се справяте с "маймуницата" - общия прародител на кирилицата, латиницата, чатицата и шльокавицата:

  1. Ако текста, който виждате има много "Р", значи гледате UTF8 файл с кодиране CP1251. Решение, сменете кодировката на CP1251.
  2. Ако текста, който виждате има разменени малки и големи кирилски букви, но е безсмислен, значи гледате CP1251 кодиран текст с кодировка KOI8-R или обратното. Решение, сменете кодировката на CP1251 (или KOI8-R).
  3. Ако текста който виждате има само въпросителни (????), значи гледате или CP1251 или KOI8-R файл като UTF8. Решение, сменете кодировката на CP1251 или KOI8-R. Друг проблем е може да е шрифта, който използвате няма кирилски символи.
За да няма такива проблеми с Вашия софтуер, хвърлете едно око на най-добрия документ обясняващ какво е Unicode. Да живее Unicode и кирилицата (в Unicode има глаголица, за по-консервативните от вас).

събота, 22 май 2010 г.

Iron man - най-големия

Имам нов любим филм за супер герои - Iron Man. Първо беше Батман (защото само това имаше във видеотеката), след това Спайдер-мен (заради ироничните подмятания към супервъзможностите), а сега е Железния човек (въпреки, че както сам казва - "защо ми викат железен, като костюма е от титан"). Дано втората част не е станала бозава - всъшност - няма значение, нали участва Скарлет Йохансон...

петък, 21 май 2010 г.

Google и 30 години от създаването на Pac-Man


Това не е обикновено "юбилейно" лого, а истинска игра, която може да се играе. Подсказка - играе се със стрелките ;)

EDIT: Я то имало и звук, ама в друг браузър (Chrome). Благодаря на коментиращите - и да, съжалявам - но не знам как се спира звука...

EDIT 2: Чак сега забелязах че "I'm feeling lucky" е "Insert Coin", LOL. Чакам с нетърпение Mario Bros.

Свободен шрифт - Droid


sudo apt-get install ttf-droid
Изключително добър, многоезичен и свободен шрифт. Изглежда супер на допотопен 1024x768 мониторjavascript:void(0)

сряда, 14 април 2010 г.

Пароли

ИнтереснаЗадължителна статия за това как трябва да се съхраняват и обработват пароли в приложенията, защо използването на еднопосочна хеш функция (MD5/SHA1) не е достатъчно, какво е "salt" и други интересни неща. За да не берете срам като Apache.org.

петък, 11 декември 2009 г.

Новия български

Дали се казва "кликам" или "щракам", "принтирам" или "печатам" - няма значение! Новите думи днес са "антиейджинг", "реджувенейшън" и любимото ми "трендсетър". Ъхъ, я!

Надявам се да получа още повече хитове от сърч енджините за да пъблишна фъни скрийншоти на лейм кийуърд търсения. Оле!

сряда, 2 септември 2009 г.

Романтика


Взето без разрешение от Страница на силистренските радиолюбители. Страхотен сайт, в който има сканирани български книги и списания на техническа тематика от едно време. Сещатате се - "Аз управлявам ЛАДА", "Радио Телевизия Електроника", поредицата "Космос" и разбира се изключително ценното ръководство, а именно - "Домашно консервиране" на Т. Хаджийски et al, издателство "Земиздат" от 1972 година.

понеделник, 26 януари 2009 г.

Провал

Днес успях да реша един проблем, на който търся решение вече четири месеца и все провал.

понеделник, 12 януари 2009 г.

HOWTO: sniff mysql queries with Wireshark

Very simple sniffer for mySQL executed on the server:

svilen@svi:~$ sudo tshark port 3306 -i lo -R mysql.query -Tfields -e mysql.query
Running as user "root" and group "root". This could be dangerous.
Capturing on lo
show tables
SELECT DATABASE()
show databases
show tables
select * from user


Change the interface (-i lo) if you are not running on the same server.

сряда, 17 декември 2008 г.

Баскетболни фантазии

Най-доброто клипче с баскетболни номера, което някога съм гледал!

(And1 the best)