let ``No.4 おもりと天秤`` () = let c = int(stdin.ReadLine()) - 1 let l = stdin.ReadLine().Split(' ') |> Seq.map int |> Seq.toList let m = List.sum l let p = if m &&& 1 = 1 then 0 else let m2 = m/2 let dp = Array.init 10000 (fun _ -> 0) dp.[0] <- 1 for i in 0..c do for j in (seq[m2..(-1)..(l.[i])]) do dp.[j] <- (dp.[j] ||| dp.[j-l.[i]]) dp.[m2] printfn "%s" ["impossible";"possible";].[p] ``No.4 おもりと天秤`` ()