結果
問題 | No.202 1円玉投げ |
ユーザー |
|
提出日時 | 2015-10-22 23:34:26 |
言語 | Scala(Beta) (3.6.2) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 1,229 bytes |
コンパイル時間 | 8,022 ms |
コンパイル使用メモリ | 238,148 KB |
最終ジャッジ日時 | 2024-11-15 04:43:56 |
合計ジャッジ時間 | 8,865 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
[31m[31m-- [E040] Syntax Error: Main.scala:49:32 ---------------------------------------[0m[0m [31m49 |[0m [33mdef[0m [36mmain[0m([36margs[0m: [35mArray[0m[[35mString[0m]) { [31m[31m |[0m ^[0m [31m |[0m '=' expected, but '{' found 1 error found
ソースコード
import java.util.Scannerimport scala.collection.{mutable => mu}object Problem202 {type Index = (Int, Int)type Point = (Int, Int)def overlap(a: Point, b: Point): Boolean = {Math.pow(a._1 - b._1, 2.0) + Math.pow(a._2 - b._2, 2.0) < 400}def proc(coins: Seq[Point]): Int = {val S = new mu.HashMap[Index, mu.HashSet[Point]]()def overlapCoin(coin: Point, index: Index): Boolean = {val (px, py) = (index._1, index._2)for {pxi <- px - 1 to px + 1pyi <- py - 1 to py + 1points <- S.get(pxi, pyi)point <- pointsif overlap(coin, point)} {return true}false}def putCoin(coin: Point): Unit = {val index = (coin._1 / 20, coin._2 / 20)if (!overlapCoin(coin, index)) {if (!S.contains(index)) {S += index -> mu.HashSet[Point]()}S(index) += coin}}coins.foreach { coin =>putCoin(coin)}S.map(_._2.size).sum}def main(args: Array[String]) {val sc = new Scanner(System.in)val n = sc.nextInt()val coins = Array.fill(n)((sc.nextInt(), sc.nextInt()))val result = proc(coins)println(result)}}