|
|
  |
Задачка от студента, Пример кода на С++ |
|
|
|
Apr 22 2009, 08:59
|
Местный
  
Группа: Участник
Сообщений: 315
Регистрация: 5-05-08
Из: Kursk
Пользователь №: 37 282

|
Кто подскажет правильный путь в реализации сей задачки заданной работающему у нас толковому студенту,он хочет решить её сам ,ведь ему ж потом работать.Вся заморочка как раз с ореентированным графом,кто подскажет код на С++для движения в правильном направлении!Сам в настоящее время тоже пытаю С,хотя в работе всё как то по железу,а проги больше на асме. В игре участвуют два игрока. Полем для игры служит произвольный ориентированный граф , где V — множество вершин; A — множество дуг (ориентированных ребер). В начале игры в графе G выделяются две произвольные вершины s и t. Далее игроки поочередно выбирают по одной вершине из множества ; вершины, выбранные игроком 1, «окрашиваются» при этом в черный цвет, а выбранные игроком 2 — в белый. Игра продолжается до тех пор, пока не будут окрашены все вершины из множества . Игрок 1 (игрок 2) выигрывает тогда и только тогда, когда в графе G найдется путь (ориентированный маршрут) из s в t, проходящий только через черные (белые) вершины.
--------------------
"Если я в чем-то сомневаюсь, я возвращаюсь к началу"
|
|
|
|
|
Apr 22 2009, 11:37
|
Местный
  
Группа: Участник
Сообщений: 315
Регистрация: 5-05-08
Из: Kursk
Пользователь №: 37 282

|
Цитата(MrYuran @ Apr 22 2009, 14:06)  Задачка-то в чём? Написать бота, который всегда будет выигрывать? Или нарисовать саму игрушку? Или и то и другое? НЕ надо только код игрушки,а с ботом это неплохая мысль токо наверное его препод не оценит,незнаю как у чувством юмора. Ну так а конкретно кто с кодом поможет к этому гр...ёбанаму ортогональному графу!
--------------------
"Если я в чем-то сомневаюсь, я возвращаюсь к началу"
|
|
|
|
|
Apr 22 2009, 12:50
|
Местный
  
Группа: Участник
Сообщений: 315
Регистрация: 5-05-08
Из: Kursk
Пользователь №: 37 282

|
Цитата(Rst7 @ Apr 22 2009, 15:55)  Я так понимаю, у студента проблемы с нахождением пути? Ну тогда пусть ключевое слово будет A-Star - http://en.wikipedia.org/wiki/A-star_search_algorithmА код в студию подать ....................?????
--------------------
"Если я в чем-то сомневаюсь, я возвращаюсь к началу"
|
|
|
|
|
Apr 22 2009, 12:53
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата А код в студию подать А студент уже совсем слабак с псевдокода портировать? Как это коррелирует с Цитата работающему у нас толковому студенту Хуже даже не то, что студент слабоват...
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Apr 22 2009, 13:07
|
Местный
  
Группа: Участник
Сообщений: 315
Регистрация: 5-05-08
Из: Kursk
Пользователь №: 37 282

|
Цитата(Rst7 @ Apr 22 2009, 16:53)  А студент уже совсем слабак с псевдокода портировать? Как это коррелирует с
Хуже даже не то, что студент слабоват... Ага я тут обучал одного вновь принятого с одним,учился на коммерческом программист типа конттроллеров,так он поначалу + с -путал,а про ассемблер тока в книжке читал.Так пока я был в отпуске он спалил все контроллеры что я на проект заказал.
--------------------
"Если я в чем-то сомневаюсь, я возвращаюсь к началу"
|
|
|
|
|
Nov 13 2009, 21:26
|

Частый гость
 
Группа: Участник
Сообщений: 149
Регистрация: 29-04-08
Из: Петербург
Пользователь №: 37 142

|
1. Выбрать представление для графа: Матрица смежности, цвета хранить прямо в ней. ( 0 - нет ребра, 1 - ребро неокрашено, 2 - закрашено игроком 1, 3 - закрашено игроком 2)
2 Написать чтение входные данных: 2.1 Номера двух вершин: Игроки будут строить дороги между <номер вершины> и <номер вершины>. 2.2 Описание графа: <номер вершины> соединена с <номер вершины> <номер вершины> соединена с <номер вершины> ... 2.3 Действия игроков: <номер игрока> закрашивает ребро, соединяющее вершины <номер вершины> <номер вершины>. <номер игрока> закрашивает ребро, соединяющее вершины <номер вершины> <номер вершины>. ...
3. Написать функцию поиска пути в графе, с аргумнетом <цвет закраски>
ЗЫ: С++ это в смысле "сделать в Borland С++ builder 6.0", ага?
Сообщение отредактировал Злодей - Nov 13 2009, 21:27
|
|
|
|
|
Nov 15 2009, 06:12
|
Местный
  
Группа: Участник
Сообщений: 406
Регистрация: 1-03-06
Пользователь №: 14 821

|
Цитата(Verifi @ Apr 22 2009, 13:50)  А код в студию подать ....................????? Вам же уже всё Rst7 дал, не пойму в чём проблема, там даже псевдо код есть. Если этого мало, то не понимаю, как можно этого студента "толковым" называть.
|
|
|
|
|
Nov 26 2009, 20:01
|

Местный
  
Группа: Свой
Сообщений: 235
Регистрация: 11-11-09
Пользователь №: 53 561

|
 вопчем, большинство проблем решил. осталась одна: Код ...for i in 0 to 9 loop if (Tg='1') then A <= i mod 8; K1(i-A*8) <= '1';... почему не принимает K1(i-A*8), а K1(8) допустим, принимает??? компилятор ошибку не выдает, но на симуляции останавливается в момент, когда Т=1 и все, дальше не идет. пробовал заранее посчитать и в скобку подсчитанную переменную писать К(n), эффекта ноль. как быть???
--------------------
Мы ведь работаем, чтобы жить, а не живем, чтобы работать??? ;)
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|