티스토리 뷰
프로그래머스 68935번 - 3진법 뒤집기
요구사항
1. n을 3진법 상으로 앞뒤로 뒤집는다.
2. 뒤집어진 3진법으로 표기된 수를 10진법으로 표현한 수를 반환하라.
요구사항 분석 및 풀이과정
1. n을 3진법으로 변환하면서 거꾸로 뒤집은 형태로 구한다.
2. 뒤집어진 3진법으로 표기된 수를 10진수로 변환한다.
소스코드 작성
class Solution {
private static int[] toThird(int value) {
int len = (int)(Math.log10(value) / Math.log10(3)) + 1;
int[] result = new int[len];
for(int i = 0; i < len; i++) {
result[i] = value % 3;
value /= 3;
}
return result;
}
private static int toTen(int[] third) {
int len = third.length;
int result = 0;
for(int i = 0; i < len; i++) {
result += third[i] * (int)Math.pow(3, len - i - 1);
}
return result;
}
public int solution(int n) {
return toTen(toThird(n));
}
}
결과
소스코드 깃허브 주소
'코딩테스트 > 알고리즘' 카테고리의 다른 글
[알고리즘]프로그래머스 12926번 - 시저 암호 (0) | 2022.01.06 |
---|---|
[알고리즘]프로그래머스 17681번 - [1차]비밀지도 (0) | 2022.01.06 |
[알고리즘]프로그래머스 12982번 - 예산 (0) | 2022.01.06 |
[알고리즘]프로그래머스 12977번 - 소수 만들기 (0) | 2022.01.06 |
[알고리즘]프로그래머스 64061번 - 크레인 인형뽑기 게임 (0) | 2022.01.05 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 알고리즘
- Java
- 비트연산
- sql
- 회고
- 구현
- JPA
- 문자열
- TDD
- k8s
- 프로그래머스
- 카카오
- 코딩인터뷰
- dfs
- BFS
- kotlin
- Uber
- 오늘의집
- dsu
- 우선순위큐
- 정렬
- 탐욕법
- 코드 스니펫
- 연결리스트
- 스트림
- dp
- 해쉬
- set
- 스택
- 쓰레드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함