Из того, как сформулирована исходная задача, я бы сказал что формула может быть похожа на:
где нужно найти такие x,y при которых сумма некоторой функции от четырех параметров (xi, yi, x, y) по всем точкам множества минимальна.
А сама функция f, например может быть расстоянием: f = SQRT( (xi-x)^2 + (yi-y)^2).
Также надо рассмотреть поведение алгоритма для конфигураций типа Гантели.
Особенно симметричной гантели — будет два равнозначных места сгущений.
Было бы лучше, если бы алгоритм выдавал список сгущений с их мощностью (и/или плотностью).
Т.е. все точки нужно разбить на группы сгущения и при оценке сгущения группы (по формуле см.выше) не учитывать точки из других групп.
В качестве идеи по разбитию на группы можно предложить такой алгоритм: ищем все не соприкасающиеся треугольники с минимальной суммой длин сторон. Иными словами для любой точки возможно найти две ближайшие точки сумма расстояний между тремя точками будет минимальна.
Как только мы нарисуем все такие треугольники, мы можем выделить группы соприкасающихся треугольников. Назовем точки входящие в такие группы группами скопления. Для каждой такой группы можно определить мощность (скажем кол-во точек, площать (минимальный круг включающий все точки группы) и плотность).
У меня доверия к wikileaks не больше, чем к правительству США или любой другой страны.
«Что там происходит на самом деле» — известно только тем, кто «это делает» :)
Это можно делать уже сейчас, и работает «почти» везде, однако надо заранее знать количество колонок:
<html>
<head>
<style>
.column { display: inline-block; width: 33%;}
</style>
</head>
<body>
<div>
<div class="column">
<h3>Заключение</h3>
<p>Спектр применения свойств column пока еще очень узок. Даже не из-за того, что не все браузеры их поддерживают (Mozilla + WebKit дают уже более половины рынка), а по причине неполной реализации функций. Хотя функционал вполне интересный и заслуживает внимания.</p>
</div>
<div class="column">
<h3>Заключение</h3>
<p>Спектр применения свойств column пока еще очень узок. Даже не из-за того, что не все браузеры их поддерживают (Mozilla + WebKit дают уже более половины рынка), а по причине неполной реализации функций. Хотя функционал вполне интересный и заслуживает внимания.</p>
</div>
<div class="column">
<h3>Заключение</h3>
<p>Спектр применения свойств column пока еще очень узок. Даже не из-за того, что не все браузеры их поддерживают (Mozilla + WebKit дают уже более половины рынка), а по причине неполной реализации функций. Хотя функционал вполне интересный и заслуживает внимания.</p>
</div>
</div>
</body>
</html>
Тимур, огромное спасибо, вы первый кто мне смог полноценно и доходчиво объяснить, что такое замыкания и лямбда функции (почему они так называются) и для чего нужны :)
Вопрос в сторону, почему вы эти долги на себя приняли, есть какие-то договора? (между кем и кем?)
Если есть договора, а проект приносит деньги, ищите правильного инвестора, который погасит ваш долг перед старым инвестором и профинансирует проект до получения прибыли.
Если уверены в прибылях — то это просто подарок судьбы, под залог любого имущества возьмите кредит в банке и рефинансируйтесь сами.
И еще — не бойтесь заговорить с первым инвестором — объясните ситуацию — что деньги, которые он вложил в проект — это его риск.
Вы свои деньги отработали. Ваша позиция — не он с Вас может требовать возврат средств, а Вы ему предлагаете выкупить этот проект, т.к. он решил из него выйти.
Сумма выкупа — рассчитайте свои силы — полагаю от 1/4 до 1/2 — он будет согласен.
Вариантов-то у него сколько? Либо он без денег и с проектом без команды, либо получить возврат части средств.
Либо предложите средств не возвращать, а уменьшенную долю в будущем проекте, т.к. он отказывается от первоначальных обязательств по финансированию.
По поводу займов — это стандартная практика инвестирования. (По крайней мере я с этим сталкивался).
Т.е. Если не срастается — компания закрывается. Если срастается, инвестор без налогов возвращает свои средства.
С прибыли налоги будут.
Чуть ниже есть еще один мой длинный комментарий, однако, увидев этот пост, хочу к нему тоже добавиться ;)
По, идее, такой запрос решит проблему «бомжей»:
select top 100
person
, city
from
(
select top 100
p.name person
, c.name city
from
person p
, cities c
where
p.cityid = c.cityid
order by
city
, person
)
union (
select top 100
p.name person
, null city
from
person p
where
p.cityid is null
order by
person
)
order by
city
, person
Решать такую задачу чисто на языке SQL — нерационально (особенно, учитывая факт, что оптимизатор SQL не справляется).
Однако из чисто академических интересов, попробуем решить задачу, подсказав оптимизатору последовательность запросов.
Общий план таков:
1) считаем кол-во жителей в каждом городе
2) отбираем минимально достаточное количество городов, в алфавитном порядке так,
чтобы суммарное количество в них было как раз больше 100, но при удалении хоть
одного города меньше 100
3) из полученного списка городов, отбираем всех жителей и выводим первые 100
Стадия 1. Посчитаем количество жителей в каждом городе.
create table tmp as
select
Cities.Id
, Cities.Name
, cnt.people
from
(
select
CityId
, count(Name) people
from
People
group by
CityId
) as cnt
join Cities on (Cities.Id = cnt.CityId)
Стадия 2. отбираем минимально достаточное количество городов
create table enough as
select
t2.Id as Id
, max(t2.Name) as Name
, sum(t1.people)+t2.people as people
from
tmp t1,
join tmp t2 on (t1.Name < t2.Name)
group by
t2.Id
having
sum(t1.people) < 100
Стадия 3. выводим жителей
select
top 100 p.Name PersonName
, c.Name CityName
from
People p
join enough c on p.CityId = c.Id
order by
c.Name
, p.Name
Несколько замечаний:
* Создание временных табилц можно не делать, но тогда вместо из названия в тех местах, где они используются надо подставить сами запросы — SQL получится многоэтажным :)
* Все выше написанное — теория — проверить не могу — нет MSSQL'я
* Если в таблице enough нет 100 жителей, то придется еще такую структуру добавить:
select
top 100 Name PersonName
, Name CityName
from
(select *** запрос на Стадии 3 (см.выше) ***)
union (select top 100 Name as PersonName, null as CityName from People where IdCity is null)
order by
CityName
, PersonName
P.S. может у кого-то хватит терпения проверить? ;-) А если даст положительный результат — объединить все запросы в один, еще раз проверить, постануть его сюда и отчитаться…
Интерес представляет скорее не наличие системы рангов, а система отнесение специалистов к указанным рангам.
Полагаю у ABBYY, как у лидера «распознавания текстов», есть также большой задел «распознавании людей»? :)
Все помнят SCO и их претензии к Linux-сообществу? ;-)
Вроде, Microsoft мелькала там, «спонсором/заказчиком» этих разбирательств.
Понятно, что не пойман — не вор, однако если права на UNIX, действительно у Novell и они достанутся «не в те руки», то палки в колеса можно ожидать :)
1) Вы можете спокойно поесть и поспать, и за это время ровном счетом ничего плохого не произойдет, а если произойдет, то уже есть сотрудник, который без вашего участия устранит последствия этого досадного происшествия
Если честно, то я о подобном сервисе уже давно размышляю.
Но пока не нашел способа сохранить анонимность и не допустить мошенничества с голосами «мертвыми душами».
где нужно найти такие x,y при которых сумма некоторой функции от четырех параметров (xi, yi, x, y) по всем точкам множества минимальна.
А сама функция f, например может быть расстоянием: f = SQRT( (xi-x)^2 + (yi-y)^2).
Также надо рассмотреть поведение алгоритма для конфигураций типа Гантели.
Особенно симметричной гантели — будет два равнозначных места сгущений.
Было бы лучше, если бы алгоритм выдавал список сгущений с их мощностью (и/или плотностью).
Т.е. все точки нужно разбить на группы сгущения и при оценке сгущения группы (по формуле см.выше) не учитывать точки из других групп.
В качестве идеи по разбитию на группы можно предложить такой алгоритм: ищем все не соприкасающиеся треугольники с минимальной суммой длин сторон. Иными словами для любой точки возможно найти две ближайшие точки сумма расстояний между тремя точками будет минимальна.
Как только мы нарисуем все такие треугольники, мы можем выделить группы соприкасающихся треугольников. Назовем точки входящие в такие группы группами скопления. Для каждой такой группы можно определить мощность (скажем кол-во точек, площать (минимальный круг включающий все точки группы) и плотность).
Спасибо
«Что там происходит на самом деле» — известно только тем, кто «это делает» :)
то выведется 13?
(компилятора нет, можете проверить?)
private static Foo instance = new Foo();
будет после
(жидкость там внутри есть, интересно...)
Я отвечал на вопрос vorbiz'а, как сделать 3 дива (оказывается он знает лучше меня) ;-)
Про выравнивание колонок по высоте я способов не знаю — не вижу альтернативы CSS3, о которой говорилось в статье.
Тип «display: column» — считаю бессмысленным
Если есть договора, а проект приносит деньги, ищите правильного инвестора, который погасит ваш долг перед старым инвестором и профинансирует проект до получения прибыли.
Если уверены в прибылях — то это просто подарок судьбы, под залог любого имущества возьмите кредит в банке и рефинансируйтесь сами.
И еще — не бойтесь заговорить с первым инвестором — объясните ситуацию — что деньги, которые он вложил в проект — это его риск.
Вы свои деньги отработали. Ваша позиция — не он с Вас может требовать возврат средств, а Вы ему предлагаете выкупить этот проект, т.к. он решил из него выйти.
Сумма выкупа — рассчитайте свои силы — полагаю от 1/4 до 1/2 — он будет согласен.
Вариантов-то у него сколько? Либо он без денег и с проектом без команды, либо получить возврат части средств.
Либо предложите средств не возвращать, а уменьшенную долю в будущем проекте, т.к. он отказывается от первоначальных обязательств по финансированию.
По поводу займов — это стандартная практика инвестирования. (По крайней мере я с этим сталкивался).
Т.е. Если не срастается — компания закрывается. Если срастается, инвестор без налогов возвращает свои средства.
С прибыли налоги будут.
По, идее, такой запрос решит проблему «бомжей»:
Решать такую задачу чисто на языке SQL — нерационально (особенно, учитывая факт, что оптимизатор SQL не справляется).
Однако из чисто академических интересов, попробуем решить задачу, подсказав оптимизатору последовательность запросов.
Общий план таков:
1) считаем кол-во жителей в каждом городе
2) отбираем минимально достаточное количество городов, в алфавитном порядке так,
чтобы суммарное количество в них было как раз больше 100, но при удалении хоть
одного города меньше 100
3) из полученного списка городов, отбираем всех жителей и выводим первые 100
Стадия 1. Посчитаем количество жителей в каждом городе.
Стадия 2. отбираем минимально достаточное количество городов
Стадия 3. выводим жителей
Несколько замечаний:
* Создание временных табилц можно не делать, но тогда вместо из названия в тех местах, где они используются надо подставить сами запросы — SQL получится многоэтажным :)
* Все выше написанное — теория — проверить не могу — нет MSSQL'я
* Если в таблице enough нет 100 жителей, то придется еще такую структуру добавить:
P.S. может у кого-то хватит терпения проверить? ;-) А если даст положительный результат — объединить все запросы в один, еще раз проверить, постануть его сюда и отчитаться…
Полагаю у ABBYY, как у лидера «распознавания текстов», есть также большой задел «распознавании людей»? :)
Поделитесь с общественностью?
Неужели в каком-нибудь более приличном месте по-близости не нашлось терминала?
Вроде, Microsoft мелькала там, «спонсором/заказчиком» этих разбирательств.
Понятно, что не пойман — не вор, однако если права на UNIX, действительно у Novell и они достанутся «не в те руки», то палки в колеса можно ожидать :)
1) Вы можете спокойно поесть и поспать, и за это время ровном счетом ничего плохого не произойдет, а если произойдет, то уже есть сотрудник, который без вашего участия устранит последствия этого досадного происшествия
;-)
Но пока не нашел способа сохранить анонимность и не допустить мошенничества с голосами «мертвыми душами».
Он может посмотреть, значит может и подменить результаты :)
чирканите вашу цитату — может я что-то проглядел.