Hi, There!
안녕하세요, 바오밥입니다.
목차
- 문제
- 풀이
문제
문제 내용
https://school.programmers.co.kr/learn/courses/30/lessons/68935
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
나의 풀이
import java.util.List;
import java.util.ArrayList;
class Solution {
public int solution(int n) {
List<Integer> revTernaryList = new ArrayList<>();
while(n > 0) {
revTernaryList.add(n%3);
n/=3;
}
int answer = 0;
int digit = revTernaryList.size()-1;
for(Integer i : revTernaryList)
answer += i*Math.pow(3, digit--);
return answer;
}
}
다른 사람의 풀이
- parseInt 메서드의 진법 변환 기능이 있는 점을 이용
class Solution {
public int solution(int n) {
StringBuilder sb = new StringBuilder();
while(n > 0) {
sb.append(n%3);
n/=3;
}
return Integer.parseInt(sb.toString(), 3);
}
}
'Dev > PS' 카테고리의 다른 글
[프로그래머스-코딩테스트 입문] 잘라서 배열로 저장하기 (0) | 2023.08.18 |
---|---|
[프로그래머스-코딩테스트 입문] 7의 개수 (0) | 2023.08.18 |
[프로그래머스-코딩테스트 입문] 문자열 정렬하기 (2) (0) | 2023.08.17 |
[프로그래머스-코딩테스트 입문] 세균 증식 (0) | 2023.08.17 |
[프로그래머스-코딩테스트 입문] 제곱수 판별하기 (0) | 2023.08.17 |