분류 전체보기 26

[SWEA] 1206. View (S/W 문제해결 기본 - 1일차) / Python 코드

학기가 끝나가면서 다음 분기 준비로 코딩 테스트가 급박해지는 시점, 시간을 내어서 해보자.곧 코테 언어도 JAVA로 바꿔서 연습할 듯 한데이번 주는 급한 마음에 파이썬으로! SW Expert Academy의 D3 난이도 문제로 전에 풀었던 D2 문제보다도 쉬웠다.  T = 10 for test_case in range(1, T + 1): N = int(input()) height = list(map(int, input().split())) result = 0 for j in range(2, N - 2): cur = height[j - 2:j + 3] cur.sort(reverse=True) ..

알고리즘 2024.05.17

[프로그래머스] 미로 탈출 / BFS / Python 코드

BFS/DFS 문제 풀이를 익히기 위해 미로 탈출 문제를 풀었다. Lv.2에 이전에 백준에서 많이 풀어봤던 느낌이라 쉽게 접근하고 풀 수 있었다. 어제 풀었던 문제를 떠올리면서 힌트를 얻기도 했다. 문제 설명 문자열의 배열로 주어진 미로에서 레버를 찍고 출구까지 가는 최단 거리를 구하는 문제이다. 상, 하, 좌, 우로 이동할 수 있으며 (대각선 불가) output으로는 몇 칸을 이동했는지를, 탈출할 수 없으면 -1을 반환한다. 문제 해결 인접한 칸을 방문하면서 최단 거리를 구하는 문제라 BFS를 사용했다. 가장 먼저 구한 답이 최단 거리가 될 것이다. DFS로 푼다면 모든 경우의 수를 다 구하기 때문에 비효율적임 일단 레버를 찍고 탈출구로 갈 수 있으므로 레버까지의 BFS 한 번, 출구까지의 BFS 한 ..

알고리즘 2024.02.13

[프로그래머스] 가장 먼 노드 / 그래프, DFS, BFS / Python 코드

어제 오늘 푼 문제는 난이도 Lv.3의 가장 먼 노드이다. 문제 자체는 어렵지 않았지만 효율적인 풀이를 고민하는 데 노력이 들었다. 알고리즘 공부할 때 봤던 그래프의 개념과 문제 풀이 하면서 익혔던 DFS, BFS 개념 및 구현 방법을 복습할 수 있었던 좋은 문제였다. 문제 설명 1부터 까지의 노드가 존재하는 그래프에서 1번 노드와 가장 먼 노드의 개수를 구하는 문제다. input으로 노드의 개수와 하나의 간선으로 연결된 두 노드의 배열이 list로 주어진다. 문제 해결 이전에 DFS 문제를 많이 풀었기 때문에 자연스럽게 DFS로 풀어야겠다고 생각했는데 막상 코드를 짜고 보니 BFS 비슷한 방법으로 풀고 있었다. 지금 생각해보면 어떤 방법으로 풀어도 상관 없는 것 같다. 먼저 인접리스트로 만들어 놓고 1..

알고리즘 2024.02.12

[프로그래머스] 오픈채팅방 / 2019 Kakao / Python 코드

프로그래머스 매일 한 문제 이상 풀기 도전, 남은 방학을 이렇게 보내보려고 한다. 어제에 이어서 진단 문제로 한 문제를 풀었는데 스택 문제가 너무 쉬워서 한 문제 더 풀었다. 오픈채팅방은 2019년 카카오 블라인드 채용의 기출문제로 Lv.2의 쉬운 문제였다. 카카오 글자만 보고 겁나서 안 풀려고 했는데 막상 풀어보니 오래된 문제라 그런지 풀 만했다. 효율 때문에 런타임 에러가 나와 생각보다 푸는 데 조금 걸렸던 문제다. 문제 설명 사용자들이 채팅방에 들어오고 나가는 안내 메시지를 배열로 반환하는 문제다. 채팅방에 들어오고 나가고 이름을 변경하는 메소드와 유저 ID, 닉네임이 공백 문자로 구분되어 하나의 문자열로 주어진다. 주의사항으로는 사용자가 나갈 때는 닉네임이 들어오지 않는다는 것이 있겠다. 문제 해..

알고리즘 2024.02.10

[프로그래머스] 디스크 컨트롤러 / Heap / Python 코드

많은 기업에서 코딩테스트를 프로그래머스 툴로 푼다는 말을 들었다. 프로그래머스는 코딩테스느 문제가 다양하지 않아서 백준만 풀었는데, 얼마 남지 않은 방학동안 프로그래머스 문제를 풀기로 결정했다. 코딩테스트 문제로 들어가니 수준에 맞는 문제 추천을 위한 진단 문제 풀기가 가능하길래 들어가봤다. 문제 이름이 재미있어 보이는 걸로 골랐는데 Lv.3 문제였던 답게 헤맨 과정이 있어 푸는데 시간이 좀 걸렸다. 문제 설명 한 번에 하나의 작업만 수행할 수 있는 하드디스크를 작업의 요청부터 종료까지 걸린 시간의 평균을 가장 줄이는 방법으로 디스크 컨트롤러를 구현하는 함수를 작성, input은 2차원 배열로, output은 평균 시간을 int형으로 반환하면 된다. 문제 해결 문제를 쭉 읽어 봤을 땐 그렇게 어려워 보이..

알고리즘 2024.02.09

npx create-react-app 오류 - no longer supported

react 공부 시작하려고 했는데 CRA부터 막힌다면? ㅋㅋㅋ.. npm uninstall도 해보고 node 버전도 바꿔보고 하라는 대로 해도 안되길래 카톡방에 질문 올렸는데 이 블로그 참고하고 그대로 하니까 바로 해결됐다! https://velog.io/@sisofiy626/React-create-react-app-%EC%84%A4%EC%B9%98%EC%8B%9C-%EC%97%90%EB%9F%AC%EA%B0%80-%EB%B0%9C%EC%83%9D%ED%95%9C%EB%8B%A4%EB%A9%B4 [React] create-react-app 설치시 에러가 발생한다면? 얼마 전 특정 라이브러리의 테스트를 위해 CRA를 설치하던 도중 아래와 같은 에러가 발생하였습니다. velog.io

web 2023.08.10

정보처리기사 필기 공부하기 - [5과목] 정보시스템 구축관리

정보보안 3요소 기밀성, 무결성, 가용성 TCP tcp wrapper: 외부 컴퓨터의 접속 인가 여부 점검, 인허가 3-way handshake: 통신이 원활히 이루어질 수 있는지 확인 NFC 기술 Zing: 키오스크에 갖다 대면 기가급 속도로 정보 전송 광대역 통합망; BcN, Broadband convergence Network - 음성, 데이터통신, 유선, 무선통신, 방송, 인터넷 등이 하나로 융합된 차세대 통합 네트워크 - 끊임없이(seamless) 이용할 수 있는 유비쿼터스 서비스 환경을 지원 Marine Navi(마린 내비). KT가 소개한 소형 선박용 네비게이션 시스템 C-V2X(Cellular Vehicle To Everything) : 차량-사물 통신 라이브러리 vs 프레임워크 라이브러리..

공부 2023.07.08

정보처리기사 필기 공부하기 - [4과목] 프로그래밍 언어 활용

IP 프로토콜 - 비연결형 서비스 - 헤더 체크섬 제공 - Best Effort 원칙에 따른 전송 기능 제공 Header Length : 4바이트 = 32비트 Packet Length : 2바이트 = 16비트 단위, 최대 크기는 2^16 - 1 비트 Time To Live : 송신 호스트가 패킷을 전송하기 전 네트워크에서 생존할 수 있는 시간을 지정한 것 Version Number : IP 프로토콜의 버전번호 IPv4 - 유니캐스트, 멀티캐스트, 브로드캐스 IPv6 - 유니캐스트, 멀티캐스팅, 애니캐스트 - 보안과 인증 확장 헤더 사용 - 애니캐스트: 하나의 호스트에서 가장 가까운 곳의 수신자에게 전달 - 128비트 주소체계 UDP 프로토콜 - 비연결형 서비스 제공 - 흐름 제어가 없어 전송 속도 빠름-..

공부 2023.07.08

정보처리기사 필기 공부하기 - [3과목] 데이터베이스 구축

정규화 no → 1NF → 2NF → 3NF → BCNF 4NF 5NF 모든 조인 종속성의 만족이 R의 후보 키를 통해서만 만족될 때 분산 데이터베이스 시스템 분산 처리기: 지역별로 필요한 데이터를 처리할 수 있는 Local 컴퓨터 통신 네트워크 구조를 효율적으로 설계해야 함. 분산 투명성 (Transparency) 사용자는 데이터베이스의 분산을 포함해 다음과 같은 사실을 알 필요가 없다. - 위치: 물리적 위치를 - 중복: 시스템 안 자원의 복사를 - 병행: 다중 사용자들의 자원 자동 공유를 - 장애: 장애가 발생한 시스템의 위치를 SQL DDL (Definition) 인덱스, 스키마, 도메인, 테이블, 뷰를 생성: CREATE 삭제: DROP TABLE 정의 변경: ALTER DCL (Control)..

공부 2023.07.08