Submission #1780098


Source Code Expand

import Data.List

diff :: String -> String -> Int
diff s1 s2 = length $ foldl (flip delete) s1 s2

solve :: String -> String -> Int -> String
solve [] _ _ = []
solve str _ 0 = str
solve str sstr k = solve' str (nub sstr) sstr k
    where
        solve' [] _ _ _ = []
        solve' _ [] _ _ = []
        solve' (s:ss) (c:cs) s1 k1 =
            let s2 = c `delete` s1
                k2 = if s == c then k1 else k1 - 1
            in if diff ss s2 <= k2
                then c : solve ss s2 k2
                else solve' (s:ss) cs s1 k1

main :: IO ()
main = do
    [_,k] <- map read . words <$> getLine :: IO [Int]
    s <- getLine
    putStrLn $ solve s (sort s) k

Submission Info

Submission Time
Task C - 辞書式順序ふたたび
User atctk
Language Haskell (GHC 7.10.3)
Score 100
Code Size 690 Byte
Status AC
Exec Time 16 ms
Memory 1020 KB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 58
Set Name Test Cases
All hand_1_0.txt, hand_1_1.txt, hand_1_2.txt, hand_1_3.txt, hand_1_4.txt, hand_1_5.txt, hand_1_6.txt, hand_1_7.txt, hand_1_8.txt, hand_2_0.txt, hand_2_1.txt, hand_2_10.txt, hand_2_2.txt, hand_2_3.txt, hand_2_4.txt, hand_2_5.txt, hand_2_6.txt, hand_2_7.txt, hand_2_8.txt, hand_2_9.txt, hand_3_2.txt, hand_3_3.txt, hand_3_4.txt, hand_3_5.txt, hand_3_6.txt, hand_4_2.txt, hand_4_3.txt, hand_4_4.txt, hand_4_5.txt, hand_4_6.txt, random_1.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_2.txt, random_3.txt, random_4.txt, random_5.txt, random_6.txt, random_7.txt, random_8.txt, random_9.txt, sample_1.txt, sample_2.txt, sample_3.txt, sample_4.txt, small_1.txt, small_2.txt, small_3.txt, small_4.txt, small_5.txt, small_6.txt, small_7.txt, small_8.txt, small_9.txt
Case Name Status Exec Time Memory
hand_1_0.txt AC 2 ms 508 KB
hand_1_1.txt AC 2 ms 508 KB
hand_1_2.txt AC 2 ms 508 KB
hand_1_3.txt AC 2 ms 508 KB
hand_1_4.txt AC 2 ms 508 KB
hand_1_5.txt AC 2 ms 508 KB
hand_1_6.txt AC 2 ms 508 KB
hand_1_7.txt AC 2 ms 508 KB
hand_1_8.txt AC 2 ms 508 KB
hand_2_0.txt AC 2 ms 508 KB
hand_2_1.txt AC 2 ms 508 KB
hand_2_10.txt AC 2 ms 508 KB
hand_2_2.txt AC 2 ms 508 KB
hand_2_3.txt AC 2 ms 508 KB
hand_2_4.txt AC 2 ms 508 KB
hand_2_5.txt AC 2 ms 508 KB
hand_2_6.txt AC 2 ms 508 KB
hand_2_7.txt AC 2 ms 508 KB
hand_2_8.txt AC 2 ms 508 KB
hand_2_9.txt AC 2 ms 508 KB
hand_3_2.txt AC 2 ms 508 KB
hand_3_3.txt AC 2 ms 508 KB
hand_3_4.txt AC 2 ms 508 KB
hand_3_5.txt AC 2 ms 508 KB
hand_3_6.txt AC 2 ms 508 KB
hand_4_2.txt AC 2 ms 508 KB
hand_4_3.txt AC 2 ms 508 KB
hand_4_4.txt AC 2 ms 508 KB
hand_4_5.txt AC 2 ms 508 KB
hand_4_6.txt AC 2 ms 508 KB
random_1.txt AC 2 ms 892 KB
random_10.txt AC 15 ms 1020 KB
random_11.txt AC 10 ms 1020 KB
random_12.txt AC 12 ms 1020 KB
random_13.txt AC 8 ms 1020 KB
random_14.txt AC 5 ms 1020 KB
random_15.txt AC 3 ms 892 KB
random_2.txt AC 3 ms 892 KB
random_3.txt AC 2 ms 892 KB
random_4.txt AC 4 ms 1020 KB
random_5.txt AC 2 ms 892 KB
random_6.txt AC 6 ms 1020 KB
random_7.txt AC 9 ms 1020 KB
random_8.txt AC 16 ms 1020 KB
random_9.txt AC 16 ms 1020 KB
sample_1.txt AC 2 ms 508 KB
sample_2.txt AC 2 ms 508 KB
sample_3.txt AC 1 ms 508 KB
sample_4.txt AC 1 ms 508 KB
small_1.txt AC 2 ms 380 KB
small_2.txt AC 1 ms 380 KB
small_3.txt AC 1 ms 380 KB
small_4.txt AC 2 ms 508 KB
small_5.txt AC 1 ms 380 KB
small_6.txt AC 2 ms 380 KB
small_7.txt AC 1 ms 508 KB
small_8.txt AC 2 ms 508 KB
small_9.txt AC 2 ms 508 KB