fork download
  1. object Main extends App {
  2. var count = readLine();
  3. for( i <- 1 to count.toInt) {
  4. val line = readLine
  5. println("#testcase"+i)
  6. println(line + " " + line.length)
  7. println(encode(line))
  8. }
  9.  
  10. def encode(line : String) : String = {
  11. var bchar = line.charAt(0).toString
  12. var count = 0
  13. var parseStr = ""
  14. line.toList.foreach(x => {
  15. if (bchar == x.toString) {
  16. count = count + 1
  17. } else {
  18. parseStr = parseStr + bchar + count
  19. bchar = x.toString
  20. count = 1
  21. }
  22. })
  23. parseStr = parseStr + bchar + count
  24. if (parseStr.length == line.length ) {
  25. line + " " + line.length
  26. } else {
  27. parseStr + " " + parseStr.length
  28. }
  29. }
  30. }
Success #stdin #stdout 0.39s 382080KB
stdin
3
aabcccccccccccaaa
abaaaaaaaaabbbbbbbbbbbbba
aabbcccdde
stdout
#testcase1
aabcccccccccccaaa 17
a2b1c11a3 9
#testcase2
abaaaaaaaaabbbbbbbbbbbbba 25
a1b1a9b13a1 11
#testcase3
aabbcccdde 10
aabbcccdde 10