728x90
반응형
SMALL
프로그래머스 Level 1 3진법 뒤집기를 자바를 통해 풀어보았다.
https://programmers.co.kr/learn/courses/30/lessons/68935
Level 1 - 3진법 뒤집기.java
//Level 1 3진법 뒤집기.java
import java.lang.Math;
class Solution {
public int solution(int n) {
int answer = 0;
int x = 0; //3^x
int square = 1; //3의 square제곱
while(n>=square*3){
square *= 3;
x += 1;
}
int[] ternary = new int[x+1]; //3진법의 자릿수
for(int i=0;i<ternary.length;i++){
ternary[i] = n/square; //3진법으로 변환 및 저장
n -= square*ternary[i]; //남은 n
square /=3;
answer += Math.pow(3,i)*ternary[i]; //접근하는 순서가 3진법을 뒤집은 것과 같기 때문에 곧바로 10진법으로 변환하여 answer에 더해줌
}
return answer;
}
}
728x90
반응형
SMALL
'Problem Solving > programmers' 카테고리의 다른 글
[programmers] Level 1 로또의 최고 순위와 최저 순위.py (0) | 2021.05.14 |
---|---|
[programmers] Level 1 두 개 뽑아서 더하기.py (0) | 2021.05.14 |
[programmers] Level 1 실패율.py (0) | 2021.05.09 |
[programmers] Level 1 예산.py (0) | 2021.05.09 |
[programmers] Level 1 폰켓몬.java (0) | 2021.05.09 |