일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- springboot
- SpringBatch
- 폰켓몬
- 트리맵
- 산업은행청년인턴
- 해시
- 2178
- 백준
- DB replication
- 산업은행it
- fatch
- 스케일아웃
- CPU스케줄링
- 코테
- 외래키제약조건위반
- 트리셋
- JPA
- BFS
- 운영체제
- 파이널프로젝트
- flyway
- 프로그래머스
- CS
- 컴퓨터구조
- findById
- 구현
- Spring JPA
- 그래프탐색
- 임베디드타입
- 프로젝트
- Today
- Total
목록분류 전체보기 (66)
나 JAVA 봐라
https://www.acmicpc.net/problem/1946 1946번: 신입 사원 첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성 www.acmicpc.net 문제에 따르면, 서류/ 면접 등수가 하나라도 뒤쳐지면 탈락한다. 등수는 하나하나씩 직접 돌아가주면서 비교해줘야한다. 이 때, 등수를 정렬하지 않으면 서류/면접 등수 두 개 모두 비교해주어야하는 코드가 복잡해지므로 먼저 서류 등수를 기준으로 오름차순 정렬을 해야했다. Arraylist에 오름차순 기준으로 정렬할 수도 있지만, 서류 등수를 배열 인덱스로 하고 면접 등수를 값으로 ..
https://www.acmicpc.net/problem/2217 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net 만약, 문제에서 '모든 로프를 사용해야한다.' 는 조건이 있었다면, 가장 약한 로프의 중량 * N 을 해서 쉽게 답을 구할 수 있을 것이다. 하지만 모든 로프를 사용하지 않아도 되기에, 모든 경우를 비교하여 문제를 풀었다. 1. 배열에 모든 로프(가 버틸 수 있는 중량) 를 담는다. 2. 배열을 오름차순으로 정렬한다. 3. 배열의 0 ~ N-1까지 반복하며 가장 큰 최대 중량을 구한다. ..

프로세스 우선순위와 스케줄링 큐 운영체제가 프로세스(및 스레드)에 어떻게 자원을 할당할까? 운영체제가 자원(CPU, 디스크,..)을 공정하고 합리적으로 배분하는 방법이 스케줄링 이다. CPU 자원은 한정되어 있고 실행 중인 프로세스는 여러 개인데, 어떻게 나눠서 사용할 수 있을까? 정해진 시간 동안 돌아가면서 CPU를 사용하는 것이 좋을까? -> NO, 프로세스마다 우선순위가 다르다. 우선순위는 PCB에 명시되어 있다. 그렇다면 우선순위의 차이를 보이는 프로세스 유형은 무엇이 있을까? I/O bound process, CPU bound process 로 예시를 들 수 있다. I/O bound process가 CPU bound process 보다 우선순위가 높다. I/O bound process는 I/O ..

커널 영역과 사용자 영역의 프로세스 운영체제가 적재되는 커널 영역과 사용자 프로그램이 적재되는 사용자 영역이 있다. 하나의 프로세스가 실행될 때 커널, 사용자 영역에 각각 무엇이 생성되는지 알아보자. 프로세스란 실행 중인 프로그램이다. 같은 프로그램도 여러개의 프로세스가 될 수 있다. 프로세스는 사용자와 직접 소통 하는지, 안하는지에 따라 크게 두 종류로 나뉠 수 있다. 프로그라운드 프로세스 백그라운드 프로세스 위와 같이 많은 프로세스가 메모리에 적재되어 실행되는데, 이런 것을 운영체제는 어떻게 관리할까? => 프로세스 제어 블록을 통해 프로세스 식별과 관리를 한다. ++ 위에서 같은 프로그램도 여러 개의 프로세스가 될 수 있다고 했는데, 그렇다면 같은 프로그램에서 생성된 여러 개의 프로세스는 PCB를 ..

운영체제가 무엇인지 거시적으로 살펴보며 이해해보자. 운영체제의 역할 컴퓨터 구조 파트에서 학습한 다양한 컴퓨터 부품(CPU, 메모리, SSD, 입출력 장치..) 들은 '누가' 움직이게 만들까? => 운영체제 위에서 말한 컴퓨터 부품들은 (시스템) 리소스 라고도 한다. * 리소스 (= 자원) : 실행에 마땅히 필요한 요소 리소스 소모/낭비 , 리소스 모니터링 등을 말할 때 사용된다. (ex. 프로세스 실행에 필요한 리소스를 모니터링한다.) 운영체제의 종류 윈도우, macOS, 리눅스, 안드로이드,... 운영체제 운영체제: 자원을 관리하고 할당하는 '특별한 프로그램' 모든 프로그램은 실행되기 위해 메인 메모리(RAM)에 적재되어야 한다. 이 메모리에 적재된 프로그램을 CPU에서 인출해서 실행한다. 운영체제는..

https://www.acmicpc.net/problem/14940 14940번: 쉬운 최단거리지도의 크기 n과 m이 주어진다. n은 세로의 크기, m은 가로의 크기다.(2 ≤ n ≤ 1000, 2 ≤ m ≤ 1000) 다음 n개의 줄에 m개의 숫자가 주어진다. 0은 갈 수 없는 땅이고 1은 갈 수 있는 땅, 2는 목표지점이www.acmicpc.netBFS를 사용하여 주변을 탐색하며 count+1 씩 해주면 될 것 같다. 맵 초기화 진행초기화 하면서 값이 2인 경우에는 시작점이므로 start 배열에 넣기bfs에 start를 시작점으로 두기큐 생성 하여 q.add(start)큐에 넣었으니 방문 체크하기시작점에 해당하는 맵은 0으로 값 바꾸기 (2 -> 0)q가 빌 때까지 탐색하기상,하,좌,우 탐색하며 유효..

https://www.acmicpc.net/problem/17086 17086번: 아기 상어 2첫째 줄에 공간의 크기 N과 M(2 ≤ N, M ≤ 50)이 주어진다. 둘째 줄부터 N개의 줄에 공간의 상태가 주어지며, 0은 빈 칸, 1은 아기 상어가 있는 칸이다. 빈 칸과 상어의 수가 각각 한 개 이상인 입력만www.acmicpc.net저번 18405번 경쟁적 전염 문제와 비슷하게, 시작점이 여러 곳이다. 시작점이 여러 곳이면 큐를 여러개 만들어야 하나? 라고 전에 고민했던 것 같은데, 문제 조건에 따라 객체를 만들면 되는 문제인 것 같다.객체의 필드값으로 좌표값 (x,y)과 문제에 맞는 필드값 (ex. 해당 문제에서는 length)를 넣어주면 되는 것 같다. 이번 문제도 마찬가지로 BFS를 사용하고, S..

전공 수업 때, CS를 분명히 공부했음에도 실제로 어떻게 적용되며 어떻게 각 계층이 이어지는 것인지에 대해 유기적으로 이해하지 못했었다. 이번에 강의를 듣고 정리하는 과정을 통해 확실하게 내 지식으로 가져가보고자 한다 ! 강의는 패스트캠퍼스의 '현실 세상의 컴퓨터공학 지식 with 30가지 시나리오' 를 수강했다. https://fastcampus.co.kr/dev_online_newcomputer 현실 세상의 컴퓨터공학 지식 with 30가지 실무 시나리오 초격차 패키지 Online. | 패스트캠퍼스 국내유일, 77시간 분량의 개발자를 위한 한 번에 끝내는 컴퓨터공학 (CS 지식) 강의를 확인하세요. 자료구조,알고리즘부터 디자인패턴, 클린코드까지 ! CS지식의 이론~실습뿐 아니라, 실제 실무에 fast..

전공 수업 때, CS를 분명히 공부했음에도 실제로 어떻게 적용되며 어떻게 각 계층이 이어지는 것인지에 대해 유기적으로 이해하지 못했었다. 이번에 강의를 듣고 정리하는 과정을 통해 확실하게 내 지식으로 가져가보고자 한다 ! 강의는 패스트캠퍼스의 '현실 세상의 컴퓨터공학 지식 with 30가지 시나리오' 를 수강했다. https://fastcampus.co.kr/dev_online_newcomputer 현실 세상의 컴퓨터공학 지식 with 30가지 실무 시나리오 초격차 패키지 Online. | 패스트캠퍼스 국내유일, 77시간 분량의 개발자를 위한 한 번에 끝내는 컴퓨터공학 (CS 지식) 강의를 확인하세요. 자료구조,알고리즘부터 디자인패턴, 클린코드까지 ! CS지식의 이론~실습뿐 아니라, 실제 실무에 fast..
https://www.acmicpc.net/problem/18405 18405번: 경쟁적 전염첫째 줄에 자연수 N, K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N ≤ 200, 1 ≤ K ≤ 1,000) 둘째 줄부터 N개의 줄에 걸쳐서 시험관의 정보가 주어진다. 각 행은 N개의 원소로 구성되며, 해당 위치www.acmicpc.net문제에서 바이러스는 시간에 따라 번식하게 되는데, 바이러스의 번식은 한 번에 모든 바이러스가 동시에 일어나는 것이 아니라 순차적으로 진행된다. 따라서 이러한 상황을 시뮬레이션하기 위해 큐를 사용한다. 큐를 사용하는 이유:순차적 처리: 바이러스가 번식하는 것은 순차적으로 진행된다. 큐를 사용하면 선입선출(FIFO)의 특성을 이용하여 먼저 들어온 바이러스부터 순서대로 번식시킬..