题解 | 分数线划定
分数线划定
https://www.nowcoder.com/practice/2395fa7b6c6e452e8d8310a7cfdbe902
package main
import (
"fmt"
"math"
"sort"
)
func main() {
var n int
var m float64
fmt.Scan(&n, &m)
t := math.Floor(1.5 * m)
type student struct {
K int
S int
}
sli := make([]student, 0, n)
for i := 0; i < n; i++ {
st := student{}
fmt.Scan(&st.K, &st.S)
sli = append(sli, st)
}
sort.Slice(sli, func(i, j int) bool {
if sli[i].S != sli[j].S {
return sli[i].S > sli[j].S
}
return sli[i].K < sli[j].K
})
score := sli[int(t)-1].S
res := make([]student, 0, n)
for _, v := range sli {
if v.S >= score {
res = append(res, v)
}
}
fmt.Printf("%d %d\n", score, len(res))
for _, v := range res {
fmt.Printf("%d %d\n", v.K, v.S)
}
}

天翼支付科技有限公司公司福利 16人发布
查看9道真题和解析