1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import Data.List main = do name1 <- getLine name2 <- getLine putStr $ show $ flames name1 name2 flames :: [Char] -> [Char] -> Char flames name1 name2 = flames' count where count = length $ removeCommon name1 name2 flames' count = flamesFrom "FLAMES" count flamesFrom :: [Char] -> Int -> Char flamesFrom [x] _ = x flamesFrom s n = flamesFrom ((drop modn s) ++ (take (modn - 1) s)) n where modn = if roundedn == 0 then length s else roundedn where roundedn = n `mod` (length s) removeCommon :: Eq a => [a] -> [a] -> [a] removeCommon name1 name2 = (name1 `removeMatching` name2) ++ (name2 `removeMatching` name1) removeMatching :: Eq a => [a] -> [a] -> [a] removeMatching [] _ = [] removeMatching (x : xs) ys = if not (x `elem` ys) then x : removeMatching xs ys else removeMatching xs (delete x ys) |
aW1wb3J0IERhdGEuTGlzdAoKbWFpbiA9IGRvCiAgbmFtZTEgPC0gZ2V0TGluZQogIG5hbWUyIDwtIGdldExpbmUgICAgICAKICBwdXRTdHIgJCBzaG93ICQgZmxhbWVzIG5hbWUxIG5hbWUyCgpmbGFtZXMgOjogW0NoYXJdIC0+IFtDaGFyXSAtPiBDaGFyCmZsYW1lcyBuYW1lMSBuYW1lMiA9IGZsYW1lcycgY291bnQgd2hlcmUKICBjb3VudCA9IGxlbmd0aCAkIHJlbW92ZUNvbW1vbiBuYW1lMSBuYW1lMgoKZmxhbWVzJyBjb3VudCA9IGZsYW1lc0Zyb20gIkZMQU1FUyIgY291bnQKCmZsYW1lc0Zyb20gOjogW0NoYXJdIC0+IEludCAtPiBDaGFyCmZsYW1lc0Zyb20gW3hdIF8gPSB4CmZsYW1lc0Zyb20gcyBuID0gZmxhbWVzRnJvbSAoKGRyb3AgbW9kbiBzKSArKyAodGFrZSAobW9kbiAtIDEpIHMpKSBuIHdoZXJlCiAgbW9kbiA9ICBpZiByb3VuZGVkbiA9PSAwIHRoZW4gbGVuZ3RoIHMgZWxzZSByb3VuZGVkbiB3aGVyZQogICAgcm91bmRlZG4gPSBuIGBtb2RgIChsZW5ndGggcykKCnJlbW92ZUNvbW1vbiA6OiBFcSBhID0+IFthXSAtPiBbYV0gLT4gW2FdCnJlbW92ZUNvbW1vbiBuYW1lMSBuYW1lMiA9IChuYW1lMSBgcmVtb3ZlTWF0Y2hpbmdgIG5hbWUyKSArKyAobmFtZTIgYHJlbW92ZU1hdGNoaW5nYCBuYW1lMSkKCnJlbW92ZU1hdGNoaW5nIDo6IEVxIGEgPT4gW2FdIC0+IFthXSAtPiBbYV0KcmVtb3ZlTWF0Y2hpbmcgW10gXyA9IFtdCnJlbW92ZU1hdGNoaW5nICh4IDogeHMpIHlzID0gCiAgaWYgbm90ICh4IGBlbGVtYCB5cykgdGhlbiB4IDogcmVtb3ZlTWF0Y2hpbmcgeHMgeXMgCiAgZWxzZSAgcmVtb3ZlTWF0Y2hpbmcgeHMgKGRlbGV0ZSB4IHlzKQogIA==
-
upload with new input
-
result: Success time: 0.01s memory: 3604 kB returned value: 0
ABCD AEF
'F'



