+++ /dev/null
-module Instance where
-import Data.Array.IArray
-import Data.Array.Unboxed
-import ArrayStuff
-import Formatter
-
-type Wt = Double -- Can be any RealFrac.
-numAsWt x = fromInteger (toInteger x)
-
-data Instance = Instance
- Int -- numReviewers
- Int -- numProposals
- (UArray Int Wt) -- ! reviewer -> relative load
- (UArray (Int, Int) Wt) -- ! (reviewer, proposal) -> pref
- deriving Eq
-
-instance Show Instance where
- show (Instance numRvrs numProps loadA prefA) =
- let theRvrs = [0..numRvrs-1]; theProps = [0..numProps-1] in
- "Instance with " ++ show numRvrs ++ " reviewers and " ++ show numProps ++ " proposals:\n" ++ formatTable (
- ( "" : map (\i -> "R#" ++ show i ) theRvrs) :
- ( "RLoad" : map (\i -> show (loadA ! i) ) theRvrs) :
- map (\j -> ("P#" ++ show j) : map (\i -> show (prefA ! (i, j))) theRvrs) theProps
- )