結果
| 問題 | No.29 パワーアップ |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-02-15 23:20:29 |
| 言語 | Go (1.23.4) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 5,000 ms |
| コード長 | 1,000 bytes |
| 記録 | |
| コンパイル時間 | 11,816 ms |
| コンパイル使用メモリ | 236,176 KB |
| 実行使用メモリ | 7,720 KB |
| 最終ジャッジ日時 | 2025-10-24 20:56:34 |
| 合計ジャッジ時間 | 12,643 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 22 |
ソースコード
package main
import "fmt"
import "bufio"
import "os"
func loadItems(numOfDefeats int, sc *bufio.Scanner) []int {
// 0-9で表す。
items := make([]int, 10)
for i := 0;i < numOfDefeats; i++ {
var r1, r2, r3 int
sc.Scan()
text := sc.Text()
fmt.Sscanf(text, "%d %d %d", &r1, &r2, &r3)
for _, v := range []int{r1, r2, r3} {
items[v - 1]++
}
}
return items
}
func main() {
var defeats int
fmt.Scan(&defeats)
sc := bufio.NewScanner(os.Stdin)
sc.Split(bufio.ScanLines)
items := loadItems(defeats, sc)
fmt.Println(solve(items))
}
func solve(defeats []int) int {
result := 0
// それぞれのアイテムについて、2で割った商だけパワーアップできる。
for ind, v := range defeats {
quotient := v / 2
rem := v % 2
result += quotient
defeats[ind] = rem
}
// 残ったアイテムの個数を4で割った商の回数だけパワーアップできる
sum := 0
for _, v := range defeats {
sum += v
}
result += sum / 4
return result
}