app/Main.hs:3:1: warning: [-Wunused-imports]
The import of ‘Control.Monad.Primitive’ is redundant
except perhaps to import instances from ‘Control.Monad.Primitive’
To import instances alone, use: import Control.Monad.Primitive()
|
3 | import Control.Monad.Primitive
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:6:1: warning: [-Wunused-imports]
The import of ‘Data.List’ is redundant
except perhaps to import instances from ‘Data.List’
To import instances alone, use: import Data.List()
|
6 | import Data.List
| ^^^^^^^^^^^^^^^^
app/Main.hs:7:1: warning: [-Wunused-imports]
The import of ‘Data.Char’ is redundant
except perhaps to import instances from ‘Data.Char’
To import instances alone, use: import Data.Char()
|
7 | import Data.Char
| ^^^^^^^^^^^^^^^^
app/Main.hs:8:1: warning: [-Wunused-imports]
The import of ‘Data.Ord’ is redundant
except perhaps to import instances from ‘Data.Ord’
To import instances alone, use: import Data.Ord()
|
8 | import Data.Ord
| ^^^^^^^^^^^^^^^
app/Main.hs:10:1: warning: [-Wunused-imports]
The import of ‘Data.Bool’ is redundant
except perhaps to import instances from ‘Data.Bool’
To import instances alone, use: import Data.Bool()
|
10 | import Data.Bool
| ^^^^^^^^^^^^^^^^
app/Main.hs:11:1: warning: [-Wunused-imports]
The import of ‘Data.Vector.Unboxed.Base’ is redundant
except perhaps to import instances from ‘Data.Vector.Unboxed.Base’
To import instances alone, use: import Data.Vector.Unboxed.Base()
|
11 | import Data.Vector.Unboxed.Base
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:13:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Vector.Unboxed.Mutable’ is redundant
except perhaps to import instances from ‘Data.Vector.Unboxed.Mutable’
To import instances alone, use: import Data.Vector.Unboxed.Mutable()
|
13 | import qualified Data.Vector.Unboxed.Mutable as VUM
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:14:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Vector’ is redundant
except perhaps to import instances from ‘Data.Vector’
To import instances alone, use: import Data.Vector()
|
14 | import qualified Data.Vector as V
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:15:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Vector.Mutable’ is redundant
except perhaps to import instances from ‘Data.Vector.Mutable’
To import instances alone, use: import Data.Vector.Mutable()
|
15 | import qualified Data.Vector.Mutable as VM
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:18:1: warning: [-Wunused-imports]
The import of ‘Data.Sequence’ is redundant
except perhaps to import instances from ‘Data.Sequence’
To import instances alone, use: import Data.Sequence()
|
18 | import Data.Sequence (Seq)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:19:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Sequence’ is redundant
except perhaps to import instances from ‘Data.Sequence’
To import instances alone, use: import Data.Sequence()
|
19 | import qualified Data.Sequence as Seq
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:20:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Set’ is redundant
except perhaps to import instances from ‘Data.Set’
To import instances alone, use: import Data.Set()
|
20 | import qualified Data.Set as Set
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:21:1: warning: [-Wunused-imports]
The import of ‘Data.Tree’ is redundant
except perhaps to import instances from ‘Data.Tree’
To import instances alone, use: import Data.Tree()
|
21 | import Data.Tree
| ^^^^^^^^^^^^^^^^
app/Main.hs:22:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Map’ is redundant
except perhaps to import instances from ‘Data.Map’
To import instances alone, use: import Data.Map()
|
22 | import qualified Data.Map as M
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:23:1: warning: [-Wunused-imports]
The import of ‘Data.IntMap.Strict’ is redundant
except perhaps to import instances from ‘Data.IntMap.Strict’
To import instances alone, use: import Data.IntMap.Strict()
|
23 | import Data.IntMap.Strict (IntMap)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:24:1: warning: [-Wunused-imports]
The qualified import of ‘Data.IntMap’ is redundant
except perhaps to import instances from ‘Data.IntMap’
To import instances alone, use: import Data.IntMap()
|
24 | import qualified Data.IntMap as IM
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:25:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Heap’ is redundant
except perhaps to import instances from ‘Data.Heap’
To import instances alone, use: import Data.Heap()
|
25 | import qualified Data.Heap as H
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/Main.hs:27:1: warning: [-Wmissing-signatures]
Top-level binding with no type signature:
readInt :: BS.ByteString -> Int
|
27 | readInt = fst . fromJust . BS.readInt
| ^^^^^^^
app/Main.hs:28:1: warning: [-Wmissing-signatures]
Top-level binding with no type signature:
readIntList :: BS.ByteString -> [Int]
|
28 | readIntList = map readInt . BS.words
| ^^^^^^^^^^^
app/Main.hs:29:1: warning: [-Wmissing-signatures]
Top-level binding with no type signature: getInt :: IO Int
|
29 | getInt = readInt <$> BS.getLine
| ^^^^^^
app/Main.hs:30:1: warning: [-Wmissing-signatures]
Top-level binding with no type signature: getIntList :: IO [Int]
|
30 | getIntList = readIntList <$> BS.getLine
| ^^^^^^^^^^
app/Main.hs:32:1: warning: [-Wmissing-signatures]
Top-level binding with no type signature:
putStrList :: Show a => [a] -> IO ()
|
32 | putStrList xs = putStrLn . unwords $ map show xs
| ^^^^^^^^^^
app/Main.hs:32:1: warning: [-Wunused-top-binds]
Defined but not used: ‘putStrList’
|
32 | putStrList xs = putStrLn . unwords $ map show xs
| ^^^^^^^^^^
app/Main.hs:34:1: warning: [-Wmissing-signatures]
Top-level binding with no type signature: main :: IO ()
|
34 | main = do
| ^^^^
app/Main.hs:44:9: warning: [-Wincomplete-patterns]
Pattern match(es) are non-exhaustive
In an equation for ‘subproblems’:
Patterns of type ‘(a, Int)’ not matched: (_, _)
|
44 | subproblems (t, i) | t == 0 && i == 1 = [((0, i-1), 0)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
app/Main.hs:49:26: warning: [-Wtype-defaults]
• Defaulting the type variable ‘a0’ to type ‘Integer’ in the following constraints
(Ix a0) arising from a use of ‘!’ at app/Main.hs:49:26
(Num a0) arising from the literal ‘0’ at app/Main.hs:49:29
(Num a0) arising from the literal ‘0’ at app/Main.hs:41:18
(Num a0) arising from the literal ‘0’ at app/Main.hs:40:20
(Num a0) arising from the literal ‘0’ at app/Main.hs:38:17
(Ix a0) arising from a use of ‘dpsolve’ at app/Main.hs:48:19-25
(Eq a0) arising from a use of ‘subproblems’ at app/Main.hs:48:55-65
(Num a0)
arising from a use of ‘subproblems’ at app/Main.hs:48:55-65
• In the first argument of ‘max’, namely ‘(dparray ! (0, n))’
In the second argument of ‘($)’, namely
‘max (dparray ! (0, n)) (dparray ! (1, n))’
In a stmt of a 'do' block:
print $ max (dparray ! (0, n)) (dparray ! (1, n))
|
49 | print $ max (dparray ! (0, n)) (dparray ! (1, n))
| ^