본문 바로가기
728x90

분류 전체보기279

[PG/Python] 튜플 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/64065 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 📌 문제 접근 방법 입력이 문자열로 들어오기 때문에 split을 쓰려다가 ','로 끊는 건 안되겠다 생각하고 포기했는데, 생각해보니 '},'으로 끊으면 됐었다. 우선, split을 사용하지 않고 sets에 문자열로 들어온 입력값을 리스트 형태로 바꿔서 저장해주었다. sets를 길이순대로 정렬한 후, s.. 2021. 12. 16.
[OS] 물리 메모리 관리 메모리 관리 CPU의 작업 공간 = 메모리, 모든 프로그램은 메모리에 올라와야 실행 가능 메모리 구조는 1B 크기로 나뉨, 각 영역은 메모리 주소로 구분 (0번지부터 시작) 메모리 주소 레지스터 (MAR) : CPU가 메모리에 있는 내용을 가져오거나 작업 결과를 메모리에 저장하기 위해 사용 - 메모리 관리의 이중성 프로세스 입장에서는 메모리를 독차지하려 하고, 메모리 관리자 입장에서는 되도록 관리를 효율적으로 하고 싶어 하는 것 프로세스 입장에서의 작업의 편리함과 관리자 입장에서 관리의 편리함이 충돌을 일으키는 것 소스코드의 번역과 실행 - 컴파일러와 인터프리터 저급 언어 (low level language) : 컴퓨터의 동작을 가장 직접적으로 표현한 언어, 기계어(0과 1)/어셈블리어 고급 언어 (hi.. 2021. 12. 9.
[OS] 교착 상태 교착 상태 (dead lock) 2개 이상의 프로세스가 다른 프로세스의 작업이 끝나기만 기다리며 작업을 더 이상 진행하지 못하는 상태 아사 현상과 달리, 정책상 잘못이나 오류가 없어도 자연적으로 발생 - 교착 상태의 발생 시스템 자원, 공유 변수 (또는 파일), 응용 프로그램 사용 시 발생 시스템 자원 : 어떤 프로세스가 임계구역으로 보호되는 프린터, 스캐너, CD 레코더 등 동시에 같이 사용할 수 없는 시스템 자원을 할당받은 후 양보하지 않는 경우 공유 변수 : 한 변수를 할당받은 상태에서 다른 변수를 기다릴 경우, 모든 프로세스가 임계구역에 들어가지 못하는 교착 상태 발생 (무한 대기) 응용 프로그램 : 데이터베이스가 데이터 일관성을 유지하기 위해 사용하는 잠금에서 교착 상태 발생 가능 자원 할당 그.. 2021. 12. 9.
[PG/Python] 가장 먼 노드 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr 📌 문제 접근 방법 인접 리스트를 활용해서 그래프 정보를 저장해준 뒤 bfs를 사용했다. bfs에서 방문체크를 할 때, 1번 노드와의 거리를 저장해줬다. (가장 먼 거리가 1일 경우에도 1번 노드는 포함되지 않아야하므로 1번 노드는 -1로 방문체크를 해줬다.) bfs 탐색이 끝난 후, visited를 순회하면서 거리가 가장 먼 노드의 개수를 세어 반환한다. 📌 코드 from collections import deque de.. 2021. 12. 9.
728x90