From 863e44707e87e6a7722f412a41fff66575bbfcd2 Mon Sep 17 00:00:00 2001 From: Yuchen Pei Date: Thu, 22 Jun 2017 18:57:14 -0400 Subject: first commit --- Math/Combinatorics/YoungTableaux.hs | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 Math/Combinatorics/YoungTableaux.hs diff --git a/Math/Combinatorics/YoungTableaux.hs b/Math/Combinatorics/YoungTableaux.hs new file mode 100644 index 0000000..baa11c0 --- /dev/null +++ b/Math/Combinatorics/YoungTableaux.hs @@ -0,0 +1,11 @@ +isRowWord' :: Ord a => [a] -> [a] -> [a] -> Bool +isRowWord' _ ys [] = ys == [] +isRowWord' [] [] zs = isRowWord' [head zs] [] (tail zs) +isRowWord' xs [] zs = if last xs <= head zs then isRowWord' (xs ++ [head zs]) [] (tail zs) else isRowWord' [] xs zs +isRowWord' xs ys zs = + if xs == [] || last xs <= head zs + then head ys > head zs && (isRowWord' (xs ++ [head zs]) (tail ys) (tail zs)) + else ys == [] && isRowWord' [] xs zs + +isRowWord :: Ord a => [a] -> Bool +isRowWord = isRowWord' [] [] -- cgit v1.2.3