Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите начинающему программисту решить задачу.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Функция PHP
Slavon143
Отправлено: 27 Августа, 2016 - 11:15:16
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Авг. 2016  


Помог: 0 раз(а)




Задача переведена с английского.
3. "Слобода" друзей
"Слобода" есть N человек. Многие из них являются друзьями. Кроме того, интересен тот факт, что друзья друзей также друзей. Вам нужно выяснить, сколько друзей имеет конкретного человека в компании.
Входные данные
Функция должна получить следующие Params:
N - количество людей в компании
S - определенное количество человек
Матрица N строк содержат N чисел, состоящих из единиц и нулей. И блок стоит в г-й строки и j-го столбца гарантирует, что люди с номерами I и J - друзей, и 0 - выражает неопределенность.
Выходные данные
Функция должна возвращать число некоторых друзей человека с номером S, вспоминая переходную дружбу.
Пример1:
N = 3
S = 1
Матрица = 0 1 0
1 0 1
0 1 0
Результат: 2

Example2:
N = 5
S = 2
Матрица 0 0 0 0 0
0 0 1 0 0
0 1 0 0 1
0 0 0 0 1
0 0 1 1 0
Результат: 3
(Добавление)
3. Sloboda friends
Sloboda has N people. Many of them are friends. Also, interesting fact is that friends of friends are also friends. You need to find out how much friends has a particular person in the company.

Input data

Function should receive next params:
N - number of people in the company
S - a specific number of person
Matrix N lines contain N numbers consisting of ones and zeros. And the unit standing in the i-th row and j-th column ensures that people with numbers i and j - friends, and 0 - expresses uncertainty.

Output data

Function should return number of the certain friends of the person with the S number, remembering transitive friendship.

Example1:
N = 3
S = 1
Matrix = 0 1 0
1 0 1
0 1 0
Result: 2

Example2:
N = 5
S = 2
Matrix = 0 0 0 0 0
0 0 1 0 0
0 1 0 0 1
0 0 0 0 1
0 0 1 1 0
Result: 3
 
 Top
dcc0
Отправлено: 27 Августа, 2016 - 13:51:40
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




Цитата:
Многие из них являются друзьями

Слово "многие" может иметь много оттенков - какие-то, большинство, почти большинство - и носит некоторый характер неопределённости.
Задача недоформулирована, на мой взгляд.

(Отредактировано автором: 27 Августа, 2016 - 13:52:09)



-----
Март 2021. Бросил программирование
 
 Top
Sail
Отправлено: 27 Августа, 2016 - 17:05:13
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




Slavon143, имеется матрица смежности. Надо построить матрицу достижимости.
(Добавление)
Ну, или просто обойти граф из указанной вершины... (number S)
Например: Лекция 22[dot] Обход графов
 
 Top
skyrocker
Отправлено: 01 Сентября, 2016 - 12:28:36
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Сент. 2016  


Помог: 0 раз(а)




Sail пишет:
Slavon143
Ну, или просто обойти граф из указанной вершины... (number S)


Наверное очевидно, но я спрошу:
S == i=j? т.е.: если S = 4 это вершина 4/4? Не понял

(Отредактировано автором: 01 Сентября, 2016 - 12:29:12)

 
 Top
Sail
Отправлено: 01 Сентября, 2016 - 14:23:39
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




skyrocker пишет:
S == i=j? т.е.: если S = 4 это вершина 4/4?

Это строка 4. Ну, или столбец 4. В матрице смежности элемент 4/4 отображает наличие "петли".
Кроме того, графы могут быть ориентированными. Тогда матрица смежности может быть не симметричной (относительно главной диагонали).
 
 Top
LIME
Отправлено: 02 Сентября, 2016 - 17:13:18
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




https://www[dot]youtube[dot]com/watch?v=npV3mOIZJNc
посмотри лекции 4-5
просто и доходчиво и вопросы отпадут
(Добавление)
петля)) нет друзей и нет подруг я сам себе "хороший" друг))

(Отредактировано автором: 03 Сентября, 2016 - 13:37:13)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB