Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Неделю бьемся над задачей- Рассматривается БД кораблей, участвующих во второй мировой войне. Имеются следующие отношения: Classes (class, type, country, numGuns, bore, displacement) Ships (name, class, launched) Battles (name, date) Outcomes (ship, battle, result) Корабли в «классах» построены по одному и тому же проекту, и классу присваивается название первого корабля этого класса. Отношение Classes содержит имя класса, тип (bb для боевого (линейного) корабля или bc для боевого крейсера), страну, в которой построен корабль, число главных орудий, калибр орудий (диаметр ствола орудия в дюймах) и водоизмещение ( вес в тоннах). В отношении Ships записаны название корабля, имя его класса и год спуска на воду. В отношение Battles включены название и дата битвы, в которой участвовали корабли, а в отношении Outcomes – результат участия данного корабля в битве (потоплен-sunk, поврежден - damaged или невредим - OK). Замечание. В отношение Outcomes могут входить корабли, отсутствующие в отношении Ships. ----Найдите названия всех кораблей из базы данных, спущенных на воду до 1941 г. Помогите, кто решил!!! Наши решения основная база принимает, а тестовая нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 16:56 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
авторНайдите названия всех кораблей из базы данных, спущенных на воду до 1941 г. Или я неправильно понимаю условия, или решение просто select * from ships where launched < 1941; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 17:39 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Хрен авторНайдите названия всех кораблей из базы данных, спущенных на воду до 1941 г. Или я неправильно понимаю условия, или решение просто select * from ships where launched < 1941; ГЫ. Когда меня просили студенты решить задачку, я честно предупреждал - работать будет, но не примут. В одном случае сдудента раскололи на названиях переменных (ну кто знал что для вершин треугольника кроме A,B,C других имен препод не представляет?), у другого не приняли задачку на возможность составить 1 слово из другого. Причина - препод считал что надо вложенные циклы, мне про это не сказали и цикл был 1. Что-то мне подсказывает что ситуация аналогичная :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 20:27 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Хрен авторНайдите названия всех кораблей из базы данных, спущенных на воду до 1941 г. Или я неправильно понимаю условия, или решение просто select * from ships where launched < 1941; поправлю себя: select distinct name from ships where launched <1941; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2005, 20:33 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Да, нет, там не все так просто. Есть еще корабли с неизвестным годом спуска на воду, но принимали участие в битвах до 45 года, Возможна такая ситуация. 1. Головной корабль в Ships с неизвестным годом или в Outcomes c датой сражения после 41 года. 2. Другие корабли этого класса в Ships тоже имеют неизвестный год спуска на воду. 3. Один из них участвовал в сражении до 41 года. Вывод: оба корабля (этот и головной) должны быть в наборе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2005, 09:14 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Автор вопроса - для начала напиши все требования к хранимым данным, что должно быть и как связываться. Это и будет ответом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2005, 12:25 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Мне потребовалось 5 Selectов, чтобы вытащить все, Если бы те кто это придумал предупредили о не которых допущениях в структуре раньше или в связи с этим заданием то возможно я решил бы быстрее. Селекты предлагаю воссоздать вам, но окончательно: 1.Корабли заложенные до 1941 из Ships 2.Корабли, участвовавшие в битвах до 1941 из Outcomes 3.Корабли, являющиеся головными для кораблей заложенных до 1941 г. 4.Корабли, являющиеся головными для кораблей, участвовавших в битвах до 1941 из Ships 5. Корабли, являющиеся головными для кораблей, участвовавших в битвах до 1941 из Outcomes ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2006, 17:34 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
воссоздал все selectы но все рано пишет "Ваш запрос вернул правильные данные на основной базе, но не прошел тест на проверочной базе. * Неверное число записей (меньше на 5)" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2006, 23:37 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Я уже все перебрал... Написал ИМХО все возможные запросы. Все равно двух кораблей не хватает! Может кто подскажет, что я не учел? select name from ships where launched<1941 union select ship from outcomes, battles where battle=name and year(date)<1941 union select name from ships where name=class and class in (select class from ships where launched<1941) union select ship from outcomes where ship in (select class from classes) and ship in (select class from ships where launched<1941) union select name from ships where name in (select class from classes) and name in (select class from ships where launched<1941) union select ship from outcomes where ship in (select class from ships) and ship in (select class from ships where launched<1941) union select name from ships where name in (select class from ships) and name in (select class from ships where launched<1941) P.S. Понимаю, что многие запросы - тавтология, но это уже от отчаяния :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2006, 23:03 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
mamchiyНеделю бьемся над задачей Помогите, кто решил!!! Наши решения основная база принимает, а тестовая нет.А что мешает обратиться за помощью к самим разработчикам сайта? Насколько мне известно, они ребята вполне адекватные и в оказании помощи не отказывают :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 07:12 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
JoddyMasterМне потребовалось 5 Selectов, чтобы вытащить все, Если бы те кто это придумал предупредили о не которых допущениях в структуре раньше или в связи с этим заданием то возможно я решил бы быстрее. Селекты предлагаю воссоздать вам, но окончательно: 1.Корабли заложенные до 1941 из Ships 2.Корабли, участвовавшие в битвах до 1941 из Outcomes 3.Корабли, являющиеся головными для кораблей заложенных до 1941 г. 4.Корабли, являющиеся головными для кораблей, участвовавших в битвах до 1941 из Ships 5. Корабли, являющиеся головными для кораблей, участвовавших в битвах до 1941 из OutcomesМне кажется, что пункт 4 там лишний. Ибо пункт 5 включает в себя в том числе и корабли из пункта 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2006, 07:33 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Владимор Конев mamchiyНеделю бьемся над задачей Помогите, кто решил!!! Наши решения основная база принимает, а тестовая нет.А что мешает обратиться за помощью к самим разработчикам сайта? Насколько мне известно, они ребята вполне адекватные и в оказании помощи не отказывают :) 2 mamchiy Ну что, помогли тебе разработчики? И если помогли, что в чем был затык? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2006, 05:53 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
теперь я бьюсь над этой задачей!так ты решил эту задачу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2006, 15:44 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Найдите названия всех кораблей из базы данных, спущенных на воду до 1941 г. select name from ships where launched<1941 union select ship from outcomes inner join battles on battle=name where year(date)<1941 union select o.ship from outcomes o inner join classes cl on o.ship=cl.class where (select min(launched) from ships where class=o.ship)<1941 union select o.ship from outcomes o inner join classes cl on o.ship=cl.class where (select min(year(bb.date)) from outcomes oo join battles bb on oo.battle=bb.name where oo.ship in(select name from ships where class=o.ship))<1941 union select o.ship from outcomes o left join classes cl on o.ship=cl.class left join battles on battle=name where year(date)<1941 and not exists (select name from ships where name<>o.ship and class<>o.ship) union select name from ships where launched is null and class in ( select class from ships where launched<1941 union select o.ship from outcomes o inner join battles on o.battle=battles.name where year(date)<1941 union select o.ship from outcomes o inner join classes cl on o.ship=cl.class where (select min(year(bb.date)) from outcomes oo join battles bb on oo.battle=bb.name where oo.ship in(select name from ships where class=o.ship))<1941 ) пишет несоответствие данных 24... Если убрать последний юнион, то пишет что не хватает еще одного корабля. Пожалыйста помогите!!! если можно скиньте решение на мыло. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.09.2006, 11:34 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Блин, и правда какой-то косяк получается. Самое интересное, что в проверочной базе 40 кораблей и как в ней 24-25 не совпадают с полученными с помощью запроса - ума не приложу, м.б. какое-нибудь приоразование первого символа произвести надо или кодировку поменять, если вдруг проверочные корабли на русском заведены. Короче, если вдруг, кто найдет что-нибудь путнее пишите ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 12:09 |
|
||
|
Кто решал 41 задачу про корабли
|
|||
|---|---|---|---|
|
#18+
Добрый день, т.к. по задаче на эту страницу поиск из Яндекса ведет среди первых, а над задачей я раздумывал аж 3 дня, то хочу написать для тех, кто будет искать решение в будущем. Нужно выбрать: 1) Корабли из ships, спущенные до 1941 года; 2) Головные корабли из ships, если хоть один корабль того же класса был спущен до 1941 года; 3) Головные корабли из ships, если хоть один корабль того же класса участвовал в битве до 1941 года; 4) Корабли из outcomes, участвовавшие в битвах до 1941 года; 5) Головные корабли из outcomes, если хоть один корабль того же класса был спущен до 1941 года; 6) Головные корабли из outcomes, если хоть один корабль того же класса участвовал в битве до 1941 года. Итого: 6 запросов, объединенных через union. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2017, 09:35 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=33361396&tid=1830782]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 359ms |

| 0 / 0 |
