본문 바로가기

분류 전체보기

(34)
[백준알고] [2178]:미로 탐색 하루에 세문제를 풀고 포스팅까지 하다보니..어느덧 9시간이 훌쩍지났네요..DFS로는 시간초과가 나는 미로 탐색을 BFS로 풀어봤습니다!미로 탐색은 시작부터 도착지점 까지 가는 최단 거리 를 구하는 문제입니다!바로전에 숨바꼭질 문제 포스팅에서 썼던대로! 최단거리는 보통 BFS를 많이 사용합니다.그럼 포스팅 Start 하겠습니다 ~!! 미로 탐색 성공 풀이문제집 시간 제한메모리 제한제출정답맞은 사람정답 비율2 초128 MB291598972551829.676%문제N×M크기의 배열로 표현되는 미로가 있다.101111101010101011111011미로에서 1은 이동할 수 있는 칸을 나타내고, 0은 이동할 수 없는 칸을 나타낸다. 이러한 미로가 주어졌을 때, (1, 1)에서 출발하여 (N, M)의 위치로 이동할 ..
[백준알고] [1697]:숨바꼭질 https://www.acmicpc.net/problem/1697숨바꼭질 문제입니다...DFS로 풀어보려 했으나 도저히 못풀겠어서 BFS 방식으로 푼 문제입니다 ^_^포스팅 시작합니다~~ 숨바꼭질 성공 풀이한국어원문문제집 시간 제한메모리 제한제출정답맞은 사람정답 비율2 초128 MB273207524474924.980%문제수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다.수빈이와 동생의 위치가 주어졌을 때, 수..
[백준알고] [1260]:DFS와 BFS https://www.acmicpc.net/problem/1260 실수로 임시 저장 안해서 글 거의 다쓴거 다시 새로씁니다. 오늘의 교훈 : 임시저장을 생활화 하자... 이 문제는 DFS와 BFS의 차이점을 알 수 있는 좋은 문제인거 같습니다. 그럼 포스팅 시작합니다!!! DFS와 BFS 성공 풀이 문제집 시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율 5 초 128 MB 28767 8994 5445 29.607% 문제 그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 정점 번호는 1번부터 N번까지이다. 입력 첫째 줄에 정..
[운영체제]5. Process(2) Thread란 무엇일까요 ? 음.. 이렇다고 한다. 전 포스팅에서 올렸듯이. 프로세스가 생성되면 아래처럼 stack, data, code영역이 생성된다. [스레드의 탄생 이유] 그리고.. 이 만들어진 프로세스를 관리하기 위해서 운영체제 data 부분에 PCB(Process Control Block)을 하나 만들어두어서 관리를 한다고 했었다.이 프로세스의 상태와 프로세스 ID, 프로그램 카운터(메모리 어느부분을 실행하는가?)등이 이 PCB에 존재한다.만약에, 동일한 일을 처리하는 프로세스가 여러개 있다고 가정할경우, 이러한 주소공간이 그 프로세스의 수만큼 만들어지게 될것이고, 이것은 결국 메모리의 낭비를 가져오게 된다. [스레드 탄생 결과] 같은일을 하는 프로세스를 여러개 띄워놓고 싶으면 주소공간은 하나만..
[운영체제]4. Process(1) 프로세스란 ? 실행중인 프로그램 문맥이란 ? 전체적인 문장구조 속에서 파악하는것!프로세스의 문맥(context) : 프로세스가 진행되는동안 여러 동작이 진행된다. 그 과정 속에서 어느 시점에 프로세스가 어느정도 진행되었는가.. 등을 규명하는데 필요한 요소 (프로세스의 현재 수행 상태를 나타내는데 필요한 모든 요소)1. CPU 수행 상태를 나타내는 하드웨어 문맥 ex) Program Counter , 각종 register 어디를 가르키고있고, 어떤 값을 가지고 있었는가?2. 프로세스의 주소공간 ex) code, data, stack에 어떤 내용이 들어 있는가?3. 프로세스 관련 커널 자료 구조 ex) PCB(Process Contrl Block), Kernel stack 프로세스 마다 커널 스택을 별도로 ..
[백준알고] [6603]:로또 https://www.acmicpc.net/problem/6603 처음으로 알고리즘 포스팅을 시작합니다..매일 하루에 하나이상 풀고 포스팅하기 화이팅!!! 로또 풀이시간 제한메모리 제한제출정답맞은 사람정답 비율1 초128 MB38102114161855.986%문제독일 로또는 {1, 2, ..., 49}에서 숫자 6개를 고른다.로또 번호를 선택하는데 사용되는 가장 유명한 전략은 49가지 숫자 중 k(k>6)개의 숫자를 골라 집합 S를 만든 다음 그 숫자만 가지고 번호를 선택하는 것이다.예를 들어, k=8, S={1,2,3,5,8,13,21,34}인 경우 이 집합 S에서 숫자를 고를 수 있는 경우의 수는 총 28가지이다. ([1,2,3,5,8,13], [1,2,3,5,8,21], [1,2,3,5,8,34],..
[운영체제]3. System Structure & Program Execution(2) PC(Program Counter) -CPU에는 여러 레지스터들이 존재하는데, 그 중 PC(Program Counter)는 CPU가 다음 인스트럭션을 읽어와야 할 주소가 적혀있다.보통 인스트럭션 하나가 4바이트를 감안했을때, PC는 한 공간에 4바이트씩 저장이 되어있고, 그 인스트럭션을 CPU가 순차적으로 읽게된다.컴퓨터가 실행되면 cpu는 항상 pc에 따라서 다음일만 처리할 뿐이다. 위의 그림처럼 pc에 있는 내용을 1,2,3,4,5 순으로 순차적으로 처리하다가 그 중간중간에 Interrupt line에서 체크를 하게되고, 인터럽트가 들어왔다면, cpu는 하던 작업을 멈추게되고 , cpu의 제어권이 운영체제로 넘어가게 된다 (mode bit = 0)그 후 운영체제는 왜 인터럽트가 걸렸는지 운영체제 내부..
[운영체제]2. System Structure & Program Execution -컴퓨터 시스템 = (CPU + Memory) + IO Device + (각종 Controller, timer, buffer , , , 등등)input = IO 디바이스의 실행들을 컴퓨터 안으로 입력하는것.output = 메모리에서 처리한 데이터를 받아 다시 IO 디바이스로 넘기는것 CPU - 중앙처리장치로써, 메모리가 CPU를 점유하여 사용할 수 있다. CPU에서는 매 클럭마다 메모리의 인스트럭션을 읽어서 실행시킨Memory - 기억장치로, 실제 프로그램을 실행하는 영역, cpu를 이곳에서 점유하여 사용한다. 운영체제(OS)와 실행한 프로그램이 이곳에 있다.IO장치 - 컴퓨터가 요청한 내용을 입력하고나, 컴퓨터에서 요청된 내용을 보여주는 장치 CPU 안에는 Register과 Mode bit, inter..

Today :
Yesterday :
Total :