def getMaxArrayMulti(numbers:Array[Int]) : BigInt = {
var mMultiply:BigInt = 1
val minData = numbers.min
val minIdx = numbers.indexOf(minData)

numbers(minIdx) += 1

for(num<- numbers) {
mMultiply *= num
}

mMultiply
}


Q3 답

'Quiz > Answer' 카테고리의 다른 글

[A2] Answer  (2) 2017.12.19
[A2/kyu] 즐거운 파티 (또 다른 방법)  (0) 2017.12.18
[A2/kyu] 즐거운 파티 (scala)  (0) 2017.12.18
[A2/hun] 2 Answer(Invite Party)  (0) 2017.12.15
[A1] 이런 답도 있다  (0) 2017.12.12

HNK(HUN NAM KYU)는 새로운 암호화 시스템을 개발했습니다. 이 시스템은 암호화하려고 숫자 리스트를 입력받습니다.

여러분은 HNK의 비밀 정보 수사원입니다. 암호화 과정에서 중요한 부분을 구현하는 것이 여러분의 일입니다. 여러분은 입력 리스트에서 1개의 값을 선택하고 값을 1증가시킵니다. 이때 리스트 내부의 모든 숫자 곱이 가장 커져야 합니다.

int[] numbers 형태로 숫자 배열이 주어질 때 곱의 최대값을 리턴하세요. 리턴값이 2^62를 넘는 문제는 나오지 않을 것을 보장합니다.


[제약 조건]

capacities : 2~50개의 요소가 있는 배열이며 각 요소의 값은 1~1000입니다.

리턴값 : 2^26을 넘지 않습니다.


[예시]

0) numbers = {1,2,3}

    Returns : 12

1) numbers = {1,3,2,1,1,3}

    Returns : 36

2) numbers = {1000,999,998,997,996,995}

    Returns : 986074810223904000

3) numbers = {1,1,1,1}

    Returns : 2


[예시 해설]

0) +1 요소가 첫번째 => {1+1,2.3} =>2*2*3 = 12

    +1 요소가 두번째 => {1,2+1,3} => 1*3*3 =9

    +1 요소가 세번째 => {1,2,3+1} => 1*2*4 =8


스칼라로 코딩하시오



'Quiz > Question' 카테고리의 다른 글

[Q2] 즐거운 파티  (0) 2017.12.12
[Q1] 키위쥬스 (Scala)  (0) 2017.12.11

답안


def inviteParty2(first:Array[String], second:Array[String]) : Int = {
var mMap = new mutable.HashMap[String, Int]()

for(i<-first.length) {
mMap.put(first(i),0)
mMap.put(second(i),0)
}

for(i<-first.length) {
mMap(first(i)) = mMap.getOrElse(first(i),0)+1
mMap(second(i)) = mMap.getOrElse(second(i),0)+1
}

var ans = 0

for(key<-mMap.keySet){
ans = Math.max(ans, mMap.getOrElse(key,0))
}

ans
}


자바식으로 그대로 스칼라로 바꾼 것


좋은 답은 아닌거 같다

'Quiz > Answer' 카테고리의 다른 글

[A3] Answer  (0) 2018.01.03
[A2/kyu] 즐거운 파티 (또 다른 방법)  (0) 2017.12.18
[A2/kyu] 즐거운 파티 (scala)  (0) 2017.12.18
[A2/hun] 2 Answer(Invite Party)  (0) 2017.12.15
[A1] 이런 답도 있다  (0) 2017.12.12

+ Recent posts