분류 전체보기326 [BOJ_1966] 프린터 큐 문제 링크: https://www.acmicpc.net/problem/1966 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net 내 풀이: Review: 내 풀이에서는 큐를 구현하기 위해 파이썬의 내장 함수인 deque를 이용했고, M에 해당하는 원소를 저장하기 위해 tmp라는 별도의 deque에 M번째 원소에 1을 할당했다. Queue와 tmp를 확인하면서 M에 해당하는 원소를 출력하면 프린터에서 출력된 문서의 개수(count)를 출력하면서 반복문을 종료해서 문제를 해결했다. 해당 문제를 풀이하고 패스트 캠퍼스의.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 22. [BOJ_10870] 피보나치 수 5 문제 링크: https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 내 풀이: Review: 재귀를 이용한 피보나치 수를 계산했다. Idea: 문제의 주어진 조건에 따라 피보나치 수를 구현하면 된다. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 21. [프로그래머스] 실패율 문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42889 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이: 참고용 풀이: Review: 내 풀이에서는 실패율을 계산하여 스테이지와 함께 튜플로 리스트에 저장을 했지만, 참고용 풀이에서는 해당 데이터를 딕셔너리를 이용해서 처리했다. 해당 코드로 인해 데이터를 정렬하고 스테이지를 리턴할 때 리스트 컴프리헨션을 이용해 스테이지를 빈 리스트에 저장하는 과정이 추가적으로 들어갔다. 문제를 풀면서 효율적으로 코드를 짜는 것에 대해서 지속적인 고민이 필요하.. 알고리즘 문제 풀이: 파이썬/Programmers 2021. 9. 20. [BOJ_1924] 2007년 문제 링크: https://www.acmicpc.net/problem/1924 1924번: 2007년 첫째 줄에 빈 칸을 사이에 두고 x(1 ≤ x ≤ 12)와 y(1 ≤ y ≤ 31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다. www.acmicpc.net 내 풀이: Review: 약 2달 전에 처음 본 문제인데 당시 어떻게 풀어야 할지 모르겠어서 풀지 않고 넘겼던 문제. 오늘은 꼭 이 문제를 해결해보고 싶어서 연습장을 이용해 해당 요일을 먼저 구해보고 그 과정을 코드로 옮겨서 어렵지 않게 구현할 수 있었다. Idea: 1월 1일과 입력값으로 주어진 월과 일의 차이를 구해서 총일수의 차이를 구한다.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 20. [BOJ_1929] 소수 구하기 문제 링크: https://www.acmicpc.net/problem/1929 1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. www.acmicpc.net 내 풀이: Review: '코드를 맞게 짰는데 왜 틀려!' 하는 상황에서 IDE에서 여러 반례를 넣어보며 예상되는 소수 목록이 정확히 출력되는 확인 했다. 어떤 부분이 부족했는지 확인해보니 파이썬에서 for 반복문의 끝 값이 포함되지 않는 것을 처리해주지 않았던 것이 문제였다. 해당 부분을 수정하고 문제를 해결했다. 문제를 풀고 나서 내 코드의 실행 시간이 다른 사람의 풀이보다 짧아서 기분이 좋았다. Idea: 주어.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 20. [BOJ_5622] 다이얼 문제 링크: https://www.acmicpc.net/problem/5622 5622번: 다이얼 첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다. www.acmicpc.net 내 풀이: Review: 내 풀이에서는 다이얼에 걸리는 시간을 미리 딕셔너리를 이용해서 계산을 해두고 값을 꺼내와서 더하는 식이 었는데, 딕셔너리가 아닌 리스트를 이용해서 for 반복문이 돌 때 시간을 각각 더해주는 식으로 구현을 했더라면 딕셔너리를 미리 정의하는데 시간을 조금 더 아낄 수 있을 것 같다는 생각이 들었다. Idea: 1번을 다이얼 걸기 위해서 2초가 필요하므로 2번을 다이얼 건다면 1초가 더 필요해서 3초가 필요하다. 각 다이얼에 1초씩을 미리 더해주고.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 19. [BOJ_1920] 수 찾기 문제 링크: https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net 내 풀이: Review: 이분 탐색을 이용하기 전에 정렬된 배열에서 선형 검색으로 원소를 찾았지만 시간 초과가 나는 것을 확인하고 바로 이분 탐색 알고리즘을 이용했다. Idea: 문제의 알고리즘 분류에 있는 힌트를 이용한다면 쉽게 해결할 수 있다. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 18. [BOJ_1065] 한수 문제 링크: https://www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net 내 풀이: Review: 이 문제는 약 3달 전에 4번 제출을 했으나 모두 틀렸다. 문제에서 주어진 예제의 값은 정확히 나오는데 틀리기만 해서 다음에 다시 풀자고 생각하고 넘어갔다. 오늘 기존의 코드를 점검하면서 틀리게 만드는 부분을 찾았고, 해당 부분의 수정 및 코드를 정리하여 제출했더니 맞을 수 있었다. 문제를 풀면서 '맞게 짰는데 왜 틀려?' 하는 순간이 올 때는 일단 넘어가고 나중.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 18. [BOJ_4673] 셀프 넘버 문제 링크: https://www.acmicpc.net/problem/4673 4673번: 셀프 넘버 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, www.acmicpc.net 내 풀이: 개선된 내 풀이: Review: 백준의 '단계별로 풀어보기' 탭에서 문제의 분류가 함수로 되어 있어서 처음 풀이를 할 때 함수를 이용해서 풀이했다. 문제를 풀고 나서 내 코드와 다르 사람의 코드를 비교하면서 굳이 사용할 필요가 없는 변수는 삭제하고, 변수명을 보다 이해하기 쉽게 변경해서 위의 개선된 풀이를 만들었다. 문제 풀.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 18. [리뷰] Java의 정석(기초편) 학습을 위해 개인적으로 책을 구매 후 작성하는 후기입니다. Java 백엔드 개발자로 방향을 정하고 나서 Java의 기초부터 다시 학습을 할 필요성을 느끼게 되었고, 직접 서점을 방문하여 여러 권을 책을 비교한 후에 Java의 정석 기초편(이하 기초편)을 구매했다. 이 책을 구매한 이유는 크게 두 가지다. 첫 번째, 유튜브를 통해 무료 동영상 강의를 제공한다. 두 번째, 저자 분이 운영하시는 카페를 통해 질문할 수 있다. 위의 두 가지의 장점이 여러 책들과 비교해서 너무 크게 다가왔고, Java 관련 베스트셀러 중에서도 상위권에 속하기 때문에 기초편을 선택했고, 유튜브의 강의를 함께 2 회독을 마쳤다. 기초편을 학습을 하면서 느꼈던 부분은 국비 학원에서는 Java를 왜 그렇게 가르쳐줬을까 하는 부분이었다... 메모장/책 리뷰 2021. 9. 14. 이전 1 ··· 24 25 26 27 28 29 30 ··· 33 다음