카타 7급 Maximum Length Difference

1 C[ | ]

2 Kotlin[ | ]

package maxlendiff
fun mxdiflg(a1:Array<String>, a2:Array<String>):Int {
    if( a1.size<1 || a2.size<1 ) return -1
    val l1: List<Int> = a1.map { it.length }
    val l2: List<Int> = a2.map { it.length }
    return listOf(l1.max()!!-l2.min()!!, l2.max()!!-l1.min()!!).max()!!
}
package maxlendiff
fun mxdiflg(a1:Array<String>, a2:Array<String>) = a1.flatMap { s1 -> a2.map { kotlin.math.abs(s1.length - it.length) } }.max() ?: -1
package maxlendiff
fun mxdiflg(a1:Array<String>, a2:Array<String>) = if (a1.isEmpty() || a2.isEmpty()) -1 else listOf(
    a1.maxBy { it.length }!!.length - a2.minBy { it.length }!!.length,
    a2.maxBy { it.length }!!.length - a1.minBy { it.length }!!.length
).max()

3 R[ | ]

mxdiflg <-  function(a1, a2) {
  if(length(a1) < 1) return(-1)
  if(length(a2) < 1) return(-1)
  x = abs( max(nchar(a1)) - min(nchar(a2)) )
  y = abs( min(nchar(a1)) - max(nchar(a2)) )
  max( x, y )
}
mxdiflg <-  function(a1, a2) {
  if(length(a1) < 1) return(-1)
  if(length(a2) < 1) return(-1)
  max(max(nchar(a1))-min(nchar(a2)), max(nchar(a2))-min(nchar(a1)) )
}
mxdiflg <-  function(a1, a2) {
  if( length(a1)<1 || length(a2)<1 ) return(-1)
  x <- nchar(a1)
  y <- nchar(a2)
  max(max(x)-min(y), max(y)-min(x))
}
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}