В.Н.> Ром, если честно, то я не понимаю о чем ты говоришь. или это какя-то логическая задача?
RPG-система. Чтобы поставить человека на уровень N, нужно собрать 3^(N+1) голосов. Так, сейчас в голосовании за Цоньо, ему нужно набрать очков на 8-й уровень (хотя я формально итак ему его уже прописал). Это 3
9 = 19683 голосов.
У каждого человека есть 3^N голосов. Т.е. у пользователей 8-го уровня по 3
8 = 6561 голосов.
Таким образом, в отсутствие противодействия (несогласных голосов), любой имеющий уровень N может «поднять» другого на уровень N-1. Т.е. человек с 5-и уровнем может поднять другого до 4-го.
Три человека с уровнем N могут поднять четвёртого на свой уровень N. Т.е. трое с 5-м уровнем могут набрать баллов на 5-й уровень другому.
Девять могут поднять десятого (или одного из своих — за себя голоса пока считаются) на уровень N+1.
Соответственно, любая девятка может поднимать себя на сколько угодно уровней вверх, пока не встретит противодействие. Тут в системе потенциальная дыра, которая пока ограничена ручной организацией запросов и долгим периодом голосования до принятия решения в будущем (что позволит сказать своё «нет» недовольным). Но всё равно, если девятка выйдет достаточно высоко, она может накрутить свой уровень на сколько угодно, избавившись от опасности опускания их вниз недовольными. Так что тут перед полной автоматизацией нужно ещё думать и думать
Аналогично тройка может опустить любого человека со своим же уровнем на уровень вниз. А девятка может опустить более высокоуровневого на свой уровень.