말 그대로
두 큐의 총 합이 같게 만드는 문제네요
한쪽으로 숫자를 하나 옮길 때마다 카운트가 하나씩 올라가고
두 큐의 합이 같아졌을 때
카운트를 리턴합니다.
같아질 수 없는 운명이라면
-1을 리턴하겠어.
시작합니다
먼저 전달받은 int 배열을 Queue로 만들어줍니다
그리고 총합의 절반을 넘는 수가 있는 경우를 판단하기위해
zxc 라는 ArrayList를 만들어줍니다.
for문을 이용해 zxc와 총합을 구할 sum에
모든 수들을 뽑아서 더해줍니다.
그리고 harf에 절반의 값을 넣어주고
zxc ArrayList에서 harf보다 큰 값이 있는지 찾아줍니다.
있으면 성립이 안 되니 바로 -1 리턴이죠.
이제 카운트와 Queue객체인 a의 총합을 찾아줄
Sum메서드의 결과를 담은 SSum을 만들어줍니다.
그리고 SSum에서 harf 값을 구해 gap에 넣어줍니다.
실패한 케이스에서,
while문 안에서 sum을 반복적으로 수행하니
속도가 박살이 났습니다. 말 그대로. 허허
그래서 그 차이 값만 구해서
Queue에서 값을 넣고 빼고 할 때
차이값만 건들여서 그 차이가 0이 되면
harf값이 된 것과 마찬가지니까요.
그리고 마지막으로
카운트가 비정상적으로 크면
같아질 수 없다고 판단하기위한 if문을 넣어줍니다.
사진에는 500인데
실패하는 케이스가 있어서 아싸리 300000(삼십만)을 넣어주니
성 공
했습니다
좋은 코드는 아닙니다
그치만 성공한 코드면
그걸로 됐죠
그리고 얘는 빠뜨린 Sum 메서드 입니다.
안녕히가세용
아래는 제가 직접 손수 수작업으로 하나부터 열까지 전부 직접 작성한 커뮤니티사이트 입니다
신생커뮤니티라서 많이 삭막하지만 들려주시면 고마울 것 같아요!
'코딩 테스트 문제 > 프로그래머스' 카테고리의 다른 글
프로그래머스 Level 2 자바 주차요금 2022 KAKAO BLIND RECRUITMENT (0) | 2022.08.28 |
---|---|
프로그래머스 Level 2 자바 [3차] 방금그곡 2018 KAKAO BLIND RECRUITMENT (0) | 2022.08.27 |
프로그래머스 Level 2 자바 수식 최대화 카카오 인턴 (0) | 2022.08.24 |
프로그래머스 Level 2 자바 2 x n 타일링 연습 문제 (0) | 2022.08.22 |
프로그래머스 Level 1 자바 성격 유형 검사하기 2022 KAKAO TECH INTERNSHIP (0) | 2022.08.22 |