본문 바로가기

분류 전체보기223

[책 리뷰] 오브젝트 (코드로 이해하는 객체지향 설계) - 조영호 들어가면서 객체지향의 사실과 오해와 마찬가지로 우테코 6기 프리코스를 참여하면서 정말 많은 도움을 받은 책이다. 프리코스 기간 동안 가장 많은 도움을 받은 책을 꼽으라고 하면 오브젝트 서적을 꼽을 수 있을 것 같고 객체지향을 공부하는 입장에서 오브젝트 서적은 꼭 읽어야하는 필독서가 아닌가 싶다. 좋았던 점 객체지향의 사실과 오해 서적은 객체에 대한 개념과 기초를 확실하게 다질 수 있었다면 오브젝트 서적은 다양한 예제와 실제 코드를 통해서 객체지향을 실제 코드로 구현하는 방법에 대해서 배울 수 있는 서적이다. 객체지향을 설계할 때 필요한 GRASP 패턴을 통해서 객체지향의 사실과 오해에서 배웠던 객체지향을 실제로 설계할 때 도움이 될 수 있는 기법들을 배워서 객체지향 설계에 적용할 수 있었으며 특히 영화관.. 2023. 12. 20.
[책 리뷰] 객체지향의 사실과 오해 - 조영호 들어가면서 우테코 6기 프리코스를 참여하면서 객체지향에 대한 이해도를 높이기 위해서 읽었던 책이다. 과제를 수행하면서 객체를 나누는 것에 익숙하지 못하였는데 이 책을 읽고서 객체를 이해하고 어떤 식으로 객체를 분리해야 하는지 감을 잡을 수 있었던 책이다. 시간 날 때마다 반복해서 읽어도 좋을 만큼 객체지향에 대한 좋은 내용을 담고 있다. 좋았던 점 객체지향에 대한 개념을 소설책을 읽는듯한 느낌으로 다양한 사례와 이야기들을 통해서 이해하기 쉽게 전달해 준다. 개인적으로 가장 기억에 남았던 비유는 커피숍에서 손님이 메뉴판을 통해 주문을 하고 바리스타가 커피를 제작하는 등 상황을 객체지향적으로 풀어서 설명한 것과 이상한 나라의 앨리스를 빗대어서 객체지향에 대해서 설명한 점이 가장 기억에 남았다. 이렇게 쉽게 .. 2023. 12. 20.
백준 14500번 테트로미노 (삼성 SW 역량 테스트 기출 문제) java 풀이 문제 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변끼리 연결되어 있어야 한다. 즉, 꼭짓점과 꼭짓점만 맞닿아 있으면 안 된다. 정사각형 4개를 이어 붙인 폴리오미노는 테트로미노라고 하며, 다음과 같은 5가지가 있다. 아름이는 크기가 N×M인 종이 위에 테트로미노 하나를 놓으려고 한다. 종이는 1×1 크기의 칸으로 나누어져 있으며, 각각의 칸에는 정수가 하나 쓰여 있다. 테트로미노 하나를 적절히 놓아서 테트로미노가 놓인 칸에 쓰여 있는 수들의 합을 최대로 하는 프로그램을 작성하시오. 테트로미노는 반드시 한 정사각형이 정확히 하나의 칸을 포함하도록 놓아야 하며, 회.. 2023. 12. 19.
백준 14499번 주사위 굴리기 (삼성 SW 역량 테스트 기출 문제) java 풀이 문제 크기가 N×M인 지도가 존재한다. 지도의 오른쪽은 동쪽, 위쪽은 북쪽이다. 이 지도의 위에 주사위가 하나 놓여져 있으며, 주사위의 전개도는 아래와 같다. 지도의 좌표는 (r, c)로 나타내며, r는 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로부터 떨어진 칸의 개수이다. 2 4 1 3 5 6 주사위는 지도 위에 윗 면이 1이고, 동쪽을 바라보는 방향이 3인 상태로 놓여져 있으며, 놓여져 있는 곳의 좌표는 (x, y) 이다. 가장 처음에 주사위에는 모든 면에 0이 적혀져 있다. 지도의 각 칸에는 정수가 하나씩 쓰여져 있다. 주사위를 굴렸을 때, 이동한 칸에 쓰여 있는 수가 0이면, 주사위의 바닥면에 쓰여 있는 수가 칸에 복사된다. 0이 아닌 경우에는 칸에 쓰여 있는 수가 주사위의 바닥면으로 복사되며,.. 2023. 12. 19.
백준 13460번 구슬 탈출 2 (삼성 SW 역량 테스트 기출 문제) java 풀이 문제 스타트링크에서 판매하는 어린이용 장난감 중에서 가장 인기가 많은 제품은 구슬 탈출이다. 구슬 탈출은 직사각형 보드에 빨간 구슬과 파란 구슬을 하나씩 넣은 다음, 빨간 구슬을 구멍을 통해 빼내는 게임이다. 보드의 세로 크기는 N, 가로 크기는 M이고, 편의상 1×1크기의 칸으로 나누어져 있다. 가장 바깥 행과 열은 모두 막혀져 있고, 보드에는 구멍이 하나 있다. 빨간 구슬과 파란 구슬의 크기는 보드에서 1×1크기의 칸을 가득 채우는 사이즈이고, 각각 하나씩 들어가 있다. 게임의 목표는 빨간 구슬을 구멍을 통해서 빼내는 것이다. 이때, 파란 구슬이 구멍에 들어가면 안 된다. 이때, 구슬을 손으로 건드릴 수는 없고, 중력을 이용해서 이리 저리 굴려야 한다. 왼쪽으로 기울이기, 오른쪽으로 기울이기, 위쪽으.. 2023. 12. 11.
백준 2638번 치즈 java 풀이 문제 N×M의 모눈종이 위에 아주 얇은 치즈가 과 같이 표시되어 있다. 단, N 은 세로 격자의 수이고, M 은 가로 격자의 수이다. 이 치즈는 냉동 보관을 해야만 하는데 실내온도에 내어놓으면 공기와 접촉하여 천천히 녹는다. 그런데 이러한 모눈종이 모양의 치즈에서 각 치즈 격자(작 은 정사각형 모양)의 4변 중에서 적어도 2변 이상이 실내온도의 공기와 접촉한 것은 정확히 한시간만에 녹아 없어져 버린다. 따라서 아래 모양과 같은 치즈(회색으로 표시된 부분)라면 C로 표시된 모든 치즈 격자는 한 시간 후에 사라진다. 와 같이 치즈 내부에 있는 공간은 치즈 외부 공기와 접촉하지 않는 것으로 가정한다. 그러므 로 이 공간에 접촉한 치즈 격자는 녹지 않고 C로 표시된 치즈 격자만 사라진다. 그러나 한 시간 후, .. 2023. 12. 5.