ENG  RUSTimus Online Judge
Online Judge
Problems
Authors
Online contests
About Online Judge
Frequently asked questions
Site news
Webboard
Links
Problem set
Submit solution
Judge status
Guide
Register
Update your info
Authors ranklist
Current contest
Scheduled contests
Past contests
Rules
back to board

Discussion of Problem 1779. The Great Team

Вопрос по примеру
Posted by LLd_team 9 Oct 2010 14:16
Разве для 4 студентов будет всего 2 пары?
А чем не устраивает вариант:
3
1 2
2 3
1 4
Тогда 1 и 2 студенты имеют по 2 друга, а 3 и 4 по 1, что в свою очередь подходит под "крах критерия успеха".
Re: Вопрос по примеру
Posted by Tural Vugar Gulmammadov 9 Oct 2010 14:41
All three members of the team should have the same number of friends...
Re: Вопрос по примеру
Posted by Iosif inf-10 9 Oct 2010 14:48
The problem can has multiple correct answers.

Edited by author 09.10.2010 14:50
Re: Вопрос по примеру
Posted by Tural Vugar Gulmammadov 9 Oct 2010 15:10
Iosif inf-10 : Sən harda oxuyursan?
Re: Вопрос по примеру
Posted by Anton Chupin 9 Oct 2010 15:20
Достаточно и любой одной пары друзей - у них будет по 1, у других по 0.
Re: Вопрос по примеру
Posted by rArow 9 Oct 2010 16:41
я так понял нужно построить такой граф чтобы любые три вершины имели разную степень.

а в условии сказано что решение можно вывести любое.
Re: Вопрос по примеру
Posted by Anton Papin 14 Oct 2010 02:33
LLd_team, такой вариант вполне пройдёт. Для удобства, можно составить на бумажке матрицу вида:
1 2 3 4
2 2 1 1

надеюсь, суть матрицы понятна ;)

Собственно программно и нужно постоянно проверять количество людей с одинаковым количеством друзей и "не давать" этому количеству превышать 2 (эмпирически выяснили, что -1 в принципе может и никогда не вернуться).
Re: Вопрос по примеру
Posted by ValenKof 13 Oct 2011 22:41
У меня всегда есть ответ))
Пусть кол-во друзей четно. Пусть мы уже добавили 2k друзей и их валентности 112233...kk.
Давайте соединять 2 новые вершины с уже добавленными, начиная с тех, у кого большая валентность. Получим у новых вершин валентность 11, а у старых 1122..(k-1)(k-1)(k+1)(k+1). Продолжаем процесс пока не получим у новых mm, а у старых 112233...(m-1)(m-1)(m+1)(m+1)..(k+1)(k+1). Если получили, что на каком-то шаге у новых mm, а у старых 1122..(m)(m)(m+2)(m+2)..(k+1)(k+1), то соединяем новые между собой. Если n нечетно, последнюю вершину оставляем одной. Кол-во дуг в графе (n/2) * ((n/2) + 1) / 2.