mirror of
https://github.com/anatolykopyl/vk-bingo.git
synced 2026-03-26 04:44:26 +00:00
📈 Квота мемов теперь игнорирует неактивных участников беседы
This commit is contained in:
@@ -51,12 +51,21 @@ cardsCollection.aggregate([
|
|||||||
]).toArray().then((memeCount) => {
|
]).toArray().then((memeCount) => {
|
||||||
cardsCollection.countDocuments().then((totalCount) => {
|
cardsCollection.countDocuments().then((totalCount) => {
|
||||||
let quota, quotaTimes
|
let quota, quotaTimes
|
||||||
|
let activeUsers = 0
|
||||||
|
|
||||||
quota = totalCount/memeCount.length // Квота мемов на человека
|
quota = totalCount/memeCount.length // Квота мемов на человека
|
||||||
console.log(totalCount + " мемов всего. Квота: " + quota)
|
console.log(totalCount + " мемов всего. Квота: " + quota)
|
||||||
|
|
||||||
|
// Подсчет количества активных пользователей
|
||||||
|
memeCount.forEach((n) => {
|
||||||
|
if (n.count > quota/10)
|
||||||
|
activeUsers++
|
||||||
|
})
|
||||||
|
|
||||||
memeCount.forEach((n) => {
|
memeCount.forEach((n) => {
|
||||||
// Во сколько раз превышена квота:
|
// Во сколько раз превышена квота:
|
||||||
// (колич. человек в конфе * колич. мемов данного человека / мемов всего)
|
// (колич. астивных человек в конфе * колич. мемов данного человека / мемов всего)
|
||||||
quotaTimes = memeCount.length*n.count/totalCount
|
quotaTimes = activeUsers*n.count/totalCount
|
||||||
if (quotaTimes > 1) {
|
if (quotaTimes > 1) {
|
||||||
dropProb[n._id] = 1 - (1/quotaTimes)
|
dropProb[n._id] = 1 - (1/quotaTimes)
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user