분류 전체보기(250)
-
22/12/14
오랜만에 써보는 TIL이다. 1. 알고리즘 한 문제 풀었다(dfs) 백준 2668: 숫자고르기 [Java] 백준 2668: 숫자고르기 [Java] -포포 문제 세로 두 줄, 가로로 N개의 칸으로 이루어진 표가 있다. 첫째 줄의 각 칸에는 정수 1, 2, …, N이 차례대로 들어 있고 둘째 줄의 각 칸에는 1이상 N이하인 정수가 들어 있다. 첫째 줄에서 숫자를 mr-popo.tistory.com 문제 풀이를 거의 한달 넘게 쉰 것 같다. 이번 주 부터는 반드시 하루에 한 문제를 풀 것이다! 수업을 듣고 과제를 해결하기 바빠서인지 취업 관문에서 코딩테스트의 중요성를 잠깐 망각했던 것 같다. 무튼 하루에 한 문제! 일주일에 최소 다섯 문제를 풀어야겄다. 2. JPA 게시판 과제 진행 JPA를 이용해 게시판(M..
2022.12.15 -
백준 2668: 숫자고르기 [Java] -포포
문제 세로 두 줄, 가로로 N개의 칸으로 이루어진 표가 있다. 첫째 줄의 각 칸에는 정수 1, 2, …, N이 차례대로 들어 있고 둘째 줄의 각 칸에는 1이상 N이하인 정수가 들어 있다. 첫째 줄에서 숫자를 적절히 뽑으면, 그 뽑힌 정수들이 이루는 집합과, 뽑힌 정수들의 바로 밑의 둘째 줄에 들어있는 정수들이 이루는 집합이 일치한다. 이러한 조건을 만족시키도록 정수들을 뽑되, 최대로 많이 뽑는 방법을 찾는 프로그램을 작성하시오. 예를 들어, N=7인 경우 아래와 같이 표가 주어졌다고 하자. 이 경우에는 첫째 줄에서 1, 3, 5를 뽑는 것이 답이다. 첫째 줄의 1, 3, 5밑에는 각각 3, 1, 5가 있으며 두 집합은 일치한다. 이때 집합의 크기는 3이다. 만약 첫째 줄에서 1과 3을 뽑으면, 이들 바로..
2022.12.15 -
백준 2565: 전깃줄 [Java] - 포포
문제 두 전봇대 A와 B 사이에 하나 둘씩 전깃줄을 추가하다 보니 전깃줄이 서로 교차하는 경우가 발생하였다. 합선의 위험이 있어 이들 중 몇 개의 전깃줄을 없애 전깃줄이 교차하지 않도록 만들려고 한다. 예를 들어, 과 같이 전깃줄이 연결되어 있는 경우 A의 1번 위치와 B의 8번 위치를 잇는 전깃줄, A의 3번 위치와 B의 9번 위치를 잇는 전깃줄, A의 4번 위치와 B의 1번 위치를 잇는 전깃줄을 없애면 남아있는 모든 전깃줄이 서로 교차하지 않게 된다. 전깃줄이 전봇대에 연결되는 위치는 전봇대 위에서부터 차례대로 번호가 매겨진다. 전깃줄의 개수와 전깃줄들이 두 전봇대에 연결되는 위치의 번호가 주어질 때, 남아있는 모든 전깃줄이 서로 교차하지 않게 하기 위해 없애야 하는 전..
2022.12.14 -
백준 2251: 물통 [Java] - 포포
문제 각각 부피가 A, B, C(1≤A, B, C≤200) 리터인 세 개의 물통이 있다. 처음에는 앞의 두 물통은 비어 있고, 세 번째 물통은 가득(C 리터) 차 있다. 이제 어떤 물통에 들어있는 물을 다른 물통으로 쏟아 부을 수 있는데, 이때에는 한 물통이 비거나, 다른 한 물통이 가득 찰 때까지 물을 부을 수 있다. 이 과정에서 손실되는 물은 없다고 가정한다. 이와 같은 과정을 거치다보면 세 번째 물통(용량이 C인)에 담겨있는 물의 양이 변할 수도 있다. 첫 번째 물통(용량이 A인)이 비어 있을 때, 세 번째 물통(용량이 C인)에 담겨있을 수 있는 물의 양을 모두 구해내는 프로그램을 작성하시오. 입력 첫째 줄에 세 정수 A, B, C가 주어진다. 출력 첫째 줄에 공백으로 구분하여 답을 출력한다. 각 ..
2022.12.13 -
JIT compiler
CS 스터디를 준비하는데 컴파일 언어의 컴파일 과정이 있어서, 인터프리터 언어와 컴파일 언어에 대해 찾아보았다. 문득 자바는 컴파일 언어 아닌가? 싶어서 검색해보았고.. JIT compiler와 JVM의 구조까지 한번 학습하는 시간을 갖게 된 것이다.. 이번 포스팅에서는 1) 인터프리터 언어와 컴파일 언어의 차이 2) 자바는 어떤 언어일까 3) JIT compiler와 JVM의 구조 를 간략하게 적어보겠다. 1) 인터프리터 언어 vs 컴파일 언어 개발자가 작성한 소스코드를 고급언어라고 한다. 둘의 큰 차이점은 고급언어를 컴파일하는지 여부다. 인터프리터 언어 인터프리터 언어는 우리가 작성한 소스코드를 컴파일 하지 않고 한 줄씩 읽으면서 실행한다. 컴파일 과정이 없으니 여기서 시간을 세이브 할 수 있겠지만 ..
2022.12.11 -
A-Z 프로젝트 요약 & Troubleshoot
프로젝트 소개 영화의 리뷰를 조회하고, 예매가 가능한 씨네마 천국 도구 Java 11, SpringBoot v2.7.6, JPA Hibernate MySQL 8 React, node v16.13.0 요구사항 영화를 예매할 수 있다. 이메일을 이용해 예매한 영화를 조회할 수 있다. 예매한 영화를 취소할 수 있다. 영화에 간단한 후기를 남길 수 있다. 영화의 후기를 조회할 수 있다. ERD API 아쉬운 점 시간이 부족해 테스트 코드를 소홀히 작성했다. 필자는 일주일 동안 여행을 다녀오기로 했다.. 같은 이유로 리팩토링도 충분히 진행하지 못했다. 리액트에 대한 이해 부족으로 몇몇 기능은 API 개발에 그쳐 구현하지 못했다. "잔여석을 초과하는 수량을 예매할 수 없다" 처럼 비즈니스 로직(?)을 좀 넣고 검증..
2022.11.30