전체 글

Memo/21년 TIL

1108 TIL (오늘 하루 정리하기)

| 1108 [공부한 내용] 팀 프로젝트 회고 코딩테스트 풀이 백준 7562번 나이트의 이동 독서 스터디 4장 공부 Java가 확장한 객체 지향 [하루 정리] 2주만에 작성하는 TIL이다. 그동안, 프로젝트를 진행하며 잠 잘 시간 없이 시간을 보냈기에 TIL을 쓰지 못했다. 대신, 메모장에 내가 배운 것, 몰랐던 것, 앞으로 공부할 것을 기록해놨기 때문에 프로젝트 회고글을 올리며 이 부분에 대해서도 조금 정리해서 올릴 생각이다. 오랜만에 코테 문제를 풀었다. 그동안 몇몇 회사 코테를 봤지만 번번이 아쉬운 결과만 받았다. 아쉽기는 하지만 변명할 것도 괴로운 것도 없다. 내가 어느정도 실력임을 다시 한번 알 수 있었기 때문이다. 또한, 아직 글을 다 쓰지는 못했지만 이번 프로젝트에서 정말 많은 것을 얻고 느..

Algorithm/백준

백준 7562번 : 나이트의 이동(Java)

https://www.acmicpc.net/problem/7562 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net [풀이] BFS 유형의 문제입니다. BFS를 기본적으로 연습할 수 있는 문제라고 생각합니다. 시작 위치와 도착 위치를 배열에 받아 도착 위치에 가기까지 횟수를 더합니다. 도착 위치의 x,y 좌표값이 동일하다면, bfs 메소드가 종료되고 count 변수를 출력합니다. [코드] import java.io.BufferedReader; import java.io.IOException; import java..

Algorithm/백준

백준 18870번 : 좌표 압축(Java)

https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net [풀이] 정렬을 이용한 문제였습니다. 기존 배열은 정렬 시킬 경우, 이후 기존 배열의 각 값의 위치를 알 수 없으므로 clone() 메소드를 통해 깊은 복사를 합니다. Map의 key는 좌표값을, value는 좌표값에 대한 최소 인덱스를 저장합니다. 만약, Map에 이미 있는 값이라면 무시하고, 없는 값이라면 좌표값과 인덱스를 저장하며 하나 증가시..

Algorithm/백준

백준 1406번 : 에디터(Java)

https://www.acmicpc.net/problem/1406 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net [풀이] 먼저! 아직 못풀었습니다..ㅠ 문제 풀이를 두가지로 풀어봤는데 시간초과로 틀렸습니다.. 그래서! 일단 다른 블로그 참고를 해서 다시 한번 풀어볼려고 실패한 사례만 남기겠습니다. 문제는 자료구조를 이용하는 유형입니다. 처음에는 StringBuffer를 이용해서 풀었습니다. deleteCharAt() 메소드와 insert() 메소드를 이용해서 index를 옮기며 풀어봤는데 60%를 조금 넘기면..

Algorithm/백준

백준 9663번 : N-Queen(Java)

https://www.acmicpc.net/problem/9663 9663번: N-Queen N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. www.acmicpc.net [풀이] 완전탐색 유형의 문제입니다. solve 메소드를 통해 재귀적으로 탐색합니다. 여기서 check 메소드를 통해 현재 위치에 놓을 수 있는지 없는지를 판단합니다. 현재 행의 위치에 놓을 수 없는지, 대각선에 이미 있는지 등을 확인해서 값을 반환합니다. 열의 차와 행의 차가 같을 경우가 대각선에 놓여 있는 경우입니다. [코드] import java.io.BufferedReader; import java.io...

Algorithm/백준

백준 2292번 : 벌집(Java)

https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net [풀이] 구현 및 규칙과 관련한 문제였습니다. 입력받는 수가 어떠한 범위에 있는지를 토대로 몇층에 있는지 계산하여야 합니다. 1이 입력되면 1개의 방을 지난다고 출력해야 합니다. 2부터 7까지는 2층에 있으며 2층에는 총 6개의 벌집이 있습니다. 8부터 19까지는 3층에 있으며 3층에는 총 12개의 벌집이 있습니다. 20부터 37까지는 4층에 있으며 4층에는 총 18개의 벌집이 있습니다. 38부터 61까지..

skyey94
Retrospect