CoolFace
Datasetpublic

TheRealSamuel/LeetCodeProblem

sourceHugging Faceupdated 2mo agoView on Hugging Face
0likes572downloads
Main.hs45 linesDownload Raw Back to haskell_tests
1 2module Main where3import Test.HUnit4 5--Program start6supersequences :: [String] -> [[Int]]7supersequences words = undefined8 9--Program end10 11-- Test cases12 13test1 :: Test14test1 = TestCase (assertEqual "for (supersequences [ \"ab \", \"ba \"])," [[1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]] (supersequences ["ab","ba"]))15 16test2 :: Test17test2 = TestCase (assertEqual "for (supersequences [ \"aa \", \"ac \"])," [[2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]] (supersequences ["aa","ac"]))18 19test3 :: Test20test3 = TestCase (assertEqual "for (supersequences [ \"aa \", \"bb \", \"cc \"])," [[2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]] (supersequences ["aa","bb","cc"]))21 22test4 :: Test23test4 = TestCase (assertEqual "for (supersequences [ \"wp \",  \"gb \",  \"mv \",  \"ng \",  \"em \",  \"ls \",  \"ay \",  \"ah \",  \"xt \",  \"ua \",  \"pn \",  \"mg \",  \"fs \",  \"pq \",  \"kp \",  \"ja \",  \"hs \",  \"au \",  \"wh \",  \"tc \",  \"cm \",  \"ku \",  \"zb \",  \"cz \",  \"sm \",  \"bk \",  \"nu \",  \"wu \",  \"su \",  \"yh \",  \"rv \",  \"oz \",  \"ce \",  \"br \",  \"fy \",  \"jq \",  \"qg \",  \"qr \",  \"zz \",  \"xi \",  \"ov \",  \"ib \",  \"ci \",  \"cq \",  \"gm \",  \"vt \",  \"gq \",  \"lx \",  \"hz \",  \"qw \",  \"pp \",  \"oo \",  \"xv \",  \"ey \",  \"gc \",  \"sa \",  \"fw \",  \"dx \",  \"zv \",  \"ni \",  \"gr \",  \"kd \",  \"wg \",  \"yy \",  \"gl \",  \"wy \",  \"sn \",  \"bn \",  \"kn \",  \"qp \",  \"vg \",  \"rb \",  \"hh \",  \"nz \",  \"jx \",  \"mu \",  \"xu \",  \"mn \",  \"hy \",  \"mr \",  \"ev \",  \"qa \",  \"me \",  \"sq \",  \"dg \",  \"qu \",  \"iy \",  \"od \",  \"sf \",  \"jf \",  \"tt \",  \"ym \",  \"ki \",  \"wi \",  \"ts \",  \"ur \",  \"du \",  \"dd \",  \"dq \",  \"ie \",  \"zg \",  \"wc \",  \"bj \",  \"xf \",  \"md \",  \"ac \",  \"sx \",  \"ra \",  \"my \",  \"rd \",  \"fq \",  \"vy \",  \"bi \",  \"fn \",  \"ew \",  \"rf \",  \"fu \",  \"za \",  \"rr \",  \"py \",  \"iz \",  \"kk \",  \"pw \",  \"rt \",  \"ff \",  \"tw \",  \"fe \",  \"lj \",  \"bd \",  \"fz \",  \"re \",  \"mb \",  \"th \",  \"et \",  \"zl \",  \"uz \",  \"qh \",  \"be \",  \"kx \",  \"dj \",  \"jm \",  \"ga \",  \"zn \",  \"bh \",  \"vq \",  \"wn \",  \"qn \",  \"np \",  \"cb \",  \"wl \",  \"ll \",  \"st \",  \"vl \",  \"vd \",  \"tq \",  \"no \",  \"lp \",  \"ho \",  \"nt \",  \"wv \",  \"lz \",  \"ys \",  \"qe \",  \"vh \",  \"ge \",  \"dm \",  \"mz \",  \"uo \",  \"lt \",  \"hv \",  \"kh \",  \"jr \",  \"db \",  \"nh \",  \"pg \",  \"qv \",  \"qf \",  \"vp \",  \"va \",  \"xm \",  \"ry \",  \"to \",  \"li \",  \"sk \",  \"lq \",  \"bt \",  \"al \",  \"we \",  \"fb \",  \"ea \",  \"wd \",  \"up \",  \"az \",  \"vn \",  \"hc \",  \"ui \",  \"tp \",  \"ql \",  \"hg \",  \"lk \",  \"tm \",  \"pi \",  \"zs \",  \"aj \",  \"tl \",  \"td \",  \"kq \",  \"sr \",  \"so \",  \"ou \",  \"gi \",  \"tn \",  \"ha \",  \"yp \",  \"rs \",  \"dp \",  \"pl \",  \"ub \",  \"ot \",  \"na \",  \"oj \",  \"nn \",  \"lm \",  \"xd \",  \"cv \",  \"en \",  \"pd \"])," [[2,2,1,2,2,2,2,2,1,1,2,2,1,2,2,2,2,2,1,2,1,1,1,1,2,2]] (supersequences ["wp", "gb", "mv", "ng", "em", "ls", "ay", "ah", "xt", "ua", "pn", "mg", "fs", "pq", "kp", "ja", "hs", "au", "wh", "tc", "cm", "ku", "zb", "cz", "sm", "bk", "nu", "wu", "su", "yh", "rv", "oz", "ce", "br", "fy", "jq", "qg", "qr", "zz", "xi", "ov", "ib", "ci", "cq", "gm", "vt", "gq", "lx", "hz", "qw", "pp", "oo", "xv", "ey", "gc", "sa", "fw", "dx", "zv", "ni", "gr", "kd", "wg", "yy", "gl", "wy", "sn", "bn", "kn", "qp", "vg", "rb", "hh", "nz", "jx", "mu", "xu", "mn", "hy", "mr", "ev", "qa", "me", "sq", "dg", "qu", "iy", "od", "sf", "jf", "tt", "ym", "ki", "wi", "ts", "ur", "du", "dd", "dq", "ie", "zg", "wc", "bj", "xf", "md", "ac", "sx", "ra", "my", "rd", "fq", "vy", "bi", "fn", "ew", "rf", "fu", "za", "rr", "py", "iz", "kk", "pw", "rt", "ff", "tw", "fe", "lj", "bd", "fz", "re", "mb", "th", "et", "zl", "uz", "qh", "be", "kx", "dj", "jm", "ga", "zn", "bh", "vq", "wn", "qn", "np", "cb", "wl", "ll", "st", "vl", "vd", "tq", "no", "lp", "ho", "nt", "wv", "lz", "ys", "qe", "vh", "ge", "dm", "mz", "uo", "lt", "hv", "kh", "jr", "db", "nh", "pg", "qv", "qf", "vp", "va", "xm", "ry", "to", "li", "sk", "lq", "bt", "al", "we", "fb", "ea", "wd", "up", "az", "vn", "hc", "ui", "tp", "ql", "hg", "lk", "tm", "pi", "zs", "aj", "tl", "td", "kq", "sr", "so", "ou", "gi", "tn", "ha", "yp", "rs", "dp", "pl", "ub", "ot", "na", "oj", "nn", "lm", "xd", "cv", "en", "pd"]))24 25test5 :: Test26test5 = TestCase (assertEqual "for (supersequences [ \"kj \",  \"kn \",  \"eb \",  \"vo \",  \"hg \",  \"jn \",  \"qd \",  \"ye \",  \"ai \",  \"ux \",  \"cg \",  \"lh \",  \"qg \",  \"ls \",  \"lf \",  \"wd \",  \"pf \"])," [[1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,0,1,0,1,1,1,1,1,0]] (supersequences ["kj", "kn", "eb", "vo", "hg", "jn", "qd", "ye", "ai", "ux", "cg", "lh", "qg", "ls", "lf", "wd", "pf"]))27 28test6 :: Test29test6 = TestCase (assertEqual "for (supersequences [ \"jv \",  \"vx \",  \"jo \",  \"wf \",  \"uo \",  \"gb \",  \"zt \",  \"db \",  \"ko \",  \"hu \",  \"bc \",  \"pq \",  \"eb \",  \"sj \",  \"se \",  \"bt \",  \"wa \",  \"mw \",  \"xo \",  \"qx \",  \"da \",  \"wz \",  \"ok \",  \"ts \",  \"dh \",  \"sb \",  \"du \",  \"yp \",  \"dp \",  \"ub \",  \"gs \",  \"bm \"])," [[1,2,1,1,1,1,1,1,0,1,1,0,1,0,2,1,1,0,1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1,0,1,1,0,1,0,2,1,1,0,1,2,1,1,1,1,1,1],[1,2,1,1,1,1,1,1,0,1,2,0,1,0,1,1,1,0,1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1,0,1,2,0,1,0,1,1,1,0,1,2,1,1,1,1,1,1],[1,1,1,1,1,1,1,1,0,1,1,0,1,0,2,1,1,0,2,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,1,0,1,2,0,1,0,1,1,1,0,2,1,1,1,1,1,1,1]] (supersequences ["jv", "vx", "jo", "wf", "uo", "gb", "zt", "db", "ko", "hu", "bc", "pq", "eb", "sj", "se", "bt", "wa", "mw", "xo", "qx", "da", "wz", "ok", "ts", "dh", "sb", "du", "yp", "dp", "ub", "gs", "bm"]))30 31test7 :: Test32test7 = TestCase (assertEqual "for (supersequences [ \"sk \",  \"fj \",  \"km \",  \"ql \",  \"in \",  \"ex \",  \"zp \",  \"px \",  \"dn \",  \"ej \",  \"xg \",  \"pp \",  \"yx \",  \"ay \",  \"jz \"])," [[1,0,0,1,1,1,1,0,1,1,1,1,1,1,0,2,1,0,1,0,0,0,0,1,1,1]] (supersequences ["sk", "fj", "km", "ql", "in", "ex", "zp", "px", "dn", "ej", "xg", "pp", "yx", "ay", "jz"]))33 34test8 :: Test35test8 = TestCase (assertEqual "for (supersequences [ \"ex \",  \"ao \",  \"ak \",  \"dy \",  \"gr \",  \"rf \",  \"mz \",  \"rr \",  \"ch \",  \"iz \",  \"ry \",  \"xw \",  \"ju \",  \"pj \",  \"rt \",  \"di \",  \"eg \",  \"ox \",  \"ja \",  \"ct \",  \"je \",  \"fp \",  \"ku \",  \"ph \",  \"nb \",  \"gh \",  \"az \",  \"fg \",  \"tg \",  \"kc \",  \"qa \",  \"gn \",  \"oq \",  \"qs \",  \"gg \",  \"ej \",  \"ce \",  \"xl \",  \"un \",  \"av \",  \"cf \",  \"bq \",  \"uj \",  \"jq \",  \"xj \",  \"oa \",  \"km \",  \"zz \",  \"uu \",  \"hn \",  \"wj \",  \"bo \",  \"df \",  \"co \",  \"zi \",  \"cv \",  \"dm \",  \"rn \",  \"an \"])," [[2,1,1,1,2,1,2,1,1,1,1,1,1,1,1,1,1,2,1,1,2,1,1,1,1,2],[2,1,1,1,1,1,2,1,1,2,1,1,1,1,1,1,1,2,1,1,2,1,1,1,1,2]] (supersequences ["ex", "ao", "ak", "dy", "gr", "rf", "mz", "rr", "ch", "iz", "ry", "xw", "ju", "pj", "rt", "di", "eg", "ox", "ja", "ct", "je", "fp", "ku", "ph", "nb", "gh", "az", "fg", "tg", "kc", "qa", "gn", "oq", "qs", "gg", "ej", "ce", "xl", "un", "av", "cf", "bq", "uj", "jq", "xj", "oa", "km", "zz", "uu", "hn", "wj", "bo", "df", "co", "zi", "cv", "dm", "rn", "an"]))36 37 38-- Grouping test cases39tests :: Test40tests = TestList [TestLabel "Test1" test1, TestLabel "Test2" test2, TestLabel "Test3" test3, TestLabel "Test4" test4, TestLabel "Test5" test5, TestLabel "Test6" test6, TestLabel "Test7" test7]41 42-- Running the tests43main :: IO Counts44main = runTestTT tests45