분류 전체보기

#17826 공주님을 구해라문제로가기문제이해용사에서 공주까지 갈 때 최단 거리를 구해야한다.용사은 상하좌우 이동할 수 있다.벽은 이동할 수 없다. 빈칸만 이동할 수 있다.1칸당 이동하는데 1시간이 소요된다. T 시간이 넘어가면 fail을 출력해야 한다.* 조건 * 그람 위치에서 그람을 만나면 벽도 이동이 가능한다.   해결 방법 고안1. 최단거리 임으로 bfs를 이용한다.2. 검의 위치에 도달하면 que를 사용하지 않고 바로 그 거리에서 공주까지의 직선 거리를 구한다. 약간의 삽질처음에 검이 위치까지 가기전에 거리를 구했고, 검의 위치에서 다시 que를 사용해서 최단거리를 구하려고 했다.그럴 필요 없이 그냥 검의 위치에서 직선방향으로 (x , y)에서 공주의 위치 ( n-1, m-1)를 구하면 됐었다. ..
· CodingTest
#18428 감시피하기문제로가기문제이해장애물, 선생님, 학생이 있고 장애물이 학생이 있는 row나 column에 있게 되면 선생님은 학생을 발견하지 못한다.선생님이 상하좌우에서 학생을 발견한다면 no를, 발견하지 못한다면 yes를 출력단 장애물은 3개까지 설치할 수 있다.해결방법 고안장애물을 설치하는 건 - dfs선생님이 상하좌우에서 학생이 있는지 탐지하는 건 - bfs로 생각했다. 지금 생각해보면 bfs는 필요없는 듯 하긴 하다.dfs로 장애물 3개를 추가한 map을 만든다 -> 그 map에서 바로 check 함수로 bfs를 호출한다.check 함수에는 일단 선생님의 위치를 que에 넣어두고 그 위치에서 열과 행을 다 검사해서 학생을 발견하면 false를 하고, 장애물을 발견하면 반복문을 break하고..
#8275 햄스터문제로가기 문제 이해,  해결 방법 고안    이 문제는 중복 순열 (순서가 있어야 하고, 숫자가 중복으로 들어갈 수 있음)이다.중복 순열 중에서 m에 맞는 조건들을 다 만족하는 것을 출력하는 구현 문제이기도 하다. 처음 푸는데 1시간 이상 걸렸고, 한번 더 풀어보는데도 30분 이상은 걸렸다. 마지막에 출력에 신경 써야 TestCase를 다 만족시킬 수 있다.어차피 순열로 나오는 배열들은 오름차순으로 나오기 때문에 이 조건은 신경쓰지 않아도 됐었다!그리고 나는 마지막에 최종 나오는 (출력해야 하는) 후보를 res 배열에 담았는데 n이 1이 될 수 있기도 때문에 초기화를 null로 해주는 것도 처리해줘야 한다 ~! 애증의 햄스터 코드는 아래에 있다.더보기import java.io.*;imp..
OS 범위는 넓고 넓어서 하나씩 카테고리별로 정리하고자 한다.우선 메모리에 대해서 정리를 해보겠다 Memory Hierarchy메모리 계층의 구조1. Register레지스터는 CPU 내부에 존재하는 가장 빠른 메모리이다. 이 메모리는 극히 제한된 용량 (수십 바이트)만을 가지며, CPU가 데이터를 즉시 처리하기 위해 사용된다. 2. Cache MemoryCPU와 RAM 사이에 위치한 고속 메모리이다. 캐시 메모리는 자주 사용되는 데이터를 저장하여 CPU가 빠르게 접근할 수 있도록 도와준다. 캐시 메모리는 속도와 용량에 따라 L1, L2, L3 캐시로 구분되며 각 계층은 다른 캐시보다 느리지만 더 큰 용량을 가진다. 3. Main Memory, RAM시스템에서 실행되는 프로그램과 데이터를 저장하는 기본 메..
#14502 연구소문제이해0, 1, 2 숫자가 있고 벽(1)을 3개 추가로 세워서 바이러스(2)가 퍼지는 수를 막아서 최대한 빈칸(0)의 개수가 큰 걸 찾아야 한다.   해결 방법 고안- 벽을 3개 세우고 -> 바이러스 퍼지고 -> 0개수 세기- 위에 로직을 계속 반복해야 하는 구조이다.- 그래서 벽을 세우는 건 dfs, 바이러스 퍼지는건 bfs, 개수 세는 함수 이렇게 총 3개의 함수를 만들기로 하였다.- 최종으로 최대한 큰 max_value를 찾아서 결과를 출력해주면 끝이다.코드설명아래 코드에 주석으로 달아놓았다.import java.io.*;import java.util.*;public class Main { private static BufferedReader input = new Buffe..
네,, 저 자바로 코테 언어 변경 했슴니다 ,,매주 3문제씩 문제 풀고 블로그에 업로드 하기로도 했슴니다,, #2589 보물섬문제 이해0. 육지와 육지에서 가장 멀리 떨어진 거리에서 움직이는 시간을 구해야 한다.1. 1칸당 1초이고 방문했던 곳을 방문해서는 안된다.2. 가장 멀리 떨어진 점이고 그 점에서는 최단거리여야 한다.  해결 방법 고안1. 최단 경로를 구해야 하므로 BFS를 사용하기로 생각했다.2. 두 점이 나와있지 않기에 한 점 (육지)를 잡아서 그 점에서 부터 멀리 떨어진 것을 BFS로 return 해준다.3. 그 점 들 중에서 가장 멀리 떨어진 것을 구해야 하므로 Math.max을 사용했다.4. 즉, 육지인 한점 -> bfs 사용해서 가장 최단 거리이면서 가장 멀리 떨어진 시간 return5..
자바에 대해 얼마나 알고 있나요, 다 안다고 생각했는데 메모리의 개념에 대해서는 놓치고 있었다.그래서 이번 기회에 다시 처음부터 정리를 해보려고 한다. Chapter1. 클래스와 데이터 클래스가 필요한 이유자바 세상은 클래스와 객체로 이루어져 있다. 그만큼 클래스와 객체라는 개념은 중요하다. 그렇다면 클래스가 왜 필요할까?학생 2명의 정보를 출력하는 프로그램을 작성하려고 하면 아래와 같이 쓸 수 있다.String studentName1 = "학생1";int studentAge1 = 15;int studentGrade1 = 90;String studentName2 = "학생2";int studentAge2 = 16;int studentGrade2 = 80; 배열을 사용할 수도 있다. 하지만 학생이 계속 추..
졸프관련 최종 글!졸프는 2023/10-12 기획 단계,  2024/01-06 겨울방학부터 본격적으로 기능 구현에 들어갔다. 우선 졸업프로젝트 기획은 전 포스팅에 썼던 것처럼 뉴스 링크를 넣으면 뉴스의 신뢰도, 정치성향, 경제 개체명 인식과 감정(경제기사일때) 결과가 나온다. 사실 이 프로젝트는 사람들이 편의성을 고려하고 마케팅에 중심을 두는 것보다는 프로젝트를 하는 것에 더 의미를 두었다. 처음 써보는 프레임워크, 모델 연결, 배포까지 배운다는 생각으로 기능에 더 의미를 맞췄던 것 같다. 서비스 흐름은 다음과 같다.  사용자의 flowchart 이다  간단해 보이지만, 구글 로그인 또는 이메일 회원가입을 거치면 링크 내용에 대한 것을 크롤링을 해야 하고 (사실 스크래핑이 정확한 용어)  그 후, 내용을..
한덩이
'분류 전체보기' 카테고리의 글 목록 (2 Page)