feat(Go-Tool):2020/11/16:新增项目案例(按照一定规则对一组数据进行排序分组)
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* @Author : huangzj
|
||||
* @Time : 2020/11/13 14:55
|
||||
* @Description:
|
||||
*/
|
||||
|
||||
package ProgressTest
|
||||
|
||||
import (
|
||||
"Go-Tool/util/file"
|
||||
"Go-Tool/util/jsonEnhance"
|
||||
)
|
||||
|
||||
type DeliverList struct {
|
||||
Deliver []*Deliver
|
||||
}
|
||||
|
||||
type Deliver struct {
|
||||
Score int
|
||||
AllScore int
|
||||
Id int
|
||||
}
|
||||
|
||||
func MakeData() DeliverList {
|
||||
var deliver DeliverList
|
||||
content, _ := file.ReadJsonFile("F:\\Go_BySelf\\src\\Go-Tool\\ProgressTest\\deliverData.json")
|
||||
jsonEnhance.UnmarshalFromString(content, &deliver)
|
||||
return deliver
|
||||
}
|
||||
@@ -0,0 +1,140 @@
|
||||
/*
|
||||
* @Author : huangzj
|
||||
* @Time : 2020/11/16 14:44
|
||||
* @Description:
|
||||
*/
|
||||
|
||||
package ProgressTest
|
||||
|
||||
import (
|
||||
"Go-Tool/util/rand"
|
||||
"fmt"
|
||||
"math"
|
||||
"testing"
|
||||
)
|
||||
|
||||
const (
|
||||
MinGroupNum = 10
|
||||
MaxGroupNum = 80
|
||||
)
|
||||
|
||||
//需求(直接举例):
|
||||
//总共有100个数据,两个变量,大区间(MaxGroupNum) 为80, 小区间(MinGroupNum)为 10 || 100 和 80 对应的参数 都必须是10的倍数
|
||||
//第一步:先100个数据排序,然后按照80进行划分。
|
||||
//第二步:100划分剩余的数据组成一组
|
||||
//第三步:80个数组再一次排序,按照 10 * 4 进行划分,可以分成两组
|
||||
//第四步:40每组的数据,要分成最后的10 * 4 的4组,按照每次取前5再随机取5个组成一组的方式组成4组
|
||||
//第五步:不足4组的,按照取前5和随机5个的方式进行分组
|
||||
func TestDeliver2(t *testing.T) {
|
||||
|
||||
firstOrderRule = FirstOrderRule
|
||||
secondOrderRule = SecondOrderRule
|
||||
thirdOrderRule = ThirdOrderRule
|
||||
|
||||
list := MakeData() //创建数据
|
||||
resultList := deliver2(list.Deliver) //进行分组操作
|
||||
fmt.Printf(fmt.Sprintf("%v", resultList))
|
||||
}
|
||||
|
||||
func deliver2(delivers []*Deliver) [][]int {
|
||||
|
||||
resultList := make([][]int, 0)
|
||||
newDelivers := make([]*Deliver, 0)
|
||||
//获得第一次按照大区间分组后剩下的元素数量、第一次分组所有组、分到的大组数量
|
||||
leaveNum, partitions, partition := FirstOrder(delivers, newDelivers)
|
||||
|
||||
resultList = withCompletePartition(partitions, resultList) //对完整的分组进行处理
|
||||
resultList = withLeavePartition(resultList, newDelivers, leaveNum, partition) //对剩余的分组进行处理
|
||||
return resultList
|
||||
}
|
||||
|
||||
func withLeavePartition(resultList [][]int, newDelivers []*Deliver, leaveNum int, partition int) [][]int {
|
||||
if leaveNum != 0 {
|
||||
leaveList := newDelivers[partition*MaxGroupNum:]
|
||||
resultList = secondOrder(leaveList, resultList, leaveNum)
|
||||
}
|
||||
return resultList
|
||||
}
|
||||
|
||||
func withCompletePartition(partitions [][]*Deliver, resultList [][]int) [][]int {
|
||||
for _, partition := range partitions {
|
||||
resultList = secondOrder(partition, resultList, len(partition))
|
||||
}
|
||||
return resultList
|
||||
}
|
||||
|
||||
func FirstOrder(delivers []*Deliver, newDelivers []*Deliver) (int, [][]*Deliver, int) {
|
||||
newDelivers = firstOrderRule(delivers) //第一次排序
|
||||
partition := len(newDelivers) / MaxGroupNum
|
||||
leaveNum := len(newDelivers) % MaxGroupNum
|
||||
partitions := make([][]*Deliver, 0)
|
||||
|
||||
for i := 0; i < partition; i++ {
|
||||
partitions = append(partitions, newDelivers[i*MaxGroupNum:(i+1)*MaxGroupNum])
|
||||
}
|
||||
return leaveNum, partitions, partition
|
||||
}
|
||||
|
||||
func secondOrder(delivers []*Deliver, resultList [][]int, listNum int) [][]int {
|
||||
newDelivers := secondOrderRule(delivers) //第二次排序
|
||||
|
||||
if listNum > 4*MinGroupNum {
|
||||
fourInOne := listNum / (4 * MinGroupNum)
|
||||
leave := listNum % (4 * MinGroupNum)
|
||||
|
||||
for i := 0; i < fourInOne; i++ {
|
||||
resultList = append(resultList, calculateFourInOne(newDelivers[i*4*MinGroupNum:(i+1)*4*MinGroupNum])...) //四倍在一组的计算
|
||||
}
|
||||
|
||||
if leave != 0 {
|
||||
resultList = append(resultList, calculateByLeft(toList(newDelivers[fourInOne*4*MinGroupNum:]))...)
|
||||
}
|
||||
} else {
|
||||
resultList = append(resultList, calculateByLeft(toList(newDelivers))...)
|
||||
}
|
||||
return resultList
|
||||
}
|
||||
|
||||
func toList(deliver []*Deliver) [][]int {
|
||||
result := make([][]int, 0)
|
||||
for _, item := range deliver {
|
||||
result = append(result, []int{item.Score, 1})
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
func calculateFourInOne(delivers []*Deliver) [][]int {
|
||||
Ids := thirdOrderRule(delivers) //第三次排序
|
||||
result := calculateByLeft(Ids)
|
||||
return result
|
||||
}
|
||||
|
||||
func calculateByLeft(leftList [][]int) [][]int {
|
||||
result := make([][]int, 0)
|
||||
for len(leftList) != 0 {
|
||||
newList := make([]int, 0)
|
||||
thisGroup := getFirstSome(leftList[0 : MinGroupNum/2]) //先拿到前面的几个
|
||||
|
||||
leftList = leftList[MinGroupNum/2:]
|
||||
//然后在随机随取后面的几个
|
||||
for i := 0; i < int(math.Ceil(MinGroupNum/2)); i++ {
|
||||
newList, leftList = getFrontAndEnd(leftList) //从前部和后部进行组合数组
|
||||
thisGroup = append(thisGroup, newList[0])
|
||||
}
|
||||
|
||||
result = append(result, thisGroup)
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
func getFirstSome(list [][]int) []int {
|
||||
result := make([]int, 0)
|
||||
for _, item := range list {
|
||||
result = append(result, item[0])
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
func getFrontAndEnd(leftList [][]int) ([]int, [][]int) {
|
||||
return rand.GetAwardByWeightWithLeftAward(leftList)
|
||||
}
|
||||
@@ -0,0 +1,95 @@
|
||||
/*
|
||||
* @Author : huangzj
|
||||
* @Time : 2020/11/13 12:00
|
||||
* @Description:在工程中有一个需求是对 指定数量的数组进行划分,按照每一层的规则分成对应数量,这边做一个测试.
|
||||
*/
|
||||
|
||||
package ProgressTest
|
||||
|
||||
import (
|
||||
"Go-Tool/util/rand"
|
||||
"fmt"
|
||||
"github.com/ahmetalpbalkan/go-linq"
|
||||
"testing"
|
||||
)
|
||||
|
||||
const (
|
||||
oneGroupNum = 4
|
||||
)
|
||||
|
||||
//
|
||||
//未完成
|
||||
//需求:有一组结构体【Deliver】,现在需要按照一定的规则把这么多的结构体划分为每组X个元素多组,假设这边X = 10 (前提是Deliver可以整除10)
|
||||
// 第一次按照Score排序,把Deliver划分为每组 8 * 10个元素的多个数组,不足80的按照一组算(如果分数相同,按照Id自然数排序)
|
||||
// 第二次按照Id在每个8 * 10的数组中排序,分成 4 * 10 的两个数组
|
||||
// 第三次按照AllScore进行排序,把 4 * 10的数组,分成两个2 * 10的数组
|
||||
// 第四次在2 * 10的数组中获取前10/2,然后随机在剩下的 2 * 10 - 10/2 的数组中随 10/2 个元素和第一个前五组成一组
|
||||
//
|
||||
// 在第一次划分中,不满8 * 10的数组,按照数组划分往下计算
|
||||
//
|
||||
func TestDeliver(t *testing.T) {
|
||||
list := MakeData() //创建数据
|
||||
deliver(list.Deliver) //进行分组操作
|
||||
}
|
||||
|
||||
func deliver(list []*Deliver) {
|
||||
group := len(list) / (8 * oneGroupNum) //求组数
|
||||
//lastNum := len(list) % (8*oneGroupNum) //求最后一组的数量(余数),如果为0则说明除得尽,不需要额外操作
|
||||
query := linq.From(list).OrderByDescending(func(i interface{}) interface{} {
|
||||
return i.(*Deliver).Score
|
||||
})
|
||||
queryList := make([]linq.Query, 0)
|
||||
queryList2 := make([]linq.Query, 0)
|
||||
queryList3 := make([]linq.Query, 0)
|
||||
|
||||
//第一个步骤:按照Score排序并划分
|
||||
for i := 0; i < group; i++ {
|
||||
//每次数组的创建都要先去掉前面的8 * 10个元素,再取此时的8*10个元素作为当前组.因为linq没有对应取区间的方法..
|
||||
queryList = append(queryList, query.Skip(i*8*oneGroupNum).Take(8*oneGroupNum))
|
||||
}
|
||||
|
||||
//第二个步骤:按照Id排序并划分
|
||||
for i, item := range queryList {
|
||||
for j := 0; j < len(queryList[i].Results())/(4*oneGroupNum); j++ {
|
||||
queryList2 = append(queryList2, item.OrderByDescending(func(result interface{}) interface{} {
|
||||
return result.(*Deliver).Id
|
||||
}).Skip(j*4*oneGroupNum).Take(4*oneGroupNum))
|
||||
}
|
||||
fmt.Println()
|
||||
}
|
||||
|
||||
//第三个步骤:按照AllScore进行排序并划分
|
||||
for i, item := range queryList2 {
|
||||
queryList3 = append(queryList3, item.OrderByDescending(func(i interface{}) interface{} {
|
||||
return i.(*Deliver).AllScore
|
||||
}).Skip(i*2*oneGroupNum).Take(2*oneGroupNum))
|
||||
}
|
||||
|
||||
for _, item := range queryList3 {
|
||||
deliver := make([]*Deliver, 0)
|
||||
fmt.Println(item.Results())
|
||||
item.ToSlice(&deliver)
|
||||
delivers := toIntList(deliver[0 : oneGroupNum/2])
|
||||
left := toIntList(deliver[oneGroupNum/2:])
|
||||
for i := 0; i < oneGroupNum/2; i++ {
|
||||
result := make([]int, 0)
|
||||
result, left = rand.GetAwardByWeightWithLeftAward(left)
|
||||
delivers = append(delivers, result)
|
||||
}
|
||||
fmt.Println(delivers)
|
||||
fmt.Println(left)
|
||||
}
|
||||
|
||||
//第四个步骤:排序划分然后进行随机组合.
|
||||
|
||||
fmt.Printf("")
|
||||
|
||||
}
|
||||
|
||||
func toIntList(delivers []*Deliver) [][]int {
|
||||
list := make([][]int, 0)
|
||||
for _, item := range delivers {
|
||||
list = append(list, []int{item.Id, item.AllScore, 1})
|
||||
}
|
||||
return list
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
* @Author : huangzj
|
||||
* @Time : 2020/11/16 18:00
|
||||
* @Description:
|
||||
*/
|
||||
|
||||
package ProgressTest
|
||||
|
||||
import "github.com/ahmetalpbalkan/go-linq"
|
||||
|
||||
type orderRule = func([]*Deliver) []*Deliver
|
||||
type intOrderRule = func([]*Deliver) [][]int
|
||||
|
||||
var (
|
||||
firstOrderRule orderRule
|
||||
secondOrderRule orderRule
|
||||
thirdOrderRule intOrderRule
|
||||
)
|
||||
|
||||
func FirstOrderRule(delivers []*Deliver) []*Deliver {
|
||||
var newDelivers []*Deliver
|
||||
linq.From(delivers).OrderByDescending(func(d interface{}) interface{} {
|
||||
return d.(*Deliver).Score
|
||||
}).ToSlice(&newDelivers)
|
||||
return newDelivers
|
||||
}
|
||||
|
||||
func SecondOrderRule(delivers []*Deliver) []*Deliver {
|
||||
newDeliver := make([]*Deliver, 0)
|
||||
//第二次排序
|
||||
linq.From(delivers).OrderByDescending(func(d interface{}) interface{} {
|
||||
return d.(*Deliver).Score
|
||||
}).ThenBy(func(d interface{}) interface{} {
|
||||
return d.(*Deliver).Id
|
||||
}).ToSlice(&newDeliver)
|
||||
|
||||
return newDeliver
|
||||
}
|
||||
|
||||
func ThirdOrderRule(delivers []*Deliver) [][]int {
|
||||
Ids := make([][]int, 0)
|
||||
//第三次排序
|
||||
linq.From(delivers).OrderByDescending(func(d interface{}) interface{} {
|
||||
return d.(*Deliver).Score
|
||||
}).Select(func(i interface{}) interface{} {
|
||||
return []int{i.(*Deliver).Score, 1}
|
||||
}).ToSlice(&Ids)
|
||||
return Ids
|
||||
}
|
||||
@@ -0,0 +1,504 @@
|
||||
{
|
||||
"Deliver": [
|
||||
{
|
||||
"Score": 1,
|
||||
"AllScore": 20000,
|
||||
"Id": 1
|
||||
},
|
||||
{
|
||||
"Score": 23,
|
||||
"AllScore": 4321423,
|
||||
"Id": 5
|
||||
},
|
||||
{
|
||||
"Score": 19,
|
||||
"AllScore": 43214,
|
||||
"Id": 3
|
||||
},
|
||||
{
|
||||
"Score": 39,
|
||||
"AllScore": 41324,
|
||||
"Id": 12
|
||||
},
|
||||
{
|
||||
"Score": 41,
|
||||
"AllScore": 2314,
|
||||
"Id": 55
|
||||
},
|
||||
{
|
||||
"Score": 42,
|
||||
"AllScore": 654,
|
||||
"Id": 23
|
||||
},
|
||||
{
|
||||
"Score": 49,
|
||||
"AllScore": 765,
|
||||
"Id": 16
|
||||
},
|
||||
{
|
||||
"Score": 98,
|
||||
"AllScore": 7876,
|
||||
"Id": 57
|
||||
},
|
||||
{
|
||||
"Score": 88,
|
||||
"AllScore": 8909,
|
||||
"Id": 77
|
||||
},
|
||||
{
|
||||
"Score": 77,
|
||||
"AllScore": 4532,
|
||||
"Id": 89
|
||||
},
|
||||
{
|
||||
"Score": 341,
|
||||
"AllScore": 356536,
|
||||
"Id": 24
|
||||
},
|
||||
{
|
||||
"Score": 123,
|
||||
"AllScore": 67456,
|
||||
"Id": 19
|
||||
},
|
||||
{
|
||||
"Score": 67,
|
||||
"AllScore": 8768,
|
||||
"Id": 31
|
||||
},
|
||||
{
|
||||
"Score": 33,
|
||||
"AllScore": 457,
|
||||
"Id": 80
|
||||
},
|
||||
{
|
||||
"Score": 32,
|
||||
"AllScore": 76,
|
||||
"Id": 98
|
||||
},
|
||||
{
|
||||
"Score": 43,
|
||||
"AllScore": 6787,
|
||||
"Id": 100
|
||||
},
|
||||
{
|
||||
"Score": 45,
|
||||
"AllScore": 8756,
|
||||
"Id": 121
|
||||
},
|
||||
{
|
||||
"Score": 89,
|
||||
"AllScore": 98765,
|
||||
"Id": 114
|
||||
},
|
||||
{
|
||||
"Score": 55,
|
||||
"AllScore": 234,
|
||||
"Id": 117
|
||||
},
|
||||
{
|
||||
"Score": 56,
|
||||
"AllScore": 8765,
|
||||
"Id": 135
|
||||
},
|
||||
{
|
||||
"Score": 90,
|
||||
"AllScore": 345,
|
||||
"Id": 201
|
||||
},
|
||||
{
|
||||
"Score": 135,
|
||||
"AllScore": 456543,
|
||||
"Id": 331
|
||||
},
|
||||
{
|
||||
"Score": 56,
|
||||
"AllScore": 6354677,
|
||||
"Id": 156
|
||||
},
|
||||
{
|
||||
"Score": 54,
|
||||
"AllScore": 8765,
|
||||
"Id": 178
|
||||
},
|
||||
{
|
||||
"Score": 34,
|
||||
"AllScore": 42352,
|
||||
"Id": 891
|
||||
},
|
||||
{
|
||||
"Score": 21,
|
||||
"AllScore": 24359,
|
||||
"Id": 444
|
||||
},
|
||||
{
|
||||
"Score": 45,
|
||||
"AllScore": 8735,
|
||||
"Id": 333
|
||||
},
|
||||
{
|
||||
"Score": 23,
|
||||
"AllScore": 68477,
|
||||
"Id": 251
|
||||
},
|
||||
{
|
||||
"Score": 47,
|
||||
"AllScore": 847645,
|
||||
"Id": 1
|
||||
},
|
||||
{
|
||||
"Score": 69,
|
||||
"AllScore": 76536,
|
||||
"Id": 1455
|
||||
},
|
||||
{
|
||||
"Score": 67,
|
||||
"AllScore": 7654352,
|
||||
"Id": 1871
|
||||
},
|
||||
{
|
||||
"Score": 48,
|
||||
"AllScore": 36356,
|
||||
"Id": 1980
|
||||
},
|
||||
{
|
||||
"Score": 47,
|
||||
"AllScore": 635763,
|
||||
"Id": 2001
|
||||
},
|
||||
{
|
||||
"Score": 45,
|
||||
"AllScore": 365436,
|
||||
"Id": 2100
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 63422,
|
||||
"Id": 2381
|
||||
},
|
||||
{
|
||||
"Score": 16,
|
||||
"AllScore": 35654,
|
||||
"Id": 7
|
||||
},
|
||||
{
|
||||
"Score": 14,
|
||||
"AllScore": 635634,
|
||||
"Id": 391
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 63542,
|
||||
"Id": 781
|
||||
},
|
||||
{
|
||||
"Score": 11,
|
||||
"AllScore": 63553,
|
||||
"Id": 171
|
||||
},
|
||||
{
|
||||
"Score": 99,
|
||||
"AllScore": 8758768,
|
||||
"Id": 392
|
||||
},
|
||||
{
|
||||
"Score": 88,
|
||||
"AllScore": 97658,
|
||||
"Id": 511
|
||||
},
|
||||
{
|
||||
"Score": 77,
|
||||
"AllScore": 87576,
|
||||
"Id": 501
|
||||
},
|
||||
{
|
||||
"Score": 66,
|
||||
"AllScore": 85675867,
|
||||
"Id": 1819
|
||||
},
|
||||
{
|
||||
"Score": 55,
|
||||
"AllScore": 412343,
|
||||
"Id": 1971
|
||||
},
|
||||
{
|
||||
"Score": 44,
|
||||
"AllScore": 314232,
|
||||
"Id": 1333
|
||||
},
|
||||
{
|
||||
"Score": 33,
|
||||
"AllScore": 3211324,
|
||||
"Id": 1555
|
||||
},
|
||||
{
|
||||
"Score": 22,
|
||||
"AllScore": 4132421,
|
||||
"Id": 2221
|
||||
},
|
||||
{
|
||||
"Score": 43,
|
||||
"AllScore": 65437,
|
||||
"Id": 17777
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 76444,
|
||||
"Id": 4411
|
||||
},
|
||||
{
|
||||
"Score": 86,
|
||||
"AllScore": 8976,
|
||||
"Id": 5111
|
||||
},
|
||||
{
|
||||
"Score": 55,
|
||||
"AllScore": 98467,
|
||||
"Id": 18821
|
||||
},
|
||||
{
|
||||
"Score": 98,
|
||||
"AllScore": 765265,
|
||||
"Id": 11771
|
||||
},
|
||||
{
|
||||
"Score": 67,
|
||||
"AllScore": 54235,
|
||||
"Id": 15666
|
||||
},
|
||||
{
|
||||
"Score": 78,
|
||||
"AllScore": 52345,
|
||||
"Id": 18912
|
||||
},
|
||||
{
|
||||
"Score": 67,
|
||||
"AllScore": 523452,
|
||||
"Id": 10912
|
||||
},
|
||||
{
|
||||
"Score": 34,
|
||||
"AllScore": 523452,
|
||||
"Id": 18712
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 565764,
|
||||
"Id": 166271
|
||||
},
|
||||
{
|
||||
"Score": 50,
|
||||
"AllScore": 87654,
|
||||
"Id": 1909342
|
||||
},
|
||||
{
|
||||
"Score": 36,
|
||||
"AllScore": 475647,
|
||||
"Id": 118223
|
||||
},
|
||||
{
|
||||
"Score": 49,
|
||||
"AllScore": 875658,
|
||||
"Id": 82178
|
||||
},
|
||||
{
|
||||
"Score": 54,
|
||||
"AllScore": 857346,
|
||||
"Id": 341223
|
||||
},
|
||||
{
|
||||
"Score": 21,
|
||||
"AllScore": 745674,
|
||||
"Id": 31321
|
||||
},
|
||||
{
|
||||
"Score": 56,
|
||||
"AllScore": 74674567,
|
||||
"Id": 98897
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 745746,
|
||||
"Id": 1891
|
||||
},
|
||||
{
|
||||
"Score": 98,
|
||||
"AllScore": 9879875,
|
||||
"Id": 103921
|
||||
},
|
||||
{
|
||||
"Score": 64,
|
||||
"AllScore": 7446,
|
||||
"Id": 1784671
|
||||
},
|
||||
{
|
||||
"Score": 77,
|
||||
"AllScore": 456746,
|
||||
"Id": 1903213
|
||||
},
|
||||
{
|
||||
"Score": 7,
|
||||
"AllScore": 52345423,
|
||||
"Id": 19123312
|
||||
},
|
||||
{
|
||||
"Score": 4,
|
||||
"AllScore": 2543252,
|
||||
"Id": 1012813
|
||||
},
|
||||
{
|
||||
"Score": 2,
|
||||
"AllScore": 413243124,
|
||||
"Id": 167316312
|
||||
},
|
||||
{
|
||||
"Score": 1,
|
||||
"AllScore": 41324,
|
||||
"Id": 19321321
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 5234,
|
||||
"Id": 132144
|
||||
},
|
||||
{
|
||||
"Score": 99,
|
||||
"AllScore": 1234124,
|
||||
"Id": 13215467
|
||||
},
|
||||
{
|
||||
"Score": 100,
|
||||
"AllScore": 43214,
|
||||
"Id": 195342
|
||||
},
|
||||
{
|
||||
"Score": 90,
|
||||
"AllScore": 43214,
|
||||
"Id": 1098768634
|
||||
},
|
||||
{
|
||||
"Score": 78,
|
||||
"AllScore": 43124132,
|
||||
"Id": 108698
|
||||
},
|
||||
{
|
||||
"Score": 56,
|
||||
"AllScore": 54325,
|
||||
"Id": 1098734
|
||||
},
|
||||
{
|
||||
"Score": 89,
|
||||
"AllScore": 65354,
|
||||
"Id": 13432112
|
||||
},
|
||||
{
|
||||
"Score": 78,
|
||||
"AllScore": 63543,
|
||||
"Id": 1343465
|
||||
},
|
||||
{
|
||||
"Score": 65,
|
||||
"AllScore": 4676745,
|
||||
"Id": 17657786
|
||||
},
|
||||
{
|
||||
"Score": 31,
|
||||
"AllScore": 47647,
|
||||
"Id": 13542354
|
||||
},
|
||||
{
|
||||
"Score": 55,
|
||||
"AllScore": 8476545,
|
||||
"Id": 142365676
|
||||
},
|
||||
{
|
||||
"Score": 31,
|
||||
"AllScore": 1000,
|
||||
"Id": 135467
|
||||
},
|
||||
{
|
||||
"Score": 67,
|
||||
"AllScore": 6357854,
|
||||
"Id": 1658658
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 653535,
|
||||
"Id": 1523456324
|
||||
},
|
||||
{
|
||||
"Score": 56,
|
||||
"AllScore": 655462,
|
||||
"Id": 17654899
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 635,
|
||||
"Id": 10009767
|
||||
},
|
||||
{
|
||||
"Score": 65,
|
||||
"AllScore": 365342,
|
||||
"Id": 1568534
|
||||
},
|
||||
{
|
||||
"Score": 55,
|
||||
"AllScore": 63556,
|
||||
"Id": 11324136
|
||||
},
|
||||
{
|
||||
"Score": 89,
|
||||
"AllScore": 63553,
|
||||
"Id": 108768745
|
||||
},
|
||||
{
|
||||
"Score": 98,
|
||||
"AllScore": 76245,
|
||||
"Id": 122213241
|
||||
},
|
||||
{
|
||||
"Score": 87,
|
||||
"AllScore": 76467,
|
||||
"Id": 21343441
|
||||
},
|
||||
{
|
||||
"Score": 54,
|
||||
"AllScore": 76467,
|
||||
"Id": 43232131
|
||||
},
|
||||
{
|
||||
"Score": 12,
|
||||
"AllScore": 1000,
|
||||
"Id": 7654761
|
||||
},
|
||||
{
|
||||
"Score": 45,
|
||||
"AllScore": 635765,
|
||||
"Id": 78689231
|
||||
},
|
||||
{
|
||||
"Score": 27,
|
||||
"AllScore": 635346,
|
||||
"Id": 987653121
|
||||
},
|
||||
{
|
||||
"Score": 19,
|
||||
"AllScore": 3653,
|
||||
"Id": 76321111
|
||||
},
|
||||
{
|
||||
"Score": 54,
|
||||
"AllScore": 6543,
|
||||
"Id": 923438321
|
||||
},
|
||||
{
|
||||
"Score": 21,
|
||||
"AllScore": 543254423,
|
||||
"Id": 9034241321
|
||||
},
|
||||
{
|
||||
"Score": 18,
|
||||
"AllScore": 43124321,
|
||||
"Id": 9432143211
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user