Автор: Mrrl›
« : 24/01/2005, 15:07:30 »Цитата из: Heledirn on 03-12-2004, 19:10:19
Такая вот задача: есть массив, нужно получить из него другой, выбрав по условию определенные элементы. Как это сделать наиболее просто. На любом языке.
какой-то диалект LISP (но я не писал на нем лет 8, так что наверняка с ошибками)
Код:
(remove nil (mapcar (lambda (x) (and (test x) x)) a))
предполагается, что nil в исходном массиве нет или что (test nil) не выполняется.
предполагается, что nil в исходном массиве нет или что (test nil) не выполняется.
Автор: Mrrl›
« : 21/01/2005, 09:42:10 »Точки на окружности представлены 32-битными целыми числами (каждому числу соответствует своя точка, полная длина окружности равна 2^32). Заданы две дуги: одна от a до b, другая - от c до d (концы включаются. Например при a=-2, b=2 дуга состоит из 5 точек, а при a=2, b=-2 - из 2^32-3). Как проще всего проверить, есть ли у этих дуг общие точки?
Автор: Mrrl›
« : 20/01/2005, 20:58:57 »На C#:
Код:
ArrayList a=new ArrayList();
foreach(object x in b) if(cond(x)) a.Add(x);
Интроспективная программа - 104 символа (не проверялось)
foreach(object x in b) if(cond(x)) a.Add(x);
Интроспективная программа - 104 символа (не проверялось)
Код:
Цитата из: Dalen on 21-07-2004, 06:41:52
Цитата:
Есть такая фича: попробовать написать самую короткую программу, воспроизводящую свой текст, на определённом языке.
.bat:
echo
Не помню, как оно было в ДОСе. Сейчас под 2000 у меня это не работает (команда echo без параметров пишет, включен ли режим вывода).
Цитата:
Есть такая фича: попробовать написать самую короткую программу, воспроизводящую свой текст, на определённом языке.
.bat:
echo
![Улыбающийся :)](//tolkien.su/forum/Smileys/classic/smiley.gif)
Цитата:
2. А вот есть у меня алкоритм архиватора сжимающего любой файл до 1 байта (ну и естественно разжимающий его обратно). И применение у него есть четкое. Не скажете ли мне что это за алгоритм. Только если догадаетесь ногами не бейте ладно?
М.б. это удаление файла на fat'e, при этом теряется первый символ имени, на его запоминание нужен как раз 1 байт. И соответственно восстановление удаленного файла?
a="a=;b=';?$(a,1,2)+b+$a(1,50)+b+$(a,3,4)+b+$(a,6,45)";b='"';
?$(a,1,2)+b+$a(1,50)+b+$(a,3,4)+b+$(a,6,45)
Она же на C. Получилась заметно короче - 76 символов
?$(a,1,2)+b+$a(1,50)+b+$(a,3,4)+b+$(a,6,45)
Она же на C. Получилась заметно короче - 76 символов
Код:
main(){char*a="main(){char*a=%c%s%c;printf(a,34,a,34);}";printf(a,34,a,34);}
Автор: Heledirn›
« : 03/12/2004, 19:10:19 »Такая вот задача: есть массив, нужно получить из него другой, выбрав по условию определенные элементы. Как это сделать наиболее просто. На любом языке. Со своей стороны предлагаю Python:
Код:
array2 = [x for x in array1 if some_condition]
Автор: Dalen›
« : 11/08/2004, 08:23:17 »Ode to C:
May your signals all trap
May your references be bounded
All memory aligned
Floats to ints rounded
Remember ...
Non-zero is true
++ adds one
Arrays start with zero
and, NULL is for none
For octal, use zero
0x means hex
= will set
== means test
use -> for a pointer
a dot if its not
? : is confusing
use them a lot
a.out is your program
there's no U in foobar
and, char (*(*x())[])() is...
Кто сможет закончить?
May your signals all trap
May your references be bounded
All memory aligned
Floats to ints rounded
Remember ...
Non-zero is true
++ adds one
Arrays start with zero
and, NULL is for none
For octal, use zero
0x means hex
= will set
== means test
use -> for a pointer
a dot if its not
? : is confusing
use them a lot
a.out is your program
there's no U in foobar
and, char (*(*x())[])() is...
Кто сможет закончить?
Автор: Dalen›
« : 25/07/2004, 23:15:45 »Ну значит echo something
Автор: Арвинд›
« : 24/07/2004, 14:55:01 »Цитата из: Dalen on 21-07-2004, 06:41:52
Цитата:
Есть такая фича: попробовать написать самую короткую программу, воспроизводящую свой текст, на определённом языке.
.bat:
echo
Не помню, как оно было в ДОСе. Сейчас под 2000 у меня это не работает (команда echo без параметров пишет, включен ли режим вывода).
Автор: Dalen›
« : 21/07/2004, 06:41:52 »Цитата:
Есть такая фича: попробовать написать самую короткую программу, воспроизводящую свой текст, на определённом языке.
.bat:
echo
![Улыбающийся :)](http://tolkien.su/forum/Smileys/classic/smiley.gif)
Автор: Maeglor›
« : 11/03/2004, 19:43:15 »Да это один из вариантов. Но есть еще и второй.
Автор: Ayar›
« : 11/03/2004, 17:03:34 »Цитата:
2. А вот есть у меня алкоритм архиватора сжимающего любой файл до 1 байта (ну и естественно разжимающий его обратно). И применение у него есть четкое. Не скажете ли мне что это за алгоритм. Только если догадаетесь ногами не бейте ладно?
М.б. это удаление файла на fat'e, при этом теряется первый символ имени, на его запоминание нужен как раз 1 байт. И соответственно восстановление удаленного файла?
Автор: Maeglor›
« : 06/03/2004, 22:26:06 »Этого и не надо. Программу можно сделать всего с одной константой.
Писать оптимизированное решение мне лень. Свою часть я уже сделал. Дальше пусть другие мучаются.
Писать оптимизированное решение мне лень. Свою часть я уже сделал. Дальше пусть другие мучаются.
Автор: Erlom-Tiu›
« : 06/03/2004, 15:33:11 »Уменьшить можно :-)
Дополнение: оператор
$ (знак доллара, на форуме выглядит почему-то амперсандом) в качестве первого параметра может принимать строковое выражение, напр.
Дополнение: оператор
$ (знак доллара, на форуме выглядит почему-то амперсандом) в качестве первого параметра может принимать строковое выражение, напр.
Код:
$(A+B,3,12)
Автор: Maeglor›
« : 06/03/2004, 00:29:28 »Вот что у меня получилось:
Хотите верьте, хотите нет но оно самое себя выводит.
a="a='?&(a,1,2)+b+&(a,1,2)+b+&(a,4,97)+b+&(a,107,1)+&(a,14,14)+&(a,2,3)+b+&(a,3,3)+&(a,107,1)+&(a,4,97);";b='"';?&(a,1,2)+b+&(a,1,2)+b+&(a,4,97)+b+&(a,90,1)+&(a,14,14)+&(a,2,3)+b+&(a,3,3)+&(a,97,1)+&(a,4,97);
Хотя, конечно, тут огромное поле для оптимицации.
Хотите верьте, хотите нет но оно самое себя выводит.
a="a='?&(a,1,2)+b+&(a,1,2)+b+&(a,4,97)+b+&(a,107,1)+&(a,14,14)+&(a,2,3)+b+&(a,3,3)+&(a,107,1)+&(a,4,97);";b='"';?&(a,1,2)+b+&(a,1,2)+b+&(a,4,97)+b+&(a,90,1)+&(a,14,14)+&(a,2,3)+b+&(a,3,3)+&(a,97,1)+&(a,4,97);
Хотя, конечно, тут огромное поле для оптимицации.
Автор: Maeglor›
« : 05/03/2004, 23:29:11 »Извени. Я кажется разучился читать. Про то что текст самой себя я не увидел.
Автор: Erlom-Tiu›
« : 05/03/2004, 21:42:22 »в смысле <<"text" ?
так она и выведет
так она и выведет
Код:
text
а не
а не
Код:
main(){cout>>"text";}
Кроме того, по указанной ссылке, есть описание языка программирования. (PiBAS)
Кроме того, по указанной ссылке, есть описание языка программирования. (PiBAS)