본문 바로가기

Java46

[프로그래머스(programmers)] (Summer/Winter Coding 2018) 영어 끝말잇기 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 영어 끝말잇기 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/12981 코딩테스트 연습 - 영어 끝말잇기 3 ["tank", "kick", "know", "wheel", "land", "dream", "mother", "robot", "tank"] [3,3] 5 ["hello", "observe", "effect", "take", "either", "recognize", "encourage", "ensure", "establish", "hang", "gather", "refer", "reference", "estimate", "executive"] [0,0] programmers.co... 2021. 6. 17.
[프로그래머스(programmers)] (Lv2) 피보나치 수 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 피보나치 수 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/12945 문제 풀이 BigInteger 를 사용하는것이 핵심이다. 피보나치 수 를 구현하는 것은 문제 설명대로 풀면 되는거라 중간에 걸릴 것 없이 너무 쉽게 풀었다. 그래서 이게 Lv2라는 것이 의심될 정도로 금방 풀었는데, 테스트케이스 중간쯤 부터 오류가 났다. 왜 오류일까 생각해보니 int 의 한계란 생각이 들었다. 그래서 long 으로 다 변환을 해줬는데 그럼에도 오류가 났다. 그래서 System.out 으로 풀이 과정을 찍어보았는데 고작 n = 888 이기만 해도 long 범위를 한참 초과해서 음수값으로 바뀌는 현상이 .. 2021. 6. 13.
[프로그래머스(programmers)] (Lv2) 행렬의 곱셈 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 행렬의 곱셈 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/12949 코딩테스트 연습 - 행렬의 곱셈 [[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]] programmers.co.kr 문제 풀이 내가 고등학생 일 때, 교육과정에서 행렬이 빠졌었기 때문에 행렬이 있었다는 말만 들어봤지 행렬 개념 조차 몰랐다. 그래도 문제에서 설명해주겠지 라는 마음에 문제를 들어갔는데 행렬에 대한 설명은 없었다. 행렬의 결과를 완성하는 함수를 작성해달라는 지문.. 2021. 6. 12.
[프로그래머스(programmers)] (Lv2) JadenCase 문자열 만들기 알고리즘 문제 풀이 / 프로그래머스 (programmers) - JadenCas 문자열 만들기 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/12951 문제 풀이 처음 모든 문자들을 소문자로 변환한다. 첫 글자이거나, " "(공백) 있는 다음 글자를 대문자로 변환한다. 처음 풀었을 땐, char배열에 넣어서 첫글자이거나 공백다음은 대문자로, 아닌것들은 소문자로 바꾸는 식으로 풀었었다. 이렇게 했더니 12점을 받았다. 그러고 나서 다른 사람들의 코드를 보는데 애초에 첫 줄에서 모든 문자열을 소문자로 변환한 후, 해당 조건시에만 대문자로 바꾸는 방법도 있어서 그렇게 다시 풀어보았다. 그리고 다시 푸는 김에 이번엔 char 배열에 넣는것이 아니라 .spl.. 2021. 6. 10.
[프로그래머스(programmers)] (2020 카카오 인턴십) 수식 최대화 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 수식 최대화 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/67257?language=java 코딩테스트 연습 - 수식 최대화 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 programmers.co.kr 문제 풀이 숫자, 연산자들을 배열에 각각 나누어 넣는다. 재귀함수를 활용하여 순열로 연산자 우선순위를 구한다. Math.abs() 를 사용하여 절대값 구한다. 이번 문제는 내가 여태까지 푼 문제중 가장 오래 걸렸다. 총 2일이 걸렸는데 첫날에는 코드.. 2021. 6. 4.
[프로그래머스(programmers)] (월간 코드 챌린지 시즌1) 이진 변환 반복하기 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 이진 변환 반복하기 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/70129 코딩테스트 연습 - 이진 변환 반복하기 programmers.co.kr 문제 풀이 0의 개수 = 문자열 s의 길이 - 0을 지운후 s의 길이 이 문제는 많은 걸 생각할 것도 없이 쉬운문제였다. 그냥 주어진대로 차례대로 해나가면 풀 수 있는 문제였다. 점수는 4점 받았다. public static int[] solution(String s) { int[] answer = new int[2]; while(!s.equals("1")) { answer[1] += s.length(); s = s.replaceAll("0.. 2021. 6. 4.
[프로그래머스(programmers)] (2021 Dev-Matching) 행렬 테두리 회전하기 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 행렬 테두리 회전하기 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/77485 코딩테스트 연습 - 행렬 테두리 회전하기 6 6 [[2,2,5,4],[3,3,6,6],[5,1,6,3]] [8, 10, 25] 3 3 [[1,1,2,2],[1,2,2,3],[2,1,3,2],[2,2,3,3]] [1, 1, 5, 3] programmers.co.kr 문제 링크 한 칸씩 이동하는 것이므로 dx, dy 배열을 만들었다. 이번 문제는 거의 2시간 정도 걸렸다. 이렇게 까지 오래 걸린지 몰랐는데 시간을 보니 훌쩍 지나있었다. 문제를 어떤식으로 풀지 생각하는건 금방 했는데 구현하는 것에서 오래걸렸다. 오.. 2021. 6. 3.
[프로그래머스(programmers)] (2017 팁스타운) 예상 대진표 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 예상 대진표 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/12985# 코딩테스트 연습 - 예상 대진표 △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N programmers.co.kr 문제 풀이 다음라운드 자신의 대진번호는 (현재라운드 + 1) / 2 이다. 처음 풀어보았을 땐, b를 무조건 큰 수로 만든 후 b-a 의 차이로 구했다.이렇게 할 경우 테스트 케이스 7번, 33번 에서 실패였다. 바로 a = 4, b = 5일 경우에.. 2021. 6. 1.
[프로그래머스(programmers)] (2017 팁스타운) 짝지어 제거하기 알고리즘 문제 풀이 / 프로그래머스 (programmers) - 짝지어 제거하기 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr 문제 풀이 stack 과 substring() 을 사용해서 푼다. 이 문제를 보자마자 처음 든 생각은 앞에서부터 문자를 추출해와서 다음 단어와 같으면 replace로 지워주고 다시 처음부터 반복하는 알고리즘을 떠올렸다. 그랬더니 반정도는 시간초과에 효율성은 전.. 2021. 5. 29.
반응형