728x90
Lv. 2 피보나치 수 - 성공
내풀이(1) : 정확도 42.9%, 시간초과.
피보나치의 계산 결과를 기억하면서 계산할 수 있는 방법을 사용.
비슷한 문제를 푼 기억이 있음.
class Solution {
public int solution(int n) {
int answer = 0;
answer = fibo(n);
return answer;
}
public int fibo(int k){
int result = 0;
if(k == 1) return 1;
if(k == 0) return 0;
result = (fibo(k-2) + fibo(k-1)) % 1234567;
return result;
}
}
내풀이(2)
class Solution {
public int solution(int n) {
int answer = 0;
answer = fibo(n);
return answer;
}
public int fibo(int k){
int result = 0;
if(k == 1) return 1;
if(k == 0) return 0;
int a = 0;
int b = 1;
for(int i = 2; i <= k ; i++){
result = (a + b) % 1234567;
a = b;
b = result;
}
return result;
}
}
Lv. 2 하노이의 탑 - 실패
참고한 풀이
import java.util.*;
class Solution {
ArrayList<int[]> list;
public int[][] solution(int n) {
list = new ArrayList<>();
hanoi(1, 2, 3, n); //n개의 원판을 1에서 시작 -> 2를 거쳐 -> 3으로 옮긴다.
int[][] result = new int[list.size()][2];
for(int i = 0; i < list.size(); i++) {
result[i][0] = list.get(i)[0];
result[i][1] = list.get(i)[1];
}
return result;
}
public void hanoi(int s, int v, int e, int n) {
int[] move = {s, e};
if(n == 1) list.add(move);
else {
hanoi(s, e, v, n - 1);
list.add(move);
hanoi(v, s, e, n - 1);
}
}
}
https://moonsbeen.tistory.com/62
[프로그래머스]하노이의 탑 - JAVA
[프로그래머스]하노이의 탑 programmers.co.kr/learn/courses/30/lessons/12946 코딩테스트 연습 - 하노이의 탑 하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가..
moonsbeen.tistory.com
Lv. 2 행렬의 곱셈 - 실패
참고한 풀이
class Solution {
public int[][] solution(int[][] arr1, int[][] arr2) {
int[][] answer = new int[arr1.length][arr2[0].length];
for(int i = 0 ; i < arr1.length ; ++i){
for(int j = 0 ; j < arr2[0].length ; ++j){
for(int k = 0 ; k < arr1[0].length ; ++k) {
answer[i][j] += arr1[i][k] * arr2[k][j];
}
}
}
return answer;
}
}
[프로그래머스] 행렬의 곱셈 (Java)
프로그래머스 행렬의 곱셈단순히 행렬의 계산을 하려고 하면 어렵지 않다. 그런데 코드로 옮기려고 하면? 생각보다 쉽게 구현되지 않았다. 그래서 다시 행렬 연산을 공부하고 하나씩 옮겨봤다.
velog.io
Lv. 2 JadenCase 문자열 만들기 - 실패
참고한 풀이
public static String solution (String s ) {
String answer ="" ;
String[] arr = s.toLowerCase().split(""); // 공백도 문자취급해주기
StringBuilder sb = new StringBuilder();
boolean blank = true; // 첫 글자는 무조건 대문자니까.
for ( String str : arr) {
answer += blank? str.toUpperCase() : str;
blank = str.equals(" ")? true : false;
}
return answer;
}
[프로그래머스] JadenCase [JAVA]
출처 : programmers.co.kr/learn/courses/30/lessons/12951 코딩테스트 연습 - JadenCase 문자열 만들기 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주..
hj-bank.tistory.com
728x90
'알고리즘' 카테고리의 다른 글
[Algorithm] 6월21일 알고리즘 연습(프로그래머스 LEVEL2) - 에이젠 (0) | 2022.06.21 |
---|---|
[Algorithm] 6월 19일 알고리즘 연습 (백준) - 에이젠 (0) | 2022.06.19 |
[Algorithm] 6월 18일 알고리즘 연습(프로그래머스 LEVEL2) - 에이젠 (0) | 2022.06.18 |
[Algorithm] 6월 17일 알고리즘 연습 (프로그래머스 LEVEL2) - 에이젠 (0) | 2022.06.17 |
[Algorithm] 6월12일 알고리즘 연습 (프로그래머스 level2) - 에이젠 (0) | 2022.06.17 |
댓글