문제
#4344: 평균 이상
신입생의 90%는 자신이 반에서 평균 이상이라고 생각합니다. 당신은 그들에게 슬픈 진실을 말해야 합니다.
www.acmicpc.net
해결
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
var c, n, sum, count int
var avg float64
r := bufio.NewReader(os.Stdin)
w := bufio.NewWriter(os.Stdout)
defer w.Flush()
fmt.Fscanln(r, &c)
for i := 0; i < c; i++ {
fmt.Fscan(r, &n)
count = 0
var grade ()int = make(()int, n)
for j := 0; j < n; j++ {
fmt.Fscan(r, &grade(j))
sum += grade(j)
}
avg = float64(sum) / float64(n)
sum = 0
for j := 0; j < n; j++ {
if float64(grade(j)) > avg {
count++
}
}
avg = float64(count) / float64(n) * 100
fmt.Fprintf(w, "%0.3f", avg)
fmt.Fprintln(w, "%")
}
}