목록algospot (3)
Graphics Programming
문제: https://algospot.com/judge/problem/read/URI 쉬운 거 그만 풀려고 했는데 이 문제는 댓글에 하도 함정이 있느니 어쩌느니 해서 한 번 풀어봤다. main = do num_s special xs _ -> x : decode xs where special (z:y:ys) = case y of '0' -> ' ' : decode ys '1' -> '!' : decode ys '4' -> '$' : decode ys '5' -> '%' : decode ys '8' -> '(' : decode ys '9' -> ')' : decode ys 'a' -> '*' : decode ys _ -> '%' : z : y : decode ys 한 방에 통과되는데.. 뭐가 함정이라는 거지..
문제: https://algospot.com/judge/problem/read/HOTSUMMER 문제 수: n 목표치: goal 사용량: a1 a2 a3 a4 a5 a6 a7 a8 a9 a1 + a2 + ... + a9 >= 를 일일이 쓰며 따져볼 필요가 없으니 do 표기를 사용해서 금방 작성했다. import Control.Monad import System.IO main = do numProblems_s
문제: https://algospot.com/judge/problem/read/LECTURE 짝수 길이의 문자열을 입력받아 -> 두 개씩 자른 다음 -> 사전순 정렬해서 -> 다시 합쳐서 -> 출력하라. = getLine - pairup - sort - concat - putStrLn 앞의 두 문제(MERCY, ENDIANS)를 풀어봐서 이제 입출력에서는 걸리적거리는 게 없다. 그냥 함수 합성 연산자 (.) 를 이용해서 핵심 코드를 한 줄로 쓰는 멋을 부리고 싶었다. 근데 리스트를 두 개씩 쪼개는 라이브러리 함수를 못 찾아서 실패.. -,- 이것저것 섞으면 그런 함수를 정의할 수도 있을 것 같은데... 일단 문자열을 쪼개주는 pairup이라는 함수를 직접 정의했다. 이제 입력 문자열을 str이라고 하면 ..